前言 
程式開發人員對 log 應該不陌生.
我不知道外邊的世界的 log 都寫些什麼? 
但在我處的世界, 也許是便宜行事, 又或許是隨便敷衍, log 都是 exception 內容.
問題稍微多的系統, log 或許會寫的比較不一樣. 但卻不一定能用.
 
寫之前先想想
 
系統設計師最好在大家開工前先制定好 log 框架, 並想想以下的問題, 
讓大家了解這個系統的 log 應該如何呈現.
 
1. (What)  寫 Log 的目的為何?
2. (When) 什麼時候該寫 Log?
3. (Which) 該寫什麼?什麼不該寫?
4. (Who) Log 寫給誰看?
5. (How) Log 該怎麼寫才有用?
 


1.  寫 Log 的目的為何?
 
log 無非是要能讓某人在事情發生過後可以透過 log 來了解當時為什麼會發生這些事情.
之後是否能避免? 事後是否能修復?
 

2.  什麼時候該寫 Log
 
一般來說有以下種情況應該要寫 log,無法預期的錯誤發生時
 
a. 預期的錯誤發生時
b. 處理資料不足夠或是格式/型態錯誤時
c. 商業邏輯錯誤時
 
錯誤分類
 
a. 不會影響後續的作業
b. 會影響後續的作業
c. 會影響自己與其他執行緒的作業
 

3.  該寫什麼?什麼不該寫?
 
log 應該要呈現
 
a. 問題何時發生
* Time
 
b. 發生什麼問題
* Excpetion Name
* 邏輯判斷式
* 處理函式名稱
* 商業函式名稱
 
c. 為什麼會發生
* 發生問題時所使用的資料
 
d. 在哪個程式發生的
 

4.  Log 寫給誰看? 
 
1. 程式開發人員
2. 維護運作人員
3. 一線處理人員
4. 軟體使用者
 

5.  Log HOW?
 
1. 該怎麼寫才有用
2. 不同的使用者該怎麼使用 log
3. 如何取得 log
4. 如何保存 log
 
 
文章標籤
全站熱搜
創作者介紹
創作者 Mr.Y 的頭像
Mr.Y

航向新世界

Mr.Y 發表在 痞客邦 留言(0) 人氣(2,794)