c#自帶有個除錯日誌,但一般我們都用它在輸出視窗中列印資訊用,很少用來記錄文字日誌,一般的小型專案其實完全可以使用自帶的除錯類來記日誌,在system.diagnostics的系統命名空間下有個tracelistener類,我們繼承它,並重寫裡面的方法即可。
1. tracelistener類概述
tracelistener類是.net core自帶的用於追蹤監視類,繼承並重寫實現裡面的方法就能實現記錄各種型別的日誌,和以任意形式記錄日誌,比如記錄文字,列印到控制台,或者記錄到資料庫,都可以,理論上也可以支援多執行緒併發寫日誌,當然要自己重寫裡面的方法。
2. 封裝實現自定義類
這裡只實現了文字日誌的記錄,拋磚引玉吧,理論上應該還可以支援多執行緒併發。
///
/// 追蹤日誌類
///
public
class
mylistener
:tracelistener
///
/// 追蹤日誌構造方法
///
/// 日誌名稱
public
mylistener
(string name)
///
/// 行內寫日誌
///
/// 日誌行內容
public
override
void
write
(string message) ")
;}///
/// 另起一行,寫日誌
///
/// 日誌行內容
public
override
void
writeline
(string message)
"+$" "
+ $"");
}///
/// 行內寫日誌
///
/// 日誌行內容
/// 日誌分類
public
override
void
write
(string message,
string category)
"+$" "
+ $"");
}///
/// 另起一行,寫日誌
///
/// 日誌行內容
/// 日誌分類
public
override
void
writeline
(string message,
string category)
"+$" "
+ $""
+ $"");
}}
3. 使用說明
使用也很簡單,先清除一下監聽物件,再把自定義的監聽物件加進去就可以了,執行完之後,在專案根目錄下就能發現記錄的文字日誌了。
static
void
main
(string
args)
catch
(formatexception ex)
console.
readkey()
;}
C語言封裝執行緒與日誌類
折騰了兩天,查半天資料還是不如自己動動手。如題這是兩個很常見的問題,雖然很多語言都封裝了執行緒,但是讓自己寫乙個還是比較麻煩的,這兒做乙個簡單的demo,大家可以去完善。日誌工具包 define max msg text 1024 10 define max msg title 1024 日誌訊息結...
Apache 除錯日誌
錯誤日誌通常是乙個檔案,可以通過乙個有系統管理員在apache配置好的日誌器來訪問。當必須報告錯誤診斷資訊時,模組可以而且應該寫資訊到錯誤日誌中。錯誤日誌的api在http log.h中定義,ap declare void ap log rerror const char file,int line...
gdb 除錯日誌
如果用 c 作為服務端的程式語言的話,gdb 除錯還是要掌握的,可以說是非常方便。gdb 除錯的教程網上非常多,而且肥腸詳細,只寫一下自己遇到的難找的問題。假如 執行程式是 test 異常的 core 檔案是 core.2018 gdb test core core.2018 一般情況下整個工程包括...