Cloudera Manager + fluentd webhdfsのイベントで報告されるFileNotFoundExceptionを除外する

hadoop
https://pixabay.com/images/id-1822636/
この記事は約2分で読めます。

Cloudera Manager Standard(以下CM)で環境構築中。 

CMでは,CMの管理画面上で各種サービスの設定を管理できるようになっているが,主要な設定以外の任意の設定を追加したい場合,安全バルブというフックを利用することで可能となっている。fluentd + webhdfsでHDFSへファイルを書き込む場合,2回のHTTPリクエストが発生する。1回目のHTTPリクエストでは,新規ファイル作成の場合は以下のようなFileNotFoundExceptionが表示されるが,これは仕様どおりで実質無害なExceptionなので除外したい。

初め,NameNodeの安全バルブでappenderのRFAにorg.apache.log4j.varia.StringMatchFilterの設定を加えたが,変わらずCM管理画面上のイベントには,FileNotFoundExceptionが報告されてしまう。ということで,どうもEventServerは上記とは別にログイベントを受け取っているようだ。EventServer,NameNodeのlog4j.propertiesを見ると,以下のような定義が見られる。

ということで,RFAとは別にログイベントを転送しているであろうこのappenderにfilter設定を追加すれば上手くいきそうである。properties形式で以下のように安全バルブに設定を加える。

これで今のところイベントにあがってきていないので上手くいったようだ。NameNodeのログもフィルタリングする場合は,RFAにも設定を加える。

参考

コメント

タイトルとURLをコピーしました