Controlling logging#
フェールオーバーマネージャーは、エージェントごとに1つのログファイルを/var/log/efm-<version>/
に書き込み、保存します。
The cluster properties file のjgroups.loglevel 、efm.loglevel
、およびjdbc.loglevel
パラメーターを変更することにより、エージェントログに書き込まれる詳細レベルを制御できます。
# Logging levels for JGroups and EFM.
# Valid values are: TRACE, DEBUG, INFO, WARN, ERROR
# Default value: INFO
# It is not necessary to increase these values unless debugging a specific
# issue. If nodes are not discovering each other at startup, increasing
# the jgroups level to DEBUG will show information about the TCP connection
# attempts that may help diagnose the connection failures.
# If there are issues with creating database connections, increasing
# the jdbc.loglevel level will show more information.
# TRACE level logging should be used for diagnosing problems only.
# It is not supported for production use.
jgroups.loglevel=INFO
efm.loglevel=INFO
jdbc.loglevel=INFO
ロギング機能は、Javaロギングライブラリとロギングレベルを使用します。ログレベルは、ログ出力の多い順に次のとおりです。
TRACEDEBUGINFOWARNERROR
たとえば、 efm.loglevel パラメーターをWARN
に設定すると、フェールオーバーマネージャーはWARN
レベル以上、つまりWARN およびERROR
のメッセージのみをログに記録します。
!!!重要 TRACEレベルのログは、特定の問題を診断する場合にのみ使用してください。これにより、Failover Managerエージェントの作業が増加し、このレベルのロギングでの動作は定義されていません。実稼働使用はサポートされていません。
デフォルトでは、フェールオーバーマネージャーログファイルは毎日ローテーション、圧縮され、1週間保存されます。ログローテーションファイル
/etc/logrotate.d/efm-5.<x>
の設定を変更することにより、ファイルローテーションスケジュールを変更できます。ログローテーションスケジュールの変更の詳細については、logrotateのマニュアルページを参照してください。
$ man logrotate
syslogログファイルエントリの有効化#
フェールオーバーマネージャーは、syslogロギングをサポートしています。 syslogロギングを実装するには、syslogを設定してUDPまたはTCP接続を許可する必要があります。
syslogへの接続を許可するには、 /etc/rsyslog.conf
ファイルを編集し、使用するプロトコルのコメントを外します。また、プロトコルに関連付けられているUDPServerRun
またはTCPServerRun
エントリに、ログエントリの送信先のポート番号が含まれていることを確認します。たとえば、次の構成ファイルエントリは、ポート514へのUDP接続を有効にします。
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
次の構成ファイルエントリは、ポート514へのTCP接続を有効にします。
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
syslog構成ファイルを変更した後、rsyslog
サービスをリスタートして接続を有効にします。
systemctl restart rsyslog.service
フェールオーバーマネージャーホストでrsyslog.conf
ファイルを変更した後、フェールオーバーマネージャープロパティを変更してロギングを有効にします。
modify the properties file /etc/edb/efm-5.<x>/efm.properties.in
のエディターの選択を使用し、実装するロギングのタイプを指定します。
# Which logging is enabled.
file.log.enabled=true
syslog.enabled=false
システムの specify syslog details も必要です。 syslog.protocol
パラメーターを使用してプロトコルタイプUDPまたはTCPを指定し、
syslog.port
パラメーターを使用してsyslogホストのリスナーポートを指定します。
syslog.facility
値は、エントリーを作成したプロセスの識別子として使用できます。
LOCAL0 からLOCAL7 までの値を使用します。
# Syslog information. The syslog service must be listening # on the
port for the given protocol, which can be UDP or
# TCP. The facilities supported are LOCAL0 through LOCAL7.
# syslog.host=localhost
syslog.port=514
syslog.protocol=UDP
syslog.facility=LOCAL1
syslogの詳細については、syslogのマニュアルページを参照してください。
man syslog