目前我有用代码编写的所有配置。我使用子记录器进行筛选并更改记录的存储。有没有办法从配置文件中做到这一点。因为我想为解决方案中的每个上下文都有单独的配置文件。有没有办法通过配置文件配置Serilog子记录器?
1
A
回答
0
如果子记录器的数量是固定在编译的时候,你可以使用配置前缀来做到这一点:
Log.Logger = new LoggerConfiguration()
.ReadFrom.AppSettings() // default file
.WriteTo.Logger(lc => lc
.ReadFrom.AppSettings(filePath: "other1.config"))
.WriteTo.Logger(lc => lc
.ReadFrom.AppSettings(filePath: "other2.config"))
.CreateLogger();
有在Serilog.Settings.AppSettings不支持,但在理论上没有什么预防如果某人能够实施它,它会被添加。
0
试试这个
Startup.cs/Global.asax.cs中
Log.Logger = new LoggerConfiguration()
.WriteTo
.Logger(x => x.Filter
.ByIncludingOnly(logEvent => logEvent.Level == Serilog.Events.LogEventLevel.Error)
.ReadFrom
.AppSettings("error"))
.WriteTo
.Logger(x => x.Filter
.ByIncludingOnly(logEvent => logEvent.Level == Serilog.Events.LogEventLevel.Information)
.ReadFrom
.AppSettings("info")).CreateLogger()
的Web.Config
<add key ="error:serilog:using:RollingFile" value="Serilog.Sinks.RollingFile"/>
<add key ="error:serilog:write-to:RollingFile.pathFormat" value="C:\log\error {Date}.txt"/>
<add key ="error:serilog:write-to:RollingFile.formatter" value="Serilog.Formatting.Json.JsonFormatter"/>
<add key ="info:serilog:using:RollingFile" value="Serilog.Sinks.RollingFile"/>
<add key ="info:serilog:write-to:RollingFile.pathFormat" value="C:\log\info {Date}.txt"/>
<add key ="info:serilog:write-to:RollingFile.formatter" value="Serilog.Formatting.Json.JsonFormatter"/>
+0
请不要添加[相同的答案](http://stackoverflow.com/a/41989190/4687348)亩一些问题。回答最好的一个,并将其余标记为重复。请参阅[是否可以为几个问题添加重复答案?](http://meta.stackexchange.com/q/104227/347985) – FelixSFD
相关问题
- 1. 有没有办法让配置“递归”?
- 2. 有没有办法在Protractor的配置中定义本地配置文件?
- 3. 配置Serilog通过app.config写入Slack
- 4. 通过XML配置使用Serilog Slack Sink
- 5. 有没有办法在Perl中加载配置文件?
- 6. Mixpanel:有没有办法链接到用户配置文件?
- 7. 有没有办法用不同的配置文件运行NUTCH?
- 8. magento:有没有办法使用cron“运行配置文件”?
- 9. 有没有办法使用Visual Studio配置管理器将配置文件从env文件夹中取出?
- 10. 有没有办法将日志记录器工厂添加到日志记录器配置中?
- 11. 有没有办法检查Apache配置文件中是否存在目录?
- 12. 有没有办法通过配置文件来配置Python日志格式化程序来将时间记录为Unix时间戳?
- 13. 有没有办法在Nginx配置里设置一个变量?
- 14. 有没有办法在DataSource配置中设置时区为UTC
- 15. Java Servlet - 记录器和配置文件
- 16. 如何通过配置文件配置在Jetty中登录?
- 17. 通过manifest.yml文件配置目录项
- 18. Talend:有没有办法通过文本编辑器编辑tMap组件的配置?
- 19. 量角器,有没有办法使用参数来配置报表目录?
- 20. 有没有办法在没有通配符证书的同一台服务器上配置多个SSL站点?
- 21. 有没有办法通过git checkout使用通配符?
- 22. 有没有什么办法通过配置文件来修饰具有属性的类?
- 23. XmlApplicationContext:有没有办法一次了解所有配置问题?
- 24. log4net记录器配置
- 25. 通过配置文件名称呼叫配置文件提供程序配置
- 26. 有没有一种方法根据配置文件数据匹配两个配置文件
- 27. 有没有办法确定MySQL正在使用哪个配置文件?
- 28. xcode 4 - 有没有办法在配置文件中回显内容?
- 29. 有没有办法将AWS CLI配置文件导出到环境变量?
- 30. 阅读配置文件没有配置部分
这可能是有用的,[提问]:HTTP: //stackoverflow.com/a/41989190/7038900 – Spharah