Ok, estoy teniendo un problema muy extraño al implementar una de nuestras aplicaciones web en nuestros servidores activos.No se pudo cargar el archivo o el ensamblado 'log4net
Nuestra aplicación utiliza log4net para registrar un montón de acciones bastante y después de un par de horas después de su implementación obtenemos la siguiente excepción.
No se pudo cargar el archivo o ensamblado 'log4net, Version = 1.2.9.0, Culture = neutral, PublicKeyToken = b32731d11ce58905' o una de sus dependencias. Acceso denegado.
Aquí están las adiciones web.config relevantes que uso.
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="ErrorLogFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="D:\SomeLocation\Errorlog"/>
<param name="AppendToFile" value="true"/>
<param name="RollingStyle" value="Size"/>
<param name="maxSizeRollBackups" value="-1" />
<param name="maximumFileSize" value="100MB" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="FATAL" />
<param name="LevelMax" value="FATAL" />
</filter>
</appender>
<appender name="BookingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="D:\SomeLocation\BookingInfoLog"/>
<param name="AppendToFile" value="true"/>
<param name="RollingStyle" value="Size"/>
<param name="maxSizeRollBackups" value="-1" />
<param name="maximumFileSize" value="100MB" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO" />
<param name="LevelMax" value="FATAL" />
</filter>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="BookingLogFileAppender"/>
<appender-ref ref="ErrorLogFileAppender"/>
</root>
</log4net>
Está funcionando bien en nuestras máquinas locales un servidor de desarrollo pero no en vivo.
Incidentalmente parece que se rompe después de que el compilador JIT se ejecuta en el servidor después de una actualización web.config o un reciclado de un grupo de aplicaciones, ¡o incluso por un período de tiempo prolongado!
ACTUALIZACIÓN: Nuestros servidores en vivo ejecutan todos los sitios web desde una ubicación compartida. Pude replicar este problema en otro servidor que ejecuta la aplicación desde un recurso compartido. Al configurar el sitio para que se ejecute desde un disco local, el problema desaparece, pero nuestro alojamiento requiere que ejecutemos desde un recurso compartido. Alguna idea de por qué log4net tendría problemas de permisos ejecutándose desde un recurso compartido. De nuevo, la aplicación se ejecuta por primera vez hasta que otra compilación JIT se produce
tengo exactamente el mismo problema que usted. ¿alguna vez obtuviste una solución para esto? – gabe