Serilog 无法记录 c:\program files 目录

问题描述 投票:0回答:1

我使用的是serilog,写入的输出路径是c:\program files目录。 当 serilog 记录消息时,日志文件永远不会出现在 c:\program files 目录中。 我什至尝试将路径设置为 c:\program files 目录中的子目录。 Serilog仍然无法登录子目录?

这看起来很愚蠢。 Serilog 可以创建日志文件和日志消息到 c:\program files 目录或子目录吗?

serilog serilog-sinks-file
1个回答
0
投票

回答这个问题的原因是为了证明在技术上可以将日志写入

"Program files"
子文件夹内的文件中。我已经使用控制台应用程序进行了测试,它对我来说工作正常。我同意@John Omielan 和@Ruben Bartelink 的评论,这不是进行应用程序日志记录的最佳方式,但有时您没有任何选择,或者您的客户只需要这种方式。这只是为了证明它是有效的并且在技术上是可行的。

我已将日志文件路径添加为

@"C:\\Program Files (x86)\\Temp\\log\\AppLog.log"
,并且它已在该文件路径上生成了 serilog 文件。为了使其工作,请确保运行程序的帐户(假设控制台应用程序)需要对日志文件路径的读/写权限。

Log.Logger = new LoggerConfiguration()
            .MinimumLevel.Debug()            
            .WriteTo.Console()
            .WriteTo.File(@"C:\\Program Files (x86)\\Temp\\log\\AppLog.log"))
            .CreateLogger();

© www.soinside.com 2019 - 2024. All rights reserved.