目前我有用代碼編寫的所有配置。我使用子記錄器進行篩選並更改記錄的存儲。有沒有辦法從配置文件中做到這一點。因爲我想爲解決方案中的每個上下文都有單獨的配置文件。有沒有辦法通過配置文件配置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. 有沒有辦法通過appSetting配置配置多個Serilog RollingFiles
- 2. 通過配置文件設置python記錄器配置
- 3. 從配置文件配置AzureTableStorage Serilog sink
- 4. 騾子配置模式沒有記錄
- 5. 有沒有辦法將Xcode自動配置文件選擇器配置爲某個團隊配置文件?
- 6. 有條件通過記錄Serilog
- 7. 有沒有辦法讓配置「遞歸」?
- 8. 有沒有辦法在Protractor的配置中定義本地配置文件?
- 9. 通過配置記錄NPoco
- 10. 通過XML配置使用Serilog Slack Sink
- 11. 配置Serilog通過app.config寫入Slack
- 12. magento:有沒有辦法使用cron「運行配置文件」?
- 13. Mixpanel:有沒有辦法鏈接到用戶配置文件?
- 14. 有沒有辦法從maven配置執行批處理文件?
- 15. 有沒有辦法在Perl中加載配置文件?
- 16. 有沒有辦法加載配置文件?
- 17. 有沒有辦法用不同的配置文件運行NUTCH?
- 18. 有沒有辦法使用Visual Studio配置管理器將配置文件從env文件夾中取出?
- 19. 有沒有辦法將日誌記錄器工廠添加到日誌記錄器配置中?
- 20. 有沒有辦法檢查Apache配置文件中是否存在目錄?
- 21. 有沒有辦法以編程方式配置鏟子?
- 22. Log4j的-2.6.2基本配置沒有配置記錄等級
- 23. 有沒有辦法在EventLog接收器上設置事件ID(在Serilog中)?
- 24. 有沒有辦法通過配置文件來配置Python日誌格式化程序來將時間記錄爲Unix時間戳?
- 25. 沒有找到匹配配置文件
- 26. 有沒有辦法在Nginx配置裏設置一個變量?
- 27. 有沒有辦法在DataSource配置中設置時區爲UTC
- 28. 有沒有辦法在WebStorm中設置項目級配置?
- 29. 有沒有辦法爲ruby-debug設置永久配置?
- 30. Java Servlet - 記錄器和配置文件
這可能是有用的,[提問]:HTTP: //stackoverflow.com/a/41989190/7038900 – Spharah