Tetsuro IKEDA
ikdtt****@gmail*****
2007年 11月 14日 (水) 13:38:10 JST
こんにちは。池田です。 Tritonnでのトラブルシューティング時に活用するために実装しているsenna.logの ログ出力ですが、今のところ以下のような方針で実装していました。 ・全てのSenna API呼出時にDEBUGレベルでのログを出力する。これにより Senna APIの呼出をトレースできるようにする。 実際にsenna.logによるトラブルシューティング作業をしていると、 以下の関数からのSenna API呼出の頻度が高いことから、ログ解析の 作業効率があまりよろしくないことが最近分かりました。 (information by moriさん@Senna開発) 簡単に言うと、1回のクエリ処理であっても、ヒット件数が多いとその分だけ ログがでてしまい、senna.logが読みづらいということです。 そこで、改めてログの出力内容を精査した結果、以下のMySQL側の関数時の DEBUGレベルのログをTRACEレベルに引き下げることにします。 * ft_nlq_read_next * ft_nlq_get_relevance * ft_nlq_find_relevance * ft_boolean_get_relevance * ft_boolean_read_next * ft_boolean_find_relevance 現状だと1回のSELECTで以下に張りつけた分だけのログがDEBUGレベルで 出力されるのですが、上記関数でのログをTRACEレベルに下げることで、 5行くらい出してお終い、というようになる予定です。 何かご意見等ありましたらお寄せください。 11/14:13:15:07.667653|i|2| ft_init_nlq_search => sen_index_sel index=0xe72950, string='大阪', string_len=6 11/14:13:15:07.667687|i|2| sen_index_sel > (大阪) 11/14:13:15:07.667710|i|2| n=1 (大阪) 11/14:13:15:07.667723|i|2| exact: 11 11/14:13:15:07.667730|i|2| hits=11 11/14:13:15:07.667754|d|2| ft_nlq_reinit_search => sen_records_rewind: r=0xe6f5d0 11/14:13:15:07.667787|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667797|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667805|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667816|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667824|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667831|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667838|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667845|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667852|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667859|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667865|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667872|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667879|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667886|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667892|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667899|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667906|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667913|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667920|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667927|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667934|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667940|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667947|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667954|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.667961|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.667973|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.667980|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668007|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668015|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.668022|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.668033|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668040|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668047|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.668054|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.668061|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668068|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668076|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.668083|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.668089|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668096|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668103|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.668110|d|2| ft_nlq_read_next => 2ind return 0 11/14:13:15:07.668116|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668123|d|2| ft_nlq_get_relevance => sen_records_curr_score: r=0xe6f5d0 11/14:13:15:07.668130|d|2| ft_nlq_read_next => sen_records_next in while loop 11/14:13:15:07.668175|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668208|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668224|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668239|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668254|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668269|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668284|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668298|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668313|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668328|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668343|d|2| ft_nlq_find_relevance => sen_records_find: records=0xe6f5d0, key=0x44686310 11/14:13:15:07.668565|d|2| ft_nlq_close_search => sen_records_close: records=0xe6f5d0