Log 格式說明

智慧設備順序控制系統共用骨架文件

返回首頁

Log 格式說明

LogEntry 欄位

第一階段已實作的輸出欄位如下:

欄位說明必填
TimestampLog 時間,使用 ISO 8601 格式是
LevelINFO / ERROR是
TaskId任務識別碼是
NodeId節點代號是
NodeName節點名稱是
DeviceId設備識別碼依情境
CommandName命令名稱依情境
Status節點狀態,例如 completed / failed是
RetryCount實際重試次數是
TimeTakenMs節點整體耗時毫秒數是
ErrorCode錯誤代碼,成功時為 NONE是
Message紀錄訊息是

範例:

2026-05-22T00:26:20.6077037+08:00 level="INFO" taskId="demo-task" nodeId="light-on" nodeName="開啟燈號" deviceId="LED_001" command="LightOn" status="completed" retryCount=0 timeTakenMs=0 errorCode="NONE" message="Mock command 'LightOn' completed."

ConsoleLogWriter 與 FileLogWriter 共用 LogEntryFormatter,確保 Console 與檔案輸出格式一致。字串欄位會使用雙引號包住,換行、反斜線與雙引號會被轉義,避免單筆 Log 斷行造成後續查詢困難。

後續目標欄位

欄位說明必填
TimestampLog 時間是
LevelDebug / Info / Warn / Error是
TaskId任務識別碼是
NodeId節點代號是
NodeName節點名稱是
DeviceId設備代號依情境
DeviceName設備名稱依情境
CommandName命令名稱依情境
Status任務或節點狀態是
StartTime開始時間是
EndTime結束時間是
TimeTakenMs耗時是
ErrorCode錯誤代碼失敗時必填
ErrorMessage錯誤訊息失敗時必填
RetryCount重試次數依情境
RawRequest原始送出資料依情境
RawResponse原始回應資料依情境
Operator操作人依情境
HostName主機名稱是
AppVersion程式版本是

原則