從 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 |
|
latest_event_timestamp |
事件產生的日期和時間。 |
links |
|
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_truncated是true,截斷的 JSON 會以字串化 JSON 的形式傳送到 IBM Cloud Event Notifications。meta_labels_truncated:將新增此欄位,以表示元資料標籤已被截斷。
自訂範本值中的特殊字符
如果您要在自訂範本中使用名稱中包含句點 (.) 的值,您需要將該值括在方括號 ([ ]) 中。
例如,如果您要包含在通知中的值是 kubernetes.cluster_name,您需要包含類似這樣的值:
"CloudLogs_Shared_Summary": "{{data.log_example.[kubernetes.cluster_name]}}"