Ubicación del archivo de registro de IISExpress

109

IISExpress escribe datos de registro y configuración en una ubicación predeterminada de fábrica.

El directorio es un directorio "IISExpress" almacenado en el directorio Documentos de un usuario.

En el directorio se almacenan los siguientes archivos de carpetas debajo.

  • Config
  • Registros
  • TraceLogFiles

La ubicación de mi directorio personal está en un recurso compartido de red, determinado por la política de grupo

Actualmente nos encontramos con escenarios en los que Visual Studio se bloquea al detener la depuración de aplicaciones de Silverlight mediante IIS Express.

Estaba buscando cambiar la ubicación de los datos de registro y configuración de IISExpress para ver si esto soluciona el problema del bloqueo de Visual Studio. ¿Es posible cambiar la ubicación predeterminada de los archivos de registro y configuración?

Adrian Russell
fuente
El registro que estaba buscando en Windows 10 estaba aquí: C: \ WINDOWS \ temp \ PHP71ForIISExpress_errors.log
Rob Sedgwick

Respuestas:

136

1. Por defecto, el archivo applicationhost.config define las siguientes dos ubicaciones de archivos de registro. Aquí IIS_USER_HOME se expandiría como %userprofile%\documents\IISExpress\.

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

Puede actualizar las rutas de directorio anteriores para cambiar las ubicaciones de los archivos de registro.

2. Si está ejecutando IIS Express desde la línea de comandos, puede usar el modificador '/ config' para proporcionar el archivo de configuración de su elección. El siguiente enlace puede ayudarlo a http://learn.iis.net/page.aspx/870/running-iis-express-from-the-command-line/

vikomall
fuente
14
Si está ejecutando IIS Express desde Visual Studio, el archivo .config se carga desde $(solutionDir)\.vs\config\applicationhost.config(al que se hace referencia en esta respuesta )
sonyisda1
3
VS2019 ha cambiado esto y por defecto está deshabilitado en el archivo .vs \ <app> \ config \ applicationhost.config. La ruta ahora es% AppData% \ Microsoft \ IISExpressLogs "para los registros de w3c y"% AppData% \ Microsoft "para los registros de seguimiento.
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>

Encuentro que la documentación de web.config es desordenada. Por lo tanto, es mejor proporcionar un historial principal completo que un fragmento flotante con la expectativa de que el lector sepa naturalmente a dónde va.

George
fuente
2
Sí, +1 por proporcionar el historial de padres completo. De lo contrario, se debe consultar aún más documentación relacionada. ¡Gracias, George!
Manfred
12

Por defecto estará en:

C: \ Usuarios \ nombre_de_usuario \ Documentos \ IISExpress \ Logs \

TravisO
fuente
Pero, ¿qué pasa si otra persona cambia el valor predeterminado? ¿Cómo lo cambio de nuevo por favor?
Fandango68
4
@ Fandango68 Esa es una pregunta nueva, no un comentario.
Eso dice dónde está, no cómo cambiarlo (por pregunta)
Rowland Shaw