[groonga-dev,01044] mroonga(groonga)のログレベルをNONEにしてもfilter結果件数がgroonga.logに出力されてしまう

Back to archive index

akiyan.com akiya****@gmail*****
2012年 10月 1日 (月) 11:09:09 JST


初めまして、あきやんと申します。
mroonga 2.0.6をUbuntuやCentOSなど複数の環境で使用しています。

mroongaをラッパーモードで使用していいまして、
mroonga_log_file(groonga.log)に出力される filter(..) のログを止めようとしました。

しかし、mroonga_log_levelをNONEにしても止まらず、ソースコードを追跡したところ
groongaのLAPマクロによってログレベルがNONEでも出力されるようになっていました。

https://github.com/groonga/groonga/blob/master/plugins/suggest/suggest.c
LAP(":", "filter(%d)", grn_table_size(ctx, res));

https://github.com/groonga/groonga/blob/master/lib/ctx.h
#define LAP(prefix,format,...) do {\
  uint64_t et;\
  grn_timeval tv;\
  grn_timeval_now(ctx, &tv);\
  et = (uint64_t)(tv.tv_sec - ctx->impl->tv.tv_sec) * GRN_TIME_NSEC_PER_SEC\
    + (tv.tv_nsec - ctx->impl->tv.tv_nsec);\
  GRN_LOG(ctx, GRN_LOG_NONE, "%p|" prefix "%015" GRN_FMT_INT64U " " format,\
          ctx, et, __VA_ARGS__);\
} while (0)

推測なのですが、LAPマクロは名前の通りタイムラップを測定する意図で使われているようなので、
LAPマクロのログレベルはNONEではなくそこそこ高くても大丈夫なように思うのですが、、、

filter結果はMATCH AGAINSTを使用しただけで出力され、
アクセスが多いとログが膨大になってしまいうので、ログの運用に悩んでいます。

パッチをあててしまえばよいとは思うのですが、
そもそもどうなんだろうと疑問に思いましたので、こちらに投げさせていただきました。

よろしくお願いいたします。

あきやん
akiya****@gmail*****




groonga-dev メーリングリストの案内
Back to archive index