我在 Azure 上有一个使用 log4net 文件附加器的 ASP.NET MVC 网站。由于以下错误,我无法使用 FileZilla 下载日志文件:
响应:550 该进程无法访问该文件,因为它正在被另一个进程使用。错误:严重的文件传输错误
日志或 Azure 上是否有设置,我可以使用它在 Web 应用程序运行时下载日志文件?我不想因此关闭 Web 应用程序或 IIS。
答案1
您可以尝试将 Appender 上的锁定方法设置为以下任一项:
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
或者
<lockingModel type="log4net.Appender.FileAppender+InterProcessLock" />
或者你可以切换到使用RollingFileAppender然后仅下载当前未写入的日志文件。此 Appender 可以根据日期/时间或文件大小轮换文件,并可以限制其创建的文件数量,以避免耗尽本地存储空间。