.NET 4.8控制台程序SQL Job执行时Serilog File Sink不写入日志
SQL Job执行.NET控制台程序时Serilog无日志输出问题
我给工作中一个每5分钟通过SQL Job执行的现有控制台应用添加了Serilog日志功能。在开发、测试及生产环境中手动执行程序时,Serilog日志均可正常写入;但通过SQL Job执行程序时,日志完全没有输出,不过应用每次都能成功完成任务。目前已经验证过SQL Job运行账户对日志文件夹拥有写入权限。
环境配置
应用基础信息
- 基于.NET 4.8框架的控制台程序
使用的Serilog NuGet包
<package id="Serilog" version="2.12.0" targetFramework="net48" /> <package id="Serilog.Enrichers.Environment" version="2.2.0" targetFramework="net48" /> <package id="Serilog.Sinks.Console" version="4.1.0" targetFramework="net48" /> <package id="Serilog.Sinks.File" version="5.0.0" targetFramework="net48" />
Serilog配置代码
public static void Main(string[] args) { Log.Logger = new LoggerConfiguration() .Enrich.WithMachineName() .Enrich.WithEnvironmentUserName() .MinimumLevel.Debug() .WriteTo.Console() .WriteTo.File("logs/applicationName_.txt", rollingInterval: RollingInterval.Day, outputTemplate: "{Timestamp:HH:mm:ss} [{Level:u3}] {MachineName} {EnvironmentUserName} | {Message}{NewLine}{Exception}") .CreateLogger(); // 后续业务代码...
内容的提问来源于stack exchange,提问作者Jesslyn
相关产品推荐
相关产品推荐

