7.6.4 ログファイル監視ジョブの注意事項
ログファイル監視ジョブの注意事項(使用する前に知っておいた方がよいこと)を次に示します。
なお,ログファイル監視ジョブの動作の概要については,「2.4.4(3) ログファイルの更新を契機に処理を実行する(ログファイル監視ジョブ)」を参照してください。
- 注意事項
-
-
ログファイル監視ジョブは,JP1/Baseのログファイルトラップ機能を前提に動作します。
-
ログファイル監視ジョブを実行する前に,JP1/Baseのログファイルトラップ管理サービスとJP1/Baseのイベントサービスを起動しておいてください。
JP1/Baseのログファイルトラップ管理サービスとJP1/Baseのイベントサービスが起動されていない場合,ログファイル監視ジョブは「実行中」状態になりますが,実際には監視されません。実際の監視は,JP1/BaseイベントサービスとJP1/Baseのログファイルトラップ管理サービスが起動されてから開始されます。
JP1/Baseのログファイルトラップ機能の詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。
-
ログファイル監視ジョブの実行中に,JP1/Baseのログファイルトラップ管理サービスまたはJP1/Baseのイベントサービスを停止させたり,JP1/Baseのjevlogstopコマンドを実行してログファイル監視ジョブが起動しているログファイルトラップを終了させたりしないでください。このような操作をした場合は,監視対象のログデータが書き込まれてもイベントを検知しないことがあります。
-
ログファイル監視ジョブの実行時には,JP1/Baseのログファイルトラップ機能を使用するために必要なメモリー,ディスク,およびシステム資源が,ログファイル監視ジョブ単位で必要になります。
JP1/Baseのリソースの見積もりについては,マニュアル「JP1/Base 運用ガイド」を参照してください。
-
ジョブ実行時にマウントされたり,アンマウントされたりする環境にあるログファイルを監視対象にしないでください。このようなファイルを監視対象にした場合,監視処理が正常に動作しなくなったり,ファイルが新規に作成されたと誤認してログファイルを先頭から読み込んでしまったりすることがあります。
-
ログファイルの出力形式で「SEQ2」を選択した場合,ファイル検索間隔の間にファイル名の変更が2回以上行われると取得メッセージが消失してしまうので,ファイル検索間隔の指定には注意してください。
SEQ2で監視中に名称変更したファイルの編集を実施したい場合,新たなファイルが作成されたあと,指定したファイル検索間隔の時間が経過してから行ってください。
図7‒18 「SEQ2」を選択した場合に取得メッセージが消失する例としない例 -
ログファイル監視ジョブは,次に示すログファイルの出力形式を監視できません。
・HTRACE
・SEQ3
・UPD
-
ログファイル監視ジョブで監視するログファイルの文字コードは,JP1/AJS3起動時の文字コードと同じ文字コードにしてください。
-
ファイル出力形式を「SEQ2」と定義しているジョブを,JP1/AJS2 - View 06-00〜06-71の詳細設定で参照した場合,ファイル出力形式には何も表示されません。また,このときに詳細設定画面の[OK]ボタンをクリックすると,「SEQ2」と定義している内容が「SEQ」に上書きされるため注意してください。
-
同じログファイル(syslogを含みます)を参照するログファイル監視ジョブを複数個定義すると,ログファイルアクセス回数が増えて負荷が大きくなります。この場合,JP1/Baseのログファイルトラップ管理サービスを使用して一つのログファイルトラップの動作定義をしておきます。そして,JP1/BaseのJP1イベント変換機能を使用して,ログファイルの更新内容をJP1イベント化し,JP1イベント化したJP1イベントを,JP1イベント受信監視ジョブで監視することを推奨します。
-
Windowsのネットワークドライブで参照できるログファイルや,UNIXのNFSなどのネットワークを介したファイルシステムへのマウントで参照できるログファイルを監視対象にしないでください。これらのファイルを監視対象にした場合,ネットワークの切断によってログファイルを監視できなくなったり,他システムで使用中かどうか判断できないためログファイルを監視できなくなったりします。
-
次に示すファイルを監視対象にしないでください。これらのファイルを監視対象にした場合,監視処理が正常に動作しなくなることがあります。
・スペシャルファイル,デバイスファイル
・ログファイル中の1行の終了文字以外でバイナリーデータを含むレコードがあるファイル
・ファイル名が特定できないファイル
-
スケジューラーログを監視対象にした場合,監視中に「ajsalter -c COPY」を実行すると監視処理が正常に動作しなくなります。
-
ログファイル監視ジョブを開始したときに,監視対象のログファイルが見つけられなかった場合,監視対象のファイルが見つかるまで検索されます。そのため,監視開始から,ログファイルを見つけるまでの間に書き込まれたログデータについては,監視対象から外れている場合があるので注意してください。
-
ログファイル監視ジョブ実行時に,オプション指定によって,ファイルがなかった場合にログファイル監視ジョブを異常終了とすることもできます。この場合は,監視開始時にファイルがないと,検索しないでログファイル監視ジョブを終了します。
-
正規表現で指定する項目で,拡張正規表現を使用したい場合は,JP1/Baseの設定を行ってください。
-
正規表現で指定する項目では,指定した文字列は部分一致で条件一致となります。完全一致させたい場合は,完全名を明示的に指定した正規表現を使用してください。Windowsの正規表現については,マニュアル「JP1/Base 運用ガイド」を参照してください。UNIXの正規表現については,UNIXのドキュメントを参照してください。
JP1/Baseが前提としているLinuxでは,ログファイルトラップ機能で使用する正規表現で日本語は処理できません。そのため,JP1/AJS3のログファイル監視ジョブでも「.」(ピリオド)二つが日本語1文字に一致するなどの動作になります。正規表現については,マニュアル「JP1/Base 運用ガイド」を参照してください。
-
トラップするデータに,OR条件で複数のログデータを指定したログファイル監視ジョブを起動条件で実行した場合で,ログファイルに書き込まれたログデータに,指定した複数のログデータが含まれているとき,一つのログデータに対して複数回,監視条件が成立します。このような場合,一つ目のログデータを指定したあとのログデータでは,指定したいログデータをOR条件で指定し,前に指定したログデータすべてをAND条件とNot条件を組み合わせて指定するようにしてください。
例えば,「Error」「Warning」「Information」「Notice」を監視する場合,次に示すように指定します。
lftpd="Error";
lftpd="Warning":!"Error";
lftpd="Information":!"Error":!"Warning";
lftpd="Notice":!"Error":!"Warning":!"Information";
-
ログファイル名を相対パスで指定した場合,次に示すディレクトリが通常,ログファイルのカレントディレクトリとなります。
Windowsの場合
システムフォルダ\system32
UNIXの場合
jajs_spmdコマンドの実行ディレクトリ
-
Windowsでは,多数のログファイル監視ジョブを同時に実行すると,JP1/Baseのエラーメッセージを出力し,ログファイル監視ジョブが異常終了することがあります。このような場合,マニュアル「JP1/Base 運用ガイド」を参照して,JP1/Baseのエラーメッセージの対処方法に従って対処してください。
-
FQDN形式のイベントサーバ名を持つイベントサーバが稼働するホストでログファイル監視ジョブを実行する場合は,実行エージェントのJP1/AJS3にFQDN形式のイベントサーバ名オプション(環境設定パラメーターEventServerName)を設定し,ログファイル監視ジョブが使用するイベントサーバ名(FQDN形式)を指定してください。設定手順については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 6.3.18 DNSを使ったシステムでのイベントサーバ名の設定」(Windowsの場合),またはマニュアル「JP1/Automatic Job Management System 3 構築ガイド 15.3.17 DNSを使ったシステムでのイベントサーバ名の設定」(UNIXの場合)を参照してください。
-