您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
記錄輪替:輪流使用多個記錄檔的程序,可簡化產生大量記錄檔的系統管理作業。記錄輪替功能可自動輪替、壓縮、移除及郵寄記錄檔。
在 Edge for Private Cloud 中,每個apigee元件的一些主要記錄檔會設定預設的輪替機制。舉例來說,在 訊息處理器 元件上,下列檔案會使用 logback 設定預設輪替機制:
/opt/apigee/var/log/edge-message-processor/logs/system.log/opt/apigee/var/log/edge-message-processor/logs/events.log/opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log/opt/apigee/var/log/edge-message-processor/logs/configurations.log/opt/apigee/var/log/edge-message-processor/logs/transactions.log
其他 edge-* 元件也有類似的檔案 (名稱開頭為 edge-),例如 edge-management-server、edge-router、edge-postgres-server 和 edge-qpid-server。
edge-* 元件也會產生額外的記錄檔,這是相應元件控制台的重新導向輸出內容。如果是 Message Processor 元件,這個檔案稱為 /opt/apigee/var/log/edge-message-processor/edge-message-processor.log。其他 edge-* 元件會產生類似的檔案。這些檔案的輪替作業不是由 logback 程式庫完成,而是使用 logrotate 和 crontab。
事前準備
- 如果您不熟悉
logrotate設定,請參閱 logrotate 手冊。 - 如果您不熟悉
crontab設定,請參閱 crontab 手冊。
啟用記錄輪替
本節適用於 Edge for Private Cloud 4.50.00 和 4.51.00 版。
記錄檔輪替機制旨在簡化系統管理作業,因為這類系統會產生大量記錄檔。可自動輪替、壓縮、移除及郵寄記錄檔。
根據預設,每個 apigee 元件上的部分主要記錄檔都會設定預設的輪替機制。舉例來說,在訊息處理器元件上,下列檔案會使用預設輪替機制設定:
/opt/apigee/var/log/edge-message-processor/logs/system.log/opt/apigee/var/log/edge-message-processor/logs/events.log/opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log/opt/apigee/var/log/edge-message-processor/logs/configurations.log/opt/apigee/var/log/edge-message-processor/logs/transactions.log
不過,apigee 元件中的其他記錄檔並未設定預設輪替。
舉例來說,系統預設不會在 apigee 元件的 Message Processor 檔案 edge-message-processor.log 中設定記錄輪替。
您可以使用 logrotate、logback 或 log4j 等不同公用程式/框架啟用記錄輪替功能。本節說明如何使用 logrotate 和 crontab,為 /opt/apigee/var/log/edge-message-processor/edge-message-processor.log 檔案設定記錄檔輪替。
在訊息處理器上啟用 edge-message-processor.log 的記錄輪替功能
本節說明如何為 Edge Message Processor 上的 /opt/apigee/var/log/edge-message-
processor/edge-message-processor.log 記錄檔啟用記錄輪替功能。
下列步驟說明如何為 edge-message-processor.log 檔案啟用記錄輪替:
- 在編輯器中開啟 訊息處理器 電腦上的
/opt/apigee/edge-message-processor/logrotate/logrotate.conf檔案。如果檔案不存在,請建立檔案。 例如:vi /opt/apigee/edge-message-processor/logrotate/logrotate.conf
- 在檔案中新增類似下方的程式碼片段:
/opt/apigee/var/log/edge-message-processor/edge-message-processor.log { missingok copytruncate rotate 5 size 10M compress delaycompress notifempty nocreate sharedscripts }
- 儲存變更。
- 使用下列指令開啟
apigee使用者的crontab:sudo crontab -u apigee -e
- 在
apigee使用者的crontab中新增下列 cron 工作:0 0 * * * nice -n 19 ionice -c3 /usr/sbin/logrotate -s /opt/apigee/var/run/edge-message-processor/logrotate.status -f /opt/apigee/edge-message-processor/logrotate/logrotate.conf
- 儲存
crontab,並在下次執行 Cron 工作時監控記錄輪替作業。
在訊息處理工具上驗證 edge-message-processor.log 的記錄輪替
- 排定的 cron 工作執行完畢後,系統就會輪替記錄檔。從上述範例來看,系統已排定 Cron 工作在每天凌晨 00:00 執行,以輪替
edge-message- processor.log檔案。 -
前往
/opt/apigee/var/log/edge-message-processor/目錄,並確認edge-message-processor.log檔案已旋轉。記錄檔清單範例
ls -ltrh | grep 'edge-message-processor'
-rw-r--r--. 1 apigee apigee 17K Feb 7 00:00 edge-message-processor.log.1.gz -rw-r--r--. 1 apigee apigee 5.3K Feb 7 09:12 edge-message-processor.log
上述輸出內容表示
edge-message-processor.log檔案已輪替,並儲存為 GZ 檔案。 - 如果沒有看到
edge-message-processor.log檔案輪替,請確認您已正確按照「 在訊息處理器上為 edge-message-processor.log 啟用記錄輪替」一文中的所有步驟操作。如果遺漏任何步驟,請再次正確執行所有步驟。 - 如果仍然無法讓記錄輪替正常運作,請與 Apigee Edge 支援團隊聯絡。