現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください。 情報
ログ ローテーション(複数のログファイルを使用または使用したものをローテーションするプロセス)によって、大量のログファイルが生成されるシステムの管理が簡素化されます。ログ ローテーションにより、ログファイルの自動ローテーション、圧縮、削除、メール送信が可能になります。
Edge for Private Cloud では、各 apigee
コンポーネント上の一部のメインのログファイルが、デフォルトのローテーション メカニズムを使用して構成されています。たとえば、Message Processor コンポーネントでは、次のファイルが 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-management-server
、edge-router
、edge-postgres-server
、edge-qpid-server
など、他の edge-*
コンポーネント(名前が edge-
で始まるもの)にも同様のファイルが存在します。
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
コンポーネントのメイン ログファイルの一部は、デフォルトのローテーション メカニズムで構成されています。たとえば、Message Processor コンポーネントでは、次のファイルがデフォルトのローテーション メカニズムで構成されています。
/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
ファイルのログ ローテーションを構成する方法について説明します。
Message Processor で edge-message-processor.log のログ ローテーションを有効にする
このセクションでは、Edge Message Processor で /opt/apigee/var/log/edge-message-
processor/edge-message-processor.log
ログのログ ローテーションを有効にする方法について説明します。
edge-message-processor.log
ファイルのログ ローテーションを有効にする手順は次のとおりです。
- Message Processor マシンの
/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
- 次の cron ジョブを
apigee
ユーザーのcrontab
に追加します。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 ジョブの実行時にログ ローテーションをモニタリングします。
Message Processor で edge-message-processor.log のログ ローテーションを確認する
- スケジュールされた cron ジョブが実行されると、ログファイルがローテーションされます。上記の例では、
edge-message- processor.log
ファイルをローテーションするために、cron ジョブが毎日午前 00 時に実行されるようにスケジュールされます。 -
/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
ファイルがローテーションされていない場合は、 Message Processor で edge-message-processor.log のログ ローテーションを有効にするで説明されているすべての手順が正しく行われていることを確認します。ステップを見逃した場合は、すべてのステップを正しく繰り返します。- それでもログ ローテーションが機能しない場合は、Apigee Edge サポートにお問い合わせください。