use*_*839 0 serilog .net-core serilog-exceptions
我们正在使用下面的一段 serilog 代码,它将事件写入控制台和文件,文件和控制台日志记录在我的机器上工作正常,但在其他开发人员机器上控制台日志记录工作,但文件日志记录不起作用,这增加了奇怪之处不过,“logs”文件夹已创建。是否需要进行任何额外的设置?
public static void SetupLogger()
{
//var outputTemplate = "[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj}{NewLine}{Exception}";
var outputTemplate = "[{Level:u3}] {Message:lj}{NewLine}{Exception}";
// Logger
//var outputTemplate = "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u4}] | {Message:l}{NewLine}{Exception}";
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Verbose()
.WriteTo.Console(outputTemplate: outputTemplate, theme:SystemConsoleTheme.Literate,restrictedToMinimumLevel:LogEventLevel.Information)
.WriteTo.File($"logs/log-{DateTime.Now:yyyy-MM-dd_HH:mm:ss.fff}.log")
.CreateLogger();
}
Run Code Online (Sandbox Code Playgroud)
解决 Serilog 任何问题时的第一步是打开SelfLog
并查看是否捕获任何异常。错误消息可能会告诉您问题所在。
Serilog.Debugging.SelfLog.Enable(s => Console.WriteLine($"Internal Error with Serilog: {s}"));
Run Code Online (Sandbox Code Playgroud)
或者,如果您没有控制台窗口,您也可以使用记事本窗口来检查SelfLog。
不管怎样,它不工作的机器是运行 Windows 的吗?我之所以这样问,是因为查看您的代码,我不希望它在 Windows 上工作,因为您使用:
名称中的(冒号)保存文件,这不是 Windows 中文件名的有效字符。
归档时间: |
|
查看次数: |
2172 次 |
最近记录: |