從 IBM Cloud Logs 傳送至 IBM Cloud Event Notifications

IBM Cloud Logs 產生的成功事件包含各種欄位,可協助您識別事件的來源和詳細資訊。

IBM Cloud Logs 服務產生的事件只包含元資料屬性,例如資源的名稱或識別碼。 敏感資料 (例如 API 金鑰或密碼) 不會包含在產生的事件中。

根據事件類型和子類型的不同,傳送到 Event Notifications 的屬性也不同。 例如,如果 StandardMoreThanAlertEvent:AlertTriggered 事件發生在一個實例中,IBM Cloud Logs 會傳送一個通知有效載荷到 Event Notifications,該有效載荷與下面的範例類似。

有效負載

{
   "data": {
      "alert_definition": {
         "alert_type": "StandardMoreThanAlertEvent",
         "condition": {
            "MoreThan": {
               "condition_threshold": 1,
               "condition_timeframe": 1
            }
         },
         "description": "",
         "id": "<alert_unique_id>",
         "meta_labels": {
            "env": "prod"
         },
         "name": "<alert_name>",
         "query_statement": "_exists_:level",
         "severity": "ERROR",
         "versioned_id": "<alert_versioned_id>",
      },
      "latest_event_timestamp": 0000000000000,
      "links": {
         "edit_alert": "https://dashboard.eu-gb.logs.cloud.ibm.com/<instance_id>/#/alerts/<alert_versioned_id>",
         "view_alert": "https://dashboard.eu-gb.logs.cloud.ibm.com/<instance_id>/#/insights?id=c9fe7539-e901-4745-b3ad-29ca0ae987a0"
      },
      "log_example": {"msg":"Test Log"},
      "log_example_truncated": true,
      "meta_labels_truncated": false,
      "priority": "<alert_priority>",
      "status": "triggered"
   },
   "datacontenttype": "application/json",
   "ibmendefaultlong": "Triggered: 2024-01-01T00:00:00Z",
   "ibmendefaultshort": "ERROR - new_groupBy",
   "ibmenseverity": "info",
   "ibmensourceid": "crn:v1:bluemix:public:logs:<region>:a/<account_id>:<instance_id>::",
   "id": "997355d5-4542-47fd-9868-84cf5df71e1b_c9fe7539-e901-4745-b3ad-29ca0ae987a0",
   "notification_id": "923873c0-2b42-4d4c-a9a0-c69339b16717",
   "source": "crn:v1:bluemix:public:logs:<region>:a/<account_id>:<instance_id>::",
   "specversion": "1.0",
   "time": "2024-01-01T00:00:00.000000Z",
   "type": "com.ibm.cloud.logs.<event_type>:<event_subtype>"
}

查看下表,瞭解事件通知屬性的詳細資訊。

事件通知有效負載中的屬性
內容 說明
alert_definition
  • alert_type :觸發通知的警報類型
  • condition :可觸發警報的警報設定。
  • description :警報的描述。
  • id :觸發警報的唯一識別碼。 這也是可以在 API 呼叫中使用的 ID。
  • name :給定警報的名稱。
  • query_statement :給定警報的 Lucene 搜尋查詢。
  • severity :給定警報的嚴重程度。
  • versioned_id :觸發警報的版本 ID。 這是更新警報定義時產生的 ID。
latest_event_timestamp 事件產生的日期和時間。
links
  • edit_alert :連結至修改警報設定的頁面。
  • view_alert :連結至檢查警報詳細資料的頁面。
priority 觸發警報的條件的 優先順序
status 給定警報的狀態。
ibmendefaultshort 給定警報的名稱。
ibmendefaultlong 觸發或解決的動作與警報名稱的組合。
ibmenseverity 警報的嚴重性。
ibmensourceid 雲端資源名稱 (CRN),可唯一識別您的 IBM Cloud Logs 服務實體。
id IBM Cloud Logs 所提供的識別碼,該識別碼將識別事件在 IBM Cloud Logs
notification_id Event Notifications 所建立的識別碼。
source 雲端資源名稱 (CRN),可唯一識別您的 IBM Cloud Logs 服務實體。
time 觸發警報通知的時間。
type 觸發通知的 事件類型 和與觸發通知的 事件類型 對應的 類型的組合。

資料大小

在事件中,適用下列長度:

資料大小
欄位名稱 字元數上限
data.log_example 1000
data.alert_definition.meta_labels 400
data.alert_definition.name 100
data.alert_definition.description 100
data.alert_definition.query_statement 100

有效負載中的每個欄位都有特定的大小。 如果任何欄位超過其最大字元數,有效負載將會被截斷。

請考量下列資訊:

  • 如果字串欄位超過其最大字元數,則會被截斷,並附加省略號 (...) 以表示內容已被截斷。

  • Meta 標籤會包含在上限內。

  • Meta 標籤的關鍵字和值會計入限制內。

  • 如果 log_example 欄位超過其最大字元數,則會轉換為包含部分日誌資料的字串,其後加上省略號 (...),以表示截斷。

  • 以下附加欄位會加入資料中,以顯示樣本或標籤被截斷的時間:

    log_example_truncated:此欄位將會被加入到有效負載中,以表示一個範例記錄項目被截斷。

    如果 log_example_truncatedtrue,截斷的 JSON 會以字串化 JSON 的形式傳送到 IBM Cloud Event Notifications。

    meta_labels_truncated:將新增此欄位,以表示元資料標籤已被截斷。

自訂範本值中的特殊字符

如果您要在自訂範本中使用名稱中包含句點 (.) 的值,您需要將該值括在方括號 ([ ]) 中。

例如,如果您要包含在通知中的值是 kubernetes.cluster_name,您需要包含類似這樣的值:

"CloudLogs_Shared_Summary": "{{data.log_example.[kubernetes.cluster_name]}}"