検索とインデックスはElasticsearchでの2つの主要なリクエストタイプであり、Elasticsearchスローログを有効にすることで、問題あるインデックスの特定に役立てられます。Site24x7アプリケーションログを使用して、Elasticsearchインデックスにスロークエリしきい値を設定し、スローな検索とインデックスログを監視します。ダッシュボードで、クエリについての情報を表示します。
Elasticsearchでスローログは、デフォルトで無効化されています。ロギングを有効化にするには、Elasticsearchインデックスの設定APIを設定して、スロー検索またはインデックスログのしきい値を設定します。定義できるしきい値は3種類あります。
スロー検索ログのロギングの有効化方法:
検索プロセスにはクエリと取得の2つの段階があり、この両実行段階に対してしきい値を設定できます。
スローインデックスログのロギングの有効化方法:
上記クエリで、Elasticsearch_domain (例:localhost:9200)とIndexが入力されていることを確認してください。すべてのインデックスを有効化したい場合、インデックスで、*または_allを指定します。しきい値設定を0msとすると、すべてのログを記録し、それがパフォーマンス結果に影響します。設定したしきい値制限に基づいて、しきい値を超過した検索とインデックスログが記録されるようになります。
ログパターン
上記はSite24x7で定義されているデフォルトのパターンであり、次のサンプルのようにElasticsearchスローログが解析されます。
サンプルログ
インデックスおよび検索(取得とクエリ段階)スローログのサンプルログは次のとおりです。
[2022-09-18T01:28:13,358][WARN ][index.indexing.slowlog.index.Y37CmUvQSi2jgtzN_-6K1A] [esd6C] [10772528_2000326507563_2000550180009_16_202/Y37CmUvQSi2jgtzN_-6K1A] took[1.5ms], took_millis[1], type[-1], id[Jcvyl4ABjtHtfc2jfkMH], routing[0], source[{"2002351591637":"367550","2002681248211":563,"2002351591639":215,"_zl_secs_to_millis":197]
[2022-09-18T00:57:14,861][WARN ][index.search.slowlog.fetch.tWO5cHxMRrGW3VuwRhIwYQ] [esd2C] [10772528_-1_-1_21_864][3] took[85.3micros], took_millis[0], total_hits[3456], types[some_type], stats[], search_type[QUERY_THEN_FETCH], total_shards[195], source[{"query":{"query_string":{"query":"*"}},"from":0,"size":"24","sort":{"updated_at":"desc"}}], extra_source[],
[2022-09-18T02:19:14,861][WARN ][index.search.slowlog.query.tWO5cHxMRrGW3VuwRhIwYQ] [esd2C] [10772528_-1_-1_21_864][0] took[25.3s], took_millis[2366], total_hits[3456], types[], stats[], search_type[QUERY_THEN_FETCH], total_shards[123], source[{"query":{"query_string":{"query":"*"}},"from":0,"size":"24","sort":{"updated_at":"desc"}}], id[],
上記サンプルログは項目ごとに分けられて、それぞれの値が取得され、Site24x7にアップロードされます。
項目名 | 項目値 |
DateTime | 2022-09-18T02:19:14,861 |
LogLevel | WARN |
Type | search |
Phase | query |
NodeId | tWO5cHxMRrGW3VuwRhIwYQ |
NodeName | esd2C |
Index | 10772528_-1_-1_21_864 |
Shard | 0 |
TimeTaken (ms) |
2366 |
TotalHits | 3456 |
Types | |
Stats | |
SearchType | QUERY_THEN_FETCH |
TotalShared | 123 |
Message | {"query":{"query_string":{"query":"*"}},"from":0,"size":"24","sort":{"updated_at":"desc"}}], id[], |
アプリケーションログでは、ログタイプごとにダッシュボードが作成され、デフォルトで複数のウィジェットが表示されます。Elasticsearchスローログダッシュボードで表示されるウィジェットは次のとおりです。