桌面軟體底層日誌的一種改進設計

2021-07-15 06:59:49 字數 734 閱讀 6689

為此需要改變原來的以文字檔案充當日誌檔案的做法,改用sqlite資料庫檔案來充當日誌檔案。採用sqlite資料庫檔案充當日誌檔案,一是可以只採用乙個日誌檔案,二是可以開發相關的日誌分析工具。特別是在並行處理系統中,日誌是一種重要的除錯手段。基於資料庫的分析工具毫無疑問要比基於文字檔案的分析工具更為強大。

採用sqlite資料庫檔案充當日誌檔案,需要設計乙個日誌表。日誌表的結構如下:

欄位名(英文名)

意義型別

日誌記錄id(record_id)

採用guid實現

字串日誌等級(log_level)

劃分為兩個等級:

1.  info  —— 資訊提示

2.  error —— 錯誤提示

整型日誌寫入時間(write_time)

年月日時分秒,如:2016:7:7 10:49:34

時間型別

輸出日誌的**具體位置(code_pos)

包括檔名、行號及函式,如:

file:"e:\myproject\src\utility\mathlib.cpp"; line: 10;matrix:: matrix:

字串日誌具體資訊(info)

如:載入xml檔案失敗!

字串操作日誌的流程是這樣的:日誌檔案被命名為log.db,放在應用程式檔案所在的目錄下,當日誌檔案不存在時,建立這個日誌資料庫檔案,當需要寫入日誌時插入日誌記錄。

另外需要針對日誌檔案開發相關的日誌分析工具。

記錄日誌處理的一種方式

itoo tool中配置 首先在itoo tool中定義的結構如下 exception包中itooexception為itoo異常,繼承runtimeexception,如下 public classitooexceptionextendsruntimeexceptionimplementsseri...

如何脫離底層的一種思維方式 20200115

今天看到乙個觀點很有意思,中國要如何保持快速發展 1 需要大量的底層奮鬥者。中國基建 2 需要讓這些奮鬥者一直得不到想要的東西,又存有希望。物價 房價越來越高 3 底層不需要穩定,而頂層富裕者才是想方設法追求階級的穩定性。窮是底層思維 富是馬太效應。差著越差,富者越富。有很重要的現實參考意義。大量窮...

處理程式關鍵資料變化的一種軟體設計

專案中遇到的所有問題可以歸納如下 1.本地邏輯外地控制 2.外地邏輯本地透明 3.所有命令皆為被動 限於子板處於從屬地位,子板與主控間傳遞的命令事實上只是一種控制訊號的傳輸。所有的功能跟隨控制訊號而發生變化,或者更確切地說,功能向控制資料的方向調整變化。資料控制邏輯,而不是邏輯控制邏輯,這是所有專案...