排解規則執行階段錯誤

支援的國家/地區:

規則執行期間可能會發生執行階段錯誤,導致規則無法順利執行。本文可協助您排解一些常見的執行階段問題。

  • 部署前先測試規則,即可避免發生執行階段錯誤。 在規則編輯器中按一下「執行測試」,如果系統偵測到錯誤,請點選錯誤連結查看詳細資料。

  • 如果規則執行期間發生錯誤,請點選「偵測」頁面上的錯誤連結,查看詳細資料。

查詢語法和邏輯錯誤

如果查詢結構無效、過於複雜或使用不相容的資料類型,就會發生這類錯誤。

錯誤訊息 根本原因 解決方法
Too many `OR` and `AND` operations 查詢包含的運算式或邏輯過於巢狀,超出堆疊空間限制。

簡化規則的條件。

將複雜的邏輯細分為較小的部分。

Query is too long 查詢需要過多的堆疊空間才能處理。 將邏輯分割成多條規則。
Accessing a new field that did not exist for this time range 規則參照最近新增至結構定義的欄位,但規則執行的時間範圍內沒有該欄位。

調整時間範圍,將開始時間設為該欄位出現之後。

修改規則,處理欄位為空值或遺漏的情況。

Invalid subnet CIDR 部分函式遇到無法剖析的無類別跨網域路由 (CIDR) 範圍 檢查規則中的 CIDR 範圍格式。
Invalid IP address 部分函式遇到格式錯誤的 IP 位址。 確認欄位值包含有效的 IP 位址格式
Map access for reading label does not support duplicate map keys 部分函式嘗試從類似地圖的結構 (例如額外欄位) 存取元素,但該結構中存在重複的鍵 (作業不允許)。

調查資料來源是否有重複的鍵。

調整規則邏輯,處理這項資料特徵。

Invalid regular expression re.regex() 等函式中使用的規則運算式格式有誤。

修正規則運算式語法。

Invalid re.replace() re.regex() 使用方式有誤,通常是因為括號中的子運算式與替代字串中的參照不符。 請確認 re.regex() 中的重寫結構定義與規則運算式中以半形括號括住的子運算式相符。
Integer overflow in sum() aggregation 值總和超過標準整數的上限。 先將欄位轉換為浮點類型,再進行加總 (例如使用 sum(0.0 + $e.field))。
Cannot complete [arithmetic/mod] operation between unsigned and signed integer 嘗試在不同整數型別之間執行算術運算 (+-*/MOD) 所致。 使用 cast.as_int()cast.as_uint() 轉換其中一個欄位,使其與另一個欄位相符。

資源限制和效能錯誤

這些錯誤表示查詢過於繁重,系統無法處理。

錯誤訊息 根本原因 解決方法
Request was throttled, please try again later 規則需要的記憶體或處理能力超出分配量 (通常是因為聯結複雜、匯總量大或篩選條件不足)。 在「事件」部分新增更精細的篩選條件。
Not enough memory for aggregation 超過 aggregate_memory_limit 減少 `match` 區段中的鍵數,即可最佳化匯總。
Spilled bytes exceed limit 查詢嘗試處理的事件過多。 新增篩選器 (例如 metadata.log_type) 即可最佳化查詢。
Your query resource usage is exceeding its allocation 查詢使用的資源過多,因此資源管理工具已取消查詢。 新增篩選器 (例如 metadata.log_type) 即可最佳化查詢。

資料存取和系統錯誤

這類錯誤通常是暫時性問題,或是與後端資料儲存空間有關。

錯誤訊息 根本原因 解決方法
Error reading files 暫時無法存取基礎資料。 請稍後再試。如果錯誤持續發生,請與支援團隊聯絡。
Error reading database 暫時無法存取基礎資料。 請稍後再試。如果錯誤持續發生,請與支援團隊聯絡。
Internal error 系統發生暫時性問題。 請稍後再試。如果錯誤持續發生,請與支援團隊聯絡。
Unknown error 如果未定義特定內部錯誤代碼,系統會顯示預設錯誤訊息。 請稍後再試。如果錯誤持續發生,請與支援團隊聯絡。
Request was throttled, please try again later 系統負載過高。 請稍後再試。

不明執行階段錯誤

您可能會遇到不明執行階段錯誤,且沒有說明。如果發生這種情況,請與 Google SecOps 支援團隊聯絡。

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。