設定日誌設定¶
所有 Knative 元件的日誌設定都是透過相應命名空間中的 config-logging
ConfigMap 來管理的。例如,服務元件是透過 knative-serving
命名空間中的 config-logging
來設定,而事件元件則是透過 knative-eventing
命名空間中的 config-logging
來設定,依此類推。
Knative 元件使用 zap 日誌程式庫;選項在 該專案中有更詳細的說明文件。
除了 zap-logger-config
(這是一個適用於該命名空間中所有元件的通用金鑰) 之外,config-logging
ConfigMap 還支援覆寫個別元件的日誌層級。
ConfigMap 金鑰 | 說明 |
---|---|
zap-logger-config |
一個用於 zap 日誌設定的 JSON 物件容器。主要的金鑰欄位如下所示。 |
zap-logger-config.level |
元件的預設日誌層級。將會記錄此嚴重性層級或更高等級的訊息。 |
zap-logger-config.encoding |
元件日誌的日誌編碼格式 (預設為 JSON)。 |
zap-logger-config.encoderConfig |
一個用於自訂記錄內容的 zap EncoderConfig。 |
loglevel.<component> |
僅覆寫指定元件的日誌層級。將會記錄此嚴重性層級或更高等級的訊息。 |
Zap 支援的日誌層級為
debug
- 細微的除錯info
- 一般日誌warn
- 非預期但非關鍵的錯誤error
- 嚴重錯誤;正常操作期間不應發生dpanic
- 在除錯模式下,觸發恐慌 (崩潰)panic
- 觸發恐慌 (崩潰)fatal
- 立即以退出狀態 1 (失敗) 退出