全部產品
Search
文件中心

ApsaraMQ for RocketMQ:日誌配置

更新時間:Jun 30, 2024

用戶端日誌用於記錄雲訊息佇列 RocketMQ 版用戶端運行過程中的異常,協助您快速定位和修複問題。本文介紹如何為用戶端開啟日誌列印功能、用戶端日誌的配置項說明以及如何自訂配置用戶端日誌。

重要
  • 推薦您使用最新的RocketMQ 5.x系列SDK,5.x系列SDK作為主力研發版本,和雲訊息佇列 RocketMQ 版5.x服務端完全相容,提供了更全面的功能並支援更多增強特性。更多資訊,請參見5.x系列SDK
  • RocketMQ 4.x/3.x系列SDK和ONS系列SDK後續僅做功能維護,建議僅存量業務使用。

開啟用戶端日誌列印功能

雲訊息佇列 RocketMQ 版的Java SDK基於SLF4J介面編程。

  • Java SDK 1.7.8.Final及以上版本:預設支援,無需設定

    雲訊息佇列 RocketMQ 版的Java SDK 1.7.8.Final已內建了日誌實現,您無需在用戶端應用中添加日誌實現依賴即可列印雲訊息佇列 RocketMQ 版的用戶端日誌。

  • 針對Java SDK 1.7.8.Final以下版本:添加日誌實現依賴

    雲訊息佇列 RocketMQ 版的Java SDK 1.7.8.Final以下的舊版本不支援Log4j2,只支援Log4j、Logback。您需要在pom.xml設定檔或者lib中添加對應的日誌實現依賴來列印雲訊息佇列 RocketMQ 版用戶端日誌。推薦您使用最新版本的日誌。

重要

應用中同時依賴Log4j和Logback的日誌實現會造成日誌衝突導致用戶端日誌列印混亂。請確保應用只依賴其中一個日誌實現,您可以通過mvn clean dependency:tree | grep log命令進行排查。

用戶端日誌配置項

用戶端日誌的配置項及說明如下表所示。用戶端啟動後,會按照系統預設配置組建記錄檔檔案;您也可以自訂配置項,修改日誌參數,具體操作,請參見本文中的自訂配置用戶端日誌

配置項

系統預設配置

是否支援自訂配置

配置參數

自訂取值

日誌儲存路徑

/{user.home}/logs/ons.log,其中{user.home}是指您啟動當前Java進程的根目錄。

ons.client.logRoot

可自訂為您需要將記錄檔儲存到本地的路徑。

請確保您的應用進程有該路徑的寫入權限,否則日誌無法列印。

記錄層級

INFO

ons.client.logLevel

取值如下:

  • ERROR

  • WARN

  • INFO

  • DEBUG

儲存歷史記錄檔的最大個數

10個

ons.client.logFileMaxIndex

取值範圍:1~100。

若設定的值超出該範圍或格式錯誤,則以系統預設值(10個)為準。

單個記錄檔大小

64 MB

不涉及

不涉及

自訂配置用戶端日誌

重要

若您需要自訂用戶端的日誌配置,請將Java SDK升級到1.2.5及以上版本。

  • 配置方式:在啟動指令碼或者IDE的VM options中,通過-D命令設定用戶端日誌配置項。

  • 配置樣本

    • Linux系統配置樣本

      -Dons.client.logRoot=/home/admin/logs -Dons.client.logLevel=WARN -Dons.client.logFileMaxIndex=20
    • Windows系統配置樣本

      -Dons.client.logRoot=D:\logs -Dons.client.logLevel=WARN -Dons.client.logFileMaxIndex=20

    其中/home/admin/D:\僅為樣本,請替換為您實際的系統目錄。