跳轉至

故障排查 / MySQL 存儲數據量過大

在重度使用 DataFlux Func 一段時間後,可能會發生 MySQL 存儲空間過大的情況。

1. 原因

默認情況下,DataFlux 會在 MySQL 中保存每次函數任務的執行記錄(包括所有 print(...) 日誌),保存策略如下:

函數任務來源 保存函數任務記錄數
函數 API 每個函數 API 最後 100 次任務
定時任務 每個定時任務最後 500 次任務
連接器訂閲消息處理 每個連接器最後 1,000 次任務

每次函數任務記錄會進行相應縮減,限制策略如下:

限制
每次 print(...) 日誌長度 3,000 個字符
每次函數任務記錄日誌總長度 50,000 個字符,保留:
 開頭 20,000 個字符
 末尾 30,000 個字符

由於系統需要為每個任務來源都保留一定數量的最後任務記錄,因此,當配置的函數 API、定時任務等數量較多時,可能會佔據大量的 MySQL 存儲空間。

2. 解決方案

關閉本地函數任務記錄可以極大地減少 MySQL 存儲空間壓力

可以參考 部署和維護 / 系統指標和任務記錄 / 關閉本地函數任務記錄 關閉「本地函數任務記錄」,減輕 MySQL 存儲壓力