使用Serilog将日志写入文件无法正常工作

4
我有一个基于ASP .NET的应用程序,使用Serilog进行日志记录,我想通过将我的日志写入文件来进行测试。我正在使用Serilog和Serilog.Sinks.File。到目前为止,代码如下所示:
_perfLogger = new LoggerConfiguration()
                .WriteTo.File("C:\\Users\\andav\\Desktop\\NewTest\\logger\\perf.txt")
                .CreateLogger();

_perfLogger.Write(LogEventLevel.Information, "{@LogDetail}", infoToLog);

但是我的所有文件都是空的或者没有被创建,而且我也没有收到任何错误提示。

我做错了什么吗?

谢谢。

2个回答

2
如果您在目录上添加了IIS_IUSRS的读/写权限,则可能可以实现。我通常将日志目录放在与我的IIS应用程序相同的目录中,并执行以下操作:
您需要本地管理员权限:
  1. 右键单击要记录文件的目录
  2. 选择属性
  3. 转到安全选项卡
  4. 单击编辑
  5. 单击添加
  6. 输入IIS_IUSRS
  7. 单击检查名称
如果找不到它,请单击位置
  • 单击计算机名称,然后单击确定
  • 现在单击检查名称,它应该解析。
  1. 单击确定
  2. 授予修改权限
  3. 单击确定
“应该”可以记录日志。 如果它是inetpub之外的目录,则不确定,但值得一试。 -Gina

谢谢,我会尝试一下。 - Alexandra

0

我不知道除了App_Data文件夹之外,.Net不允许在其他文件夹中编写。这就是问题所在,我已经解决了它。


3
你是如何解决的? - Gina Marano

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接