edge-router.log のログ ローテーションを有効にする

現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください
情報

ログ ローテーションは、大量のログファイルを生成するシステムの管理を容易にするためのメカニズムです。ログファイルを自動的にローテーション、圧縮、削除、郵送できます。

Edge for Private Cloud では、各 Apigee コンポーネント上の主なログファイルの一部が、デフォルトのローテーション メカニズムを使用して構成されています。

たとえば、Router コンポーネントでは、次のファイルがデフォルトのローテーション メカニズムで構成されています。

  • /opt/apigee/var/log/edge-router/logs/system.log
  • /opt/apigee/var/log/edge-router/logs/events.log
  • /opt/apigee/var/log/edge-router/logs/startupruntimeerrors.log
  • /opt/apigee/var/log/edge-router/logs/configurations.log
  • /opt/apigee/var/log/edge-router/logs/transactions.log

ただし、Apigee コンポーネントに、デフォルトのローテーションでは構成されていない特定のログファイルがあります。Apigee コンポーネントでは、Router edge-router.log ファイルは、ログ ローテーションがデフォルトで構成されていないファイルの一つです。

ログ ローテーションは、logrotatelogbacklog4j などのさまざまなユーティリティ/フレームワークを使用して有効にできます。このドキュメントでは、logrotatecrontab を使用して /opt/apigee/var/log/edge-router/edge-router.log ファイルのログ ローテーションを構成する方法について説明します。

始める前に

Router で edge-router.log のログ ローテーションを有効にする

このセクションでは、Edge Router で /opt/apigee/var/log/edge-router/edge-router.log ログのログ ローテーションを有効にする方法について説明します。

edge-router.log ファイルのログ ローテーションを有効にする手順は次のとおりです。

  1. Router マシンの /opt/apigee/edge-router/logrotate/logrotate.conf ファイルをエディタで開きます。ファイルが存在しない場合は作成します。例:

    vi /opt/apigee/edge-router/logrotate/logrotate.conf
    
  2. 次のようなスニペットをファイルに追加します。
    /opt/apigee/var/log/edge-router/edge-router.log {
        missingok
        copytruncate
        rotate 5
        size 10M
        compress
        delaycompress
        notifempty
        nocreate
        sharedscripts
        }
    
  3. 変更を保存します。
  4. 次のコマンドを使用して Apigee ユーザーの crontab を開きます。
    sudo crontab -u apigee -e
    
  5. 次の cron ジョブを Apigee ユーザーの crontab に追加します。
    0 0 * * * nice -n 19 ionice -c3 /usr/sbin/logrotate -f /opt/apigee/edge-router/logrotate/logrotate.conf
    
  6. crontab を保存して、次回の cron ジョブの実行時にログ ローテーションをモニタリングします。

Router での edge-router.log のログ ローテーションの確認

  1. スケジュールされた cron ジョブが実行されると、ログファイルがローテーションされます。上記の例では、edge-router.log ファイルをローテーションするために、cron ジョブが毎日午前 00 時に実行されるようにスケジュールされます。
  2. /opt/apigee/var/log/edge-router/ ディレクトリに移動し、edge-router.log ファイルがローテーションされていることを確認します。

    ログファイルのリストの例:

    ls -ltrh | grep 'edge-router'
    
    -rw-r--r--. 1 apigee apigee 6.0K Feb 16 00:00 edge-router.log.1.gz
    -rw-r--r--. 1 apigee apigee 3.0K Feb 16 01:23 edge-router.log
    

    上記の出力は、edge-router.log ファイルが回転し、GZ ファイルとして保存されていることを示しています。

  3. edge-router.log ファイルがローテーションされていない場合は、 Router 上の edge-router.log のログ ローテーションの有効化に記載されているすべての手順が正しく行われていることを確認します。失敗した手順がある場合は、すべての手順を正しくやり直してください。
  4. それでもログ ローテーションが動作しない場合は、Apigee Edge サポートにお問い合わせください。