2017-06-14 99 views
0

我正在使用Serilog進行日誌記錄,並且無法區分不同類型的日誌在不同的文件中。ASP NET核心Serilog:請求,響應和異常日誌的不同文件

我的要求是: -

1) Request.log (Daily Rotation) 
2) Response.log (Daily Rotation) 
3) Exception.log (Daily Rotation) 

一種方法是創建一箇中間件請求和響應,以及異常日誌默認文件。

是否有任何其他方式可以完成以下任務?

回答

3

更常見的方法是擁有一個文件。

原因是您可以更輕鬆地關聯日誌條目。你提出的方式是,一個請求通過你的管道傳遞,失敗(某人拋出),並向客戶端寫入響應,並在3個不同的文件中包含相關消息。 這將使它更難調試。

您可以使用請求ID並將其設置爲該請求的範圍/上下文。這樣你可以增加你的日誌條目。與該請求相關的每個日誌條目(請求/響應/錯誤)將具有相同的RequestId。通過這種方式,您可以查看哪些請求最終生成了該錯誤消息。