從 ESXi 8.0 開始,記錄檔格式已標準化並以 Augmentd Backus-Naur Form (ABNF) 表示。
在 ESXi 8.0 中,將直接從單一服務 (如 VMX) 寫入記錄檔,或者在將服務的記錄提交到 syslog 的時間接寫入記錄檔。例如,VMX 始終在每個虛擬機器的 vmware.log 檔案中寫入記錄訊息。為了備用系統資源,VMX 不會將記錄訊息提交到 syslog。另一方面,在 vmsyslogd 產生的某些記錄檔中,您會看到來自多個程式的訊息,因為 ESXi syslog 精靈會從多個服務建立和管理所有記錄檔以及這些檔案的訊息。
直接記錄訊息的格式:
參數 | 值 |
LOG-MSG | HEADER SP MSG |
HEADER | TIMESTAMP SP SEVERITY SP THREAD-NAME SP OPID |
TIMESTAMP | FULL-DATE T FULL-TIME (符合 RFC 5424 的 UTC/GMT 格式和解析度要求 (如果可能,採用毫秒或更精細的單位))。 |
FULL-DATE | DATE-FULLYEAR - DATE-MONTH - DATE-MDAY |
DATE-FULLYEAR | 4DIGIT |
DATE-MONTH | 2DIGIT ; 01-12 |
DATE-MDAY | 2DIGIT ; 01-28, 01-29, 01-30, 01-31 (基於月份/年) |
FULL-TIME | TIME-HOUR : TIME-MINUTE : TIME-SECOND[TIME-SECFRAC] Z |
TIME-HOUR | 2DIGIT ; 00-23 |
TIME-MINUTE | 2DIGIT ; 00-59 |
TIME-SECOND | 2DIGIT ; 00-59 |
TIME-SECFRAC | '.'1*6DIGIT |
SEVERITY | SEVERITY-STRING SEVERITY-VALUE [LINE-MARKER] |
SEVERITY-STRING | Em/ Al / Cr / Er / Wa / No / In / Db ( RFC 5424 中指定的 8 個嚴重性層級的縮寫如下所示:
|
SEVERITY-VALUE | ( *DIGIT ) (SEVERITY-VALUE 是與 SEVERITY-STRING 相關聯之數值的可選運算式。這允許將記錄器支援的層級摺疊為所需的 8 個字串,而不會丟失資訊 (例如 Db(5) - 調試,層級 5)。 |
LINE-MARKER | + (將 LINE-MARKER 新增到多行提交產生的每個後續行中。它識別多行提交並防止記錄插入安全性攻擊。) |
NILVALUE | - (單執行緒程式可能沒有執行緒名稱,NILVALUE 是可接受的。) |
THREAD-NAME | NILVALUE / 1*32PRINTUSASCII (在單一程式寫入檔案且無需元件欄位時默許使用的元件 (APP-NAME),僅限執行緒名稱。) |
OPID | NILVALUE / 1*128UTF-8-STRING |
STRUCTURED-DATA | 1*SD-ELEMENT |
SD-ELEMENT | [ SD-ID *(SP SD-PARAM) ] |
SD-PARAM | PARAM-NAME %d34 PARAM-VALUE %d34 |
SD-ID | SD-NAME |
PARAM-NAME | SD-NAME |
PARAM-VALUE | UTF-8-STRING ; 字元 ''、'\’ 和 ']' 必須逸出。 |
SD-NAME | 1*32PRINTUSASCII ; ''、SP、']'、%d34 () 除外 |
MSG | [STRUCTURED-DATA SP] UTF-8-STRING |
vmsyslogd 服務管理的記錄檔的格式:
參數 | 值 |
LOG-MSG | HEADER SP MSG |
HEADER | TIMESTAMP SP SEVERITY SP APP-NAME [PROC-IDENTIFIER] : |
APP-NAME | 1*32PRINTUSASCII |
PROC-IDENTIFIER | [ *DIGITS ] ; 與 APP-NAME 相關聯的 PID |
TIMESTAMP | FULL-DATE T FULL TIME (以毫秒為單位或更精細的解析度 (如果可能)) |
FULL-DATE | DATE-FULLYEAR - DATE-MONTH - DATE-MDAY |
DATE-FULLYEAR | 4DIGIT |
DATE-MONTH | 2DIGIT ; 01-12 |
DATE-MDAY | 2DIGIT ; 01-28, 01-29, 01-30, 01-31 (基於月份/年) |
FULL-TIME | TIME-HOUR : TIME-MINUTE : TIME-SECOND[TIME-SECFRAC] Z |
TIME-HOUR | 2DIGIT ; 00-23 |
TIME-MINUTE | 2DIGIT ; 00-59 |
TIME-SECOND | 2DIGIT ; 00-59 |
TIME-SECFRAC | '.'1*6DIGIT |
SEVERITY-STRING | Em/ Al / Cr / Er / Wa / No / In / Db ( RFC 5424 中指定的 8 個嚴重性層級的縮寫如下所示:
|
SEVERITY | SEVERITY-STRING PRI-STRING [LINE-MARKER] |
PRIVAL | 1*3DIGIT ; range 0 ..191 (MSG PRI;包含功能和嚴重性值,與 OR 一起使用) |
PRI-STRING | ( PRIVAL ) (PRIVAL 包含訊息 PRI 中的位元數。這樣,使用者可以查看訊息的功能以及嚴重性位元數本身。_ |
LINE-MARKER | + (將 LINE-MARKER 新增到多行提交產生的每個後續行中。它識別多行提交並防止記錄插入安全性攻擊。) |
STRUCTURED-DATA | 1*SD-ELEMENT |
SD-ELEMENT | [ SD-ID *(SP SD-PARAM) ] |
SD-PARAM | PARAM-NAME %d34 PARAM-VALUE %d34 |
SD-ID | SD-NAME |
PARAM-NAME | SD-NAME |
PARAM-VALUE | UTF-8-STRING ; 字元 ''、'\’ 和 ']' 必須逸出。 |
SD-NAME | 1*32PRINTUSASCII ; ''、SP、']'、%d34 () 除外 |
MSG | [STRUCTURED-DATA SP] UTF-8-STRING |
稽核記錄
功能程式碼為 13 的 ESXi 稽核記錄符合 RFC 3164 和 5424 格式,您可以在結構化資料區段中找到這些記錄。在稽核記錄中,您還會在此類資料可用時找到事件型可追蹤性資訊。稽核記錄以特殊格式儲存,而不是一般記錄檔。您可以使用 viewAudit 程式和虛擬基礎結構管理功能 FetchAuditRecords 在本地存取稽核記錄。請勿直接讀取、使用或編輯稽核記錄儲存檔案。本地儲存的稽核記錄符合 RFC 5424 傳輸格式,其中 HOSTNAME 和 MSGID 始終是 NILVALUE。