Lokalizacja pliku dziennika IISExpress

109

IISExpress zapisuje dzienniki i dane konfiguracyjne do wstępnie określonej lokalizacji po wyjęciu z pudełka.

Katalog jest katalogiem „IISExpress” przechowywanym w katalogu Dokumenty użytkownika.

W katalogu przechowywane są następujące foldery pliki.

  • Config
  • Dzienniki
  • TraceLogFiles

Lokalizacja mojego katalogu domowego znajduje się w udziale sieciowym, określonym przez zasady grupy

Obecnie napotykamy scenariusze, w których program Visual Studio blokuje się podczas zatrzymywania debugowania aplikacji Silverlight przy użyciu IIS Express.

Chciałem zmienić lokalizację dziennika i danych konfiguracyjnych dla IISExpress, aby sprawdzić, czy to rozwiązuje problem blokowania się programu Visual Studio. Czy można zmienić domyślną lokalizację plików dziennika i konfiguracji?

Adrian Russell
źródło
Dziennik, którego szukałem w systemie Windows 10, był tutaj: C: \ WINDOWS \ temp \ PHP71ForIISExpress_errors.log
Rob Sedgwick

Odpowiedzi:

136

1. Domyślnie plik applicationhost.config definiuje następujące dwie lokalizacje plików dziennika. Tutaj IIS_USER_HOME zostanie rozwinięty jako %userprofile%\documents\IISExpress\.

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

Możesz zaktualizować powyższe ścieżki katalogów, aby zmienić lokalizacje plików dziennika.

2. Jeśli korzystasz z usług IIS Express z wiersza polecenia, możesz użyć przełącznika „/ config”, aby udostępnić wybrany plik konfiguracyjny. Poniższy link może ci pomóc http://learn.iis.net/page.aspx/870/running-iis-express-from-the-command-line/

vikomall
źródło
14
Jeśli korzystasz z usług IIS Express w programie Visual Studio, plik .config jest ładowany z $(solutionDir)\.vs\config\applicationhost.config(odwołuje się do tej odpowiedzi )
sonyisda1
3
VS2019 zmienił to i domyślnie jest wyłączony w pliku .vs \ <app> \ config \ applicationhost.config. Ścieżka to teraz% AppData% \ Microsoft \ IISExpressLogs "dla dzienników w3c i"% AppData% \ Microsoft "dla 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>

Uważam, że dokumentacja web.config jest niechlujna. Dlatego lepiej jest podać pełną historię rodzica niż fragment, który może się pojawić, oczekując, że czytelnik w naturalny sposób wie, dokąd zmierza.

George
źródło
2
Tak, +1 za udostępnienie pełnej historii rodziców. W przeciwnym razie należy zapoznać się z jeszcze bardziej powiązaną dokumentacją. Dziękuję, George!
Manfred
12

Domyślnie będzie to:

C: \ Users \ nazwa_użytkownika \ Documents \ IISExpress \ Logs \

TravisO
źródło
Ale co, jeśli ustawienie domyślne zostało zmienione przez kogoś innego? Jak mogę to z powrotem zmienić?
Fandango68
4
@ Fandango68 To nowe pytanie, a nie komentarz.
To mówi, gdzie to jest, a nie jak to zmienić (na pytanie)
Rowland Shaw