記載代理程式

您可以設定記載代理程式來收集基礎架構和應用程式日誌並將其直接傳送到IBM Cloud Logs實例。

記載代理程式基於Fluent Bit開源代理,用於收集和處理日誌資料。 您可以在支援的環境中部署記載代理程式並管理來自各種來源和格式的資料。

下圖顯示了目標是IBM Cloud Logs實例時的高階視圖:

來自代理程式的日誌流
來自代理程式的日誌流

關於 記載代理程式

當您使用記載代理程式將日誌傳送到IBM Cloud Logs服務時,您傳送的日誌必須包含 applicationNamesubsystemName 的值元資料字段。 預設情況下,當您設定記載代理程式時,代理程式會為這些欄位設定預設值。 您可以配置自己的自訂值來替換預設值。

用於精心策劃的環境的記載代理程式

您可以在Red Hat OpenShift on IBM Cloud或IBM Cloud Kubernetes Service叢集上部署記載代理程式。

您可以在本機、IBM Cloud或其他雲端中執行的叢集上部署代理程式。

記載代理程式是一個守護程式集,旨在讓一個 pod 在叢集的每個節點上運作。 每個 Pod 都會收集其運行的節點的相關日誌。 然後記載代理程式會將這些日誌轉送到IBM Cloud Logs服務。

預設情況下,記載代理程式監視並收集與 /var/log/containers/ 中指定路徑模式相符的檔案中的日誌數據,並排除與排除模式相符的檔案中的日誌。 刷新間隔設定為 10 秒。 您可以在配置映射 logger-agent-config 中變更這些值和更多內容。 如需相關資訊,請參閱過濾日誌

您可以在以下平台部署代理程式:

下圖顯示了當日誌來源是Kubernetes或OpenShift叢集時的進階視圖:

來自叢集的日誌流
來自叢集的日誌流

記載代理程式 適用於非編排環境

您可以在Linux和 Windows 環境中部署記載代理程式。

您必須設定記載代理程式監控的日誌檔案並將其資料轉送到您的IBM Cloud Logs實例。

該代理程式使用 systemd 作為Linux守護程式運行。 您可以使用 systemctl 管理代理程式。

支援下列平台:

  • RHEL 8
  • RHEL 9
  • Ubuntu20
  • Ubuntu22
  • Debian 11
  • Debian 12
  • Windows Server 2016
  • Windows Server 2019
  • Windows Server 2022
  • Windows 10 企業版
  • Windows 11 企業版

有關更多信息,請參閱 在Linux環境中管理代理在 Windows 環境中管理代理

授權方式

您可以使用服務 ID 或受信任的設定檔作為代理程式用於透過IBM® Cloud Logs服務進行驗證的身份。

為您規劃部署代理程式的環境選擇支援的授權方法:

支援的授權方式
環境 服務 ID API 金鑰 授信設定檔
IBM Cloud Kubernetes集群 受支援 受支援
IBM Cloud OpenShift集群 受支援 受支援
IBM Cloud Linux VSI 受支援 受支援
IBM Cloud 視窗 VSI 受支援 受支援
本地Kubernetes集群 受支援 不支援
本地OpenShift集群 受支援 不支援
本地Linux伺服器 受支援 不支援
其他 Cloud Kubernetes集群 受支援 不支援
其他 Cloud OpenShift集群 受支援 不支援
其他雲端Linux伺服器 受支援 不支援

當運算資源和實例位於同一帳戶時,您只能使用可信任設定檔向IBM Cloud實例驗證IBM Cloud Logs資源。

若要從與IBM Cloud Logs IBM Cloud }} 帳戶中設定的Kubernetes叢集傳送日誌,您只能使用服務 ID API 金鑰作為代理人的授權方式。

有關如何產生 API 金鑰的更多信息,請參閱 使用服務 ID 進行身份驗證以產生用於攝取的 API 金鑰

有關如何建立可信任設定檔的更多信息,請參閱 產生可信任設定檔以供攝取

支援的格式

此代理程式支援以下輸入格式:

  • JSON
  • apache
  • apache2
  • apache_錯誤
  • nginx
  • docker(具有 docker 特定時間戳格式的 JSON)
  • CRI
  • 系統日誌