Lindorm審計日誌功能提供了SQL動作記錄,您可以通過審計日誌查看一段時間內的SQL操作記錄,還可以使用各種過濾條件對查詢到的記錄進行篩選。
前提條件
審計日誌類型
Lindorm審計日誌支援記錄以下SQL操作:
DDL:包括CREATE DATABASE、CREATE TABLE、ALTER TABLE、DROP TABLE等。
DML:包括INSERT、UPSERT、DELETE、UPDATE等。
DQL:包括SELECT等。
通常情況下,DML和DQL操作較多,記錄此類審計日誌可能會影響執行個體的效能和穩定性。因此,寬表引擎預設僅記錄DDL類型的SQL審計日誌。如需開啟DML和DQL審計日誌,可以通過系統變數AUDIT_LEVEL來調整審計日誌的層級。詳細操作,請參見修改審計記錄層級。
日誌保留時間長度
Lindorm審計日誌預設的儲存時間為30天,您可在控制台修改審計日誌儲存期限。當日誌儲存時間達到資料儲存期限後,日誌將被刪除。
修改審計日誌儲存期限
登入Lindorm管理主控台。
在頁面左上方,選擇執行個體所屬的地區。
在实例列表頁,單擊目標執行個體ID或者目標執行個體所在行操作列的管理。
在左側導覽列,選擇,點擊右上方修改保存期限,在彈窗中修改儲存時間長度。
點擊确认修改。
查看審計日誌
登入Lindorm管理主控台。
在頁面左上方,選擇執行個體所屬的地區。
在实例列表頁,單擊目標執行個體ID或者目標執行個體所在行操作列的管理。
在左側導覽列,選擇,查看Lindorm寬表的審計日誌詳情。
說明預設顯示最近15分鐘內的日誌詳情,您也可以根據需求修改需要查詢的時間段。
(可選)在原始日誌頁簽下,單擊目標索引欄位,可根據該欄位篩選日誌。

審計欄位說明
欄位名 | 說明 |
instance_id | Lindorm執行個體ID。 |
reqId | 請求ID,用於標識該Action Trail記錄的唯一識別碼。 |
user | 該Action Trail記錄對應的使用者名稱。 |
fail | SQL語句是否執行成功。 |
reason | 該Action Trail記錄對應的錯誤資訊,僅當該操作出現錯誤時才會記錄該資訊。 |
connectionId | 使用者所在串連的標識符。 |
protocol | 用戶端協議類型,Avatica或MySQL。 |
db | 當前選擇的資料庫名。 |
sql | 執行的SQL語句。 |
sqlType | SQL類型。包括 |
params | 傳入執行SQL語句的參數,多個參數使用半形逗號(,)分割,用於綁定參數的查詢情境。 |
sqlTime | SQL開始執行的時間。 |
responseTime | 回應時間。單位:毫秒(ms)。 |
checkRows | 掃描的行數,表示查詢時從資料存放區引擎返回的行數。 |
affectRows | SQL執行返回的行數。如果是增刪改操作,affectRows表示影響的行數。如果是查詢語句,affectRows表示返回的行數。 |
dbVersion | 當前已連線的服務端SQL版本。 |
hostname | 服務端節點主機名稱。 |
clientIp | 用戶端IP地址。 |
clientPort | 用戶端連接埠。 |
修改審計記錄層級
您可以通過ALTER SYSTEM語句修改AUDIT_LEVEL參數的值,調整審計日誌的輸出層級。
AUDIT_LEVEL參數取值如下:
0:輸出DDL日誌。
1:輸出DDL、DML日誌。
2:輸出DDL、DQL日誌。
3:輸出DDL、DML、DQL日誌。
樣本
修改審計記錄層級,輸出DDL和DQL日誌。
ALTER SYSTEM SET AUDIT_LEVEL = 2;結果驗證
您可以執行SHOW SYSTEM VARIABLES LIKE 'AUDIT_LEVEL';語句查看是否修改成功。
更多關於系統變數的使用說明,請參見ALTER SYSTEM。