LoginSignup
2

More than 5 years have passed since last update.

クラスタ全体に渡ってログを検索する

Posted at

Cloudera Manager Advent Calendar 2015の7日目です。

意外と知られていない(気がする)機能のひとつに、ログ検索があります。これは、Cloudera Manager(以下CM)で管理しているすべてのノードのすべてのプロセスに対して横断的に検索を実行できる優れものですので、本ポストで紹介したいと思います。

参考ドキュメント: Logs
http://www.cloudera.com/content/www/en-us/documentation/enterprise/latest/topics/cm_dg_logs.html

どんなときに横断的に検索したいか

クラスタのトラブルシューティングをしていると、あるブロックが「いつ」、「どのファイル」に紐付いて作成され、「どのデータノード」に」いつ」複製されたのか、を追いかけたいことがままあります。あるいは、「ジョブが遅く感じる」といった場合に、何か手がかりとなるエラーが発生していないかを探りたいこともあるでしょう。CMの横断検索はそのような用途にぴったりです。

ログ検索

CMのログ検索は簡単です。まず「診断」から「ログ」を選択します。

alt

すると検索画面が表示されます。検索条件として「対象のプロセス」、「対象のホスト」、「ログレベル」、「検索文字列」、「検索範囲(時間)」を指定できます。

alt

alt

また、「ページごとの結果」や「タイムアウト」も必要に応じて設定可能です。

alt

検索後は、統計情報も確認することができます。

alt

ここでは「直近30分以内」のログレベル「ERROR」以上のメッセージに限って検索してみましょう。

alt

ERRORレベル以上の結果が表示されました。結果に表示される「ログファイルの表示」をクリックすると、新しいタブでログファイル全体を開いてくれます。このとき該当箇所がハイライトされていることがわかります。また「ログのダウンロードリンク」からローカルにダウンロードして調査を進めることも可能でしょう。

alt

最後に

以上、ログの横断検索機能を簡単に紹介しました。検索結果は時系列に表示されるので、任意のブロックIDやファイル名でプロセス間を横断的に検索することで動向を追うことができます。CMのログ検索機能を使うことで、クラスタの問題を特定するまでの時間を大幅に短縮できるでしょう。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2