6.4. Loki のクエリーパフォーマンスの分析
Loki のすべてのクエリーとサブクエリーは、パフォーマンス統計情報を含む metrics.go ログ行を生成します。サブクエリーは querier にログ行を出力します。各クエリーには、query-frontend によって出力される、要約された 1 行の metrics.go が関連付けられています。これらの統計情報を使用して、クエリーのパフォーマンスメトリクスを計算してください。
前提条件
- 管理者権限がある。
- OpenShift Container Platform Web コンソールにアクセスできる。
- Loki Operator をインストールして設定した。
手順
-
OpenShift Container Platform Web コンソールで、Metrics
Observe タブに移動します。 次の値をメモします。
- duration: クエリーの実行にかかった時間を示します。
- queue_time: クエリーが処理される前にキュー内で費やされた時間を示します。
- chunk_refs_fetch_time: インデックスからチャンク情報を取得するのにかかった時間を示します。
- store_chunks_download_time: キャッシュまたはストレージからチャンクを取得するのにかかった時間を示します。
次のパフォーマンスメトリクスを計算します。
クエリー合計時間 (
total_duration):total_duration = duration + queue_time
total_duration = duration + queue_timeCopy to Clipboard Copied! Toggle word wrap Toggle overflow クエリーがキュー内で費やした合計時間の割合 (
Queue Time):Queue Time = queue_time / total_duration * 100
Queue Time = queue_time / total_duration * 100Copy to Clipboard Copied! Toggle word wrap Toggle overflow インデックスからチャンク情報を取得するのにかかった合計時間の割合 (
Chunk Refs Fetch Time) を計算します。Chunk Refs Fetch Time = chunk_refs_fetch_time / total_duration * 100
Chunk Refs Fetch Time = chunk_refs_fetch_time / total_duration * 100Copy to Clipboard Copied! Toggle word wrap Toggle overflow キャッシュまたはストレージからチャンクを取得するのにかかった合計時間の割合を計算します。
Chunks Download Time = store_chunks_download_time / total_duration * 100
Chunks Download Time = store_chunks_download_time / total_duration * 100Copy to Clipboard Copied! Toggle word wrap Toggle overflow クエリーの実行にかかった合計時間の割合を計算します。
Execution Time = (duration - chunk_refs_fetch_time - store_chunks_download_time) / total_duration * 100
Execution Time = (duration - chunk_refs_fetch_time - store_chunks_download_time) / total_duration * 100Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 各メトリクスの理由と、各メトリクスがクエリーのパフォーマンスにどのように影響するかを理解するには、クエリーパフォーマンスの分析 を参照してください。