17.17 recreatelogdb(サイトサーバ上での操作ログのインデックス情報の再作成)
サイトサーバに格納されている操作ログを参照するためのインデックス情報を再作成するrecreatelogdbコマンドについて説明します。
機能
サイトサーバに保管されている操作ログを参照するためのインデックス情報を再作成します。また、サイトサーバで管理しているエージェントの操作ログ一覧を、管理用サーバに通知します。
インデックス情報は、各サイトサーバで生成され、管理用サーバに通知されます。操作画面から分散操作ログを参照する場合、インデックス情報を基に操作ログを検索して、サイトサーバ上の操作ログを参照します。
このため、操作ログのデータを手動で追加または削除してサイトサーバ上の操作ログのデータとインデックス情報が不一致になったり、障害によってインデックス情報が破損したりしたときは、サイトサーバに格納されている操作ログを正しく参照できなくなります。このようなときに、recreatelogdbコマンドを実行してください。操作ログのインデックス情報を再作成することで、サイトサーバに格納されている操作ログを正しく参照できるようになります。
例えば、次のような場合にrecreatelogdbコマンドを実行します。
-
サイトサーバで、操作ログの保管先フォルダ内のデータを削除した場合
-
サイトサーバで、バックアップした操作ログを取り込んだ(追加した)場合
-
ほかのサイトサーバから操作ログのデータをコピーまたは移動してきた場合
-
サイトサーバで操作ログのデータベースが壊れた場合
-
管理用サーバのデータベースが壊れた場合
なお、このコマンドはサイトサーバ上で実行してください。
形式
recreatelogdb{△-all|△-add|△-node}
引数
- -all
-
サイトサーバに格納されている操作ログのインデックス情報を再作成します。インデックス情報は、コマンド完了後にサイトサーバを開始したタイミングで再作成されます。操作ログのデータを移動した、サイトサーバのデータベースが破損したなど、インデックス情報を再作成する必要がある場合に指定してください。
この引数を指定する場合、サイトサーバが開始している状態でコマンドを実行すると、コマンド実行中はサイトサーバを停止し、コマンドの終了時に自動的に開始します。また、サイトサーバが停止している状態でコマンドを実行すると、コマンド終了後もサイトサーバは停止したままです。
- -add
-
追加された操作ログのインデックス情報を作成します。インデックス情報は、コマンド完了後にサイトサーバを開始したタイミングで作成されます。サイトサーバに操作ログのデータが追加された場合に指定してください。例えば、ほかのサイトサーバから操作ログのデータを移動してきたときに指定します。
この引数を指定する場合、サイトサーバが開始している状態でコマンドを実行すると、コマンド実行中はサイトサーバを停止し、コマンドの終了時に自動的に開始します。また、サイトサーバが停止している状態でコマンドを実行すると、コマンド終了後もサイトサーバは停止したままです。
- -node
-
サイトサーバで管理しているエージェントの操作ログ一覧を、管理用サーバに通知します。再作成は実行されません。次の場合に指定してください。
-
サイトサーバのデータベースは問題ないが、管理用サーバのデータベースが壊れて正しく操作ログを検索できない場合
-
サイトサーバの接続先を、別のシステムの管理用サーバに変更した場合
-
管理用サーバでデータベースの再構築を実施updatesupportinfoした場合
-
格納先
サイトサーバのインストール先フォルダ¥mgr¥bin¥
注意事項
-
引数「-node」以外を指定した場合、recreatelogdbコマンドの実行中はサイトサーバが停止するため、その間に発生した操作ログは、コマンド実行が完了するまで確認できません。recreatelogdbコマンド完了後、サイトサーバを開始したタイミングで、操作ログのインデックス情報の作成を開始します。インデックス情報の作成中はサイトサーバの負荷が高くなるため、操作ログのデータ量によっては、作成が完了するまでに数日掛かることがあります。また、インデックス情報の作成中に発生した操作ログは、インデックス情報の作成が完了するまで確認できません。これらの事項の影響を考慮してrecreatelogdbコマンドを実行してください。
-
deletelogコマンド実行時の作業用フォルダに、実行状況の記録ファイル(deletelog_lasttime.txt)が存在している場合、recreatelogdbコマンドはエラーになります。このようなときは、deletelogコマンドを再実行して操作ログの削除が完了したあとで、recreatelogdbコマンドを実行してください。
-
操作ログのデータフォルダに操作ログを移動したあとに、引数「-all」または「-add」を指定して操作ログのインデックス情報を再作成する場合は、再作成後に、引数「-node」を指定してrecreatelogdbコマンドを再実行し、エージェントの操作ログ一覧を管理用サーバに通知してください。通知しないと、操作ログを正しく検索できないおそれがあります。
-
このコマンドは、サイトサーバのセットアップが完了している状態で実行してください。
-
このコマンドは、同時に複数実行できません。
戻り値
recreatelogdbコマンドの戻り値を次の表に示します。
戻り値 |
説明 |
---|---|
0 |
コマンドが正常に終了しました。 |
1 |
コマンド実行中に警告が発生し、コマンドが終了しました。 |
11 |
コマンドの引数の指定形式に誤りがあります。 |
31 |
ほかのコマンドを実行中です。 |
51 |
コマンドの実行権限がありません。 |
54 |
サイトサーバがセットアップされていません。 |
58 |
管理用サーバへの接続に失敗しました。 |
62 |
ファイルのアクセスエラーです。 |
67 |
deletelogコマンドの実行状況の記録ファイルが存在しています。 |
101 |
メモリ不足、またはそのほかの要因でコマンド実行に失敗しました。 |
102 |
サイトサーバの自動停止に失敗しました。 |
120 |
データベースのアクセスエラーです。 |
使用例
サイトサーバの操作ログのデータベースが壊れた場合に、操作ログのインデックス情報を再作成する場合のコマンドの使用例を次に示します。
recreatelogdb -all
関連リンク