將日誌轉送至IBM Cloud Logs

平台日誌是IBM Cloud平台上的各種服務向使用者公開的日誌。IBM Analytics Engine支援將日誌從IBM Analytics Engine服務轉送到您已啟用接收平台日誌的IBM Cloud Logs 實例。

  • 平台日誌是地區性的。

    您可以從服務可用的地區中 IBM Cloud 上的 IBM Analytics Engine 監視日誌。

  • 您只能為每個區域和每個IBM Cloud帳戶配置一個IBM Cloud Logs 實例,以收集該位置的平台日誌。

    您可以在一個位置擁有多個IBM Cloud Logs 實例。 但是,一個位置(區域)中只有一個實例可以設定為從IBM Cloud服務接收日誌,例如IBM Cloud位置中的IBM Analytics Engine。

    此外,屬於某個帳戶的IBM Analytics Engine實例所產生的日誌將會轉送至同一IBM Cloud帳號下的IBM Cloud Logs 實例。

若要檢查已配置為接收平台日誌的IBM Cloud Logs 服務,請參閱 可觀測性儀表板

啟用平台記載的必要條件

若要檢視 IBM Analytics Engine 平台日誌,您必須使用 IBM Cloud 中的「觀察」儀表板來配置平台記載。 請參閱 透過「觀察」儀表板配置平台日誌,以取得您需要遵循以透過「觀察」儀表板啟用記載功能的步驟。

記載 API

透過「觀察」儀表板啟用平台記載之後,請繼續下列各節中的步驟,以瞭解如何使用 API 端點來啟用記載、停用記載及檢視記載配置。

記載 API 呼叫需要服務實例的 GUID。 如果您未記下 GUID,請參閱 擷取無伺服器實例的 GUID

現在,會公開兩個記載 API 端點:

  • log_forwarding_config
  • logging。此 API 端點已淘汰,即將停止提供。 雖然您可以使用此端點,但應該開始使用 log_forwarding_config 端點。

啟用從 IBM Analytics Engine 進行日誌轉遞

若要啟用將IBM Analytics Engine平台日誌轉送至IBM Cloud Logs,請針對現有的Analytics Engine實例呼叫下列 API。

您可以使用兩種方法來啟用轉遞日誌:

  • 預設值: 在此情況下,您只會提出啟用日誌轉遞的要求,且與一或多個預設日誌來源 (spark-driver) 相關的日誌會開始轉遞。 您可以透過以下方式之一執行此操作:

    • 使用 log_forwarding_config API 端點:
      curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enabled":true}'
      
    • 使用 logging API 端點 (已淘汰):
      curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enable":true}
      
  • 自訂: 使用此選項,您可以進一步控制日誌轉遞配置。 例如,您可以指定要轉遞的日誌來源。 您也可以選擇將一些標籤與日誌相關聯,稍後可以在IBM Cloud Logs 中將其用作搜尋關鍵字,以縮小適用日誌的搜尋範圍。 您可以透過以下方式之一執行此操作:

    • 使用 log_forwarding_config API 端點:
      curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d ' {"enabled":true,"sources": ["spark-driver", "spark-executor"],"tags": ["<tag_1>", "<tag_2>",...]} '
      
    • 使用 logging API 端點 (已淘汰):
      curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d ' {"enable":true,"components": ["spark-driver", "spark-executor"],"tags": ["<tag_1>", "<tag_2>",...]} '
      

從 IBM Analytics Engine 停用平台記載

透過以下方式之一停用將IBM Analytics Engine平台日誌轉送到IBM Cloud Logs。

  • 使用 log_forwarding_config API 端點:

    curl -X PATCH https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enabled":false}'
    
  • 使用 logging API 端點 (已淘汰):

    curl -X PATCH https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enable":false}'
    

檢視 IBM Analytics Engine 實例的日誌轉遞配置

以下列其中一種方式檢視 IBM Analytics Engine 實例的現行記載配置:

  • 使用 log_forwarding_config API 端點:

    curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN"
    
  • 使用 logging API 端點 (已淘汰):

    curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN"
    

IBM Cloud Logs 儀表板中的IBM Analytics Engine日誌搜尋範例

您可以縮小與 IBM Analytics Engine 相關的平台日誌搜尋範圍,如下所示:

  1. 點擊IBM Cloud Logs 儀表板上的 Sources 並選擇 ibmanalyticsengine 以從IBM Analytics Engine取得日誌。
  2. 若要進一步縮小搜尋範圍,您可以在搜尋視窗中輸入並搜尋與 Spark 應用程式相關的任何關鍵字。

搜尋範例

本節列出如何搜尋日誌的範例。 這些範例都使用下列範例值:

  • IBM Analytics Engine實例 ID:4308f7a6-2cfd-4d7e-b7a7-678e71a27957
  • Spark 應用程式 ID: 5438585f-6413-4bb2-9251-8162d34f3dc3
  • 已啟用日誌轉遞的來源: spark-driverspark-executor
  • 相關聯的標籤: produs-south

下圖顯示了IBM Cloud Logs 儀表板中傳回的搜尋結果的範例。 在影像底端,您可以看到您在其中輸入搜尋查詢的搜尋輸入欄位。 在範例中,已輸入應用程式 ID 5438585f-6413-4bb2-9251-8162d34f3dc3 及來源 spark-driver

搜尋範例:

  • 若要擷取在特定 IBM Analytics Engine 實例中提交之所有 Spark 應用程式的日誌,請在搜尋視窗中傳遞實例 ID:

    4308f7a6-2cfd-4d7e-b7a7-678e71a27957
    
  • 若要提取特定 Spark 應用程式的日誌,您可以傳遞:

    • IBM Analytics Engine 實例 ID 與 Spark 應用程式 ID 的組合:
      4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3
      
    • 僅應用程式 ID:
      5438585f-6413-4bb2-9251-8162d34f3dc3
      
  • 若要搜尋應用程式的 Spark 主要日誌,您可以傳遞:

    • IBM Analytics Engine 實例 ID、Spark 應用程式 ID 及關鍵字 spark-driver 的組合:
      4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 spark-driver
      
    • 應用程式 ID 與關鍵字 spark-driver 的組合:
      5438585f-6413-4bb2-9251-8162d34f3dc3 spark-driver
      
  • 若要依多個日誌來源名稱搜尋,您可以傳遞:

    • IBM Analytics Engine 實例 ID、Spark 應用程式 ID 及來源名稱的組合:
      4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 (spark-driver OR spark-executor-2)
      
    • 應用程式 ID 與日誌來源名稱的組合:
      5438585f-6413-4bb2-9251-8162d34f3dc3 (spark-driver OR spark-executor-2)
      
  • 若要取得與 us-south 地區及 prod 環境內特定實例中執行的所有應用程式相關的日誌,您可以在搜尋欄位中輸入下列指令:

    4308f7a6-2cfd-4d7e-b7a7-678e71a27957 "prod us-south"