Speicherort der IISExpress-Protokolldatei

109

IISExpress schreibt sofort Protokoll- und Konfigurationsdaten an einen festgelegten Speicherort.

Das Verzeichnis ist ein "IISExpress" -Verzeichnis, das im Dokumentenverzeichnis eines Benutzers gespeichert ist.

Im Verzeichnis werden die folgenden Ordnerdateien darunter gespeichert.

  • Konfig
  • Protokolle
  • TraceLogFiles

Der Speicherort meines Home-Verzeichnisses befindet sich auf einer Netzwerkfreigabe, die durch Gruppenrichtlinien festgelegt wird

Derzeit treten Szenarien auf, in denen Visual Studio beim Beenden des Debuggens von Silverlight-Anwendungen mit IIS Express abstürzt.

Ich wollte den Speicherort für die Protokoll- und Konfigurationsdaten für IISExpress ändern, um festzustellen, ob das Problem der Sperrung von Visual Studio dadurch behoben wird. Ist es möglich, den Standardspeicherort von Protokoll- und Konfigurationsdateien zu ändern?

Adrian Russell
quelle
Das Protokoll, nach dem ich in Windows 10 gesucht habe, war hier: C: \ WINDOWS \ temp \ PHP71ForIISExpress_errors.log
Rob Sedgwick

Antworten:

136

1. Standardmäßig definiert die Datei applicationhost.config die folgenden zwei Speicherorte für Protokolldateien. Hier würde IIS_USER_HOME als erweitert %userprofile%\documents\IISExpress\.

<siteDefaults>
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" />
</siteDefaults>

Sie können die obigen Verzeichnispfade aktualisieren, um die Speicherorte der Protokolldateien zu ändern.

2. Wenn Sie IIS Express über die Befehlszeile ausführen, können Sie mit der Option '/ config' eine Konfigurationsdatei Ihrer Wahl bereitstellen. Der folgende Link kann Ihnen helfen: http://learn.iis.net/page.aspx/870/running-iis-express-from-the-command-line/

vikomall
quelle
14
Wenn Sie IIS Express von Visual Studio aus ausführen, wird die .config-Datei von $(solutionDir)\.vs\config\applicationhost.config(auf diese Antwort
verwiesen
3
VS2019 hat dies geändert und ist in der Datei .vs \ <app> \ config \ applicationhost.config standardmäßig deaktiviert. Der Pfad lautet jetzt% AppData% \ Microsoft \ IISExpressLogs "für w3c-Protokolle und"% AppData% \ Microsoft "für Tracelogs.
Praveen Nayak
21

http://www.iis.net/configreference/system.applicationhost/sites/sitedefaults

<configuration>
    <system.applicationHost>
       <sites>
          <siteDefaults>
             <logFile 
                logFormat="W3C"
                directory="%SystemDrive%\inetpub\logs\LogFiles"
                enabled="true" 
                />
             <traceFailedRequestsLogging 
                enabled="true"
                directory="%SystemDrive%\inetpub\logs\FailedReqLogFiles"
                maxLogFiles="20" 
                />
             <limits connectionTimeout="00:01:00" />
             <ftpServer serverAutoStart="true" />
             <bindings>
                <binding 
                    protocol="http" 
                    bindingInformation="127.0.0.1:8080:" 
                    />
             </bindings>
          </siteDefaults>
       </sites>
    </system.applicationHost>
</configuration>

Ich finde die Dokumentation zu web.config chaotisch. Es ist daher besser, eine vollständige Elternhistorie als ein schwebendes Snippet bereitzustellen, mit der Erwartung, dass der Leser natürlich weiß, wohin es geht.

George
quelle
2
Ja, +1 für die Bereitstellung des vollständigen übergeordneten Verlaufs. Andernfalls muss noch mehr zugehörige Dokumentation konsultiert werden. Danke, George!
Manfred
12

Standardmäßig ist es in:

C: \ Benutzer \ Benutzername \ Dokumente \ IISExpress \ Logs \

TravisO
quelle
Aber was ist, wenn die Standardeinstellung von jemand anderem geändert wurde? Wie ändere ich es bitte zurück?
Fandango68
4
@ Fandango68 Das ist eine neue Frage, kein Kommentar.
Das sagt, wo es ist, nicht wie man es ändert (pro Frage)
Rowland Shaw