我知道反对将日志写入Azure Cloud 服务上的文件的论点(在重新配置系统时可以随时消失) . 然而,到目前为止,它已经100%的工作,它简单明了,读取文件是使用日志的最简单方法 .

但是在昨天发布之后,确实包括将log4net更新到最新版本,当它继续为我们的web角色工作时,它现在对我们的工作者角色不起作用 . 未创建日志文件夹,也未创建任何文件 .

我们需要在下面做些什么改变?

<log4net>
    <root>
        <level value="DEBUG" />
        <appender-ref ref="LogFileAppender" />
    </root>
    <logger name="net.windward">
        <level value="WARN" />
    </logger>
    <logger name="WindwardReportsDrivers.net.windward">
        <level value="WARN" />
    </logger>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
        <!-- This is E:\logs on the cloud server -->
        <param name="File" value="\logs\LicenseWebServer.log" />
        <param name="AppendToFile" value="true" />
        <appendToFile value="true" />
        <rollingStyle value="Date" />
        <datePattern value=".yyyyMMdd'.log'" />
        <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%date{yyyy-dd-MM HH:mm:ss.fff} [%thread] %-5level %logger.%method - %message%newline%exception" />
        </layout>
    </appender>
</log4net>

注意:This question使用过去适用于两者的解决方案回答了它,但现在只适用于Web角色 .