コンテンツにスキップ

Trino

Trino のメトリクス情報を収集します。

インストールと設定

Trino は Java で書かれたアプリケーションで、JMX からメトリクス情報を取得できます。

JMX Exporter は、Java アプリケーションの JMX(Java Management Extensions)メトリクスを Prometheus 形式のメトリクスデータとしてエクスポートするためのオープンソースツールです。

JMX Exporter を使って Trino のメトリクス情報を取得し、DataKit の prom コレクタを有効にして JMX メトリクス情報を収集します。

JMX Exporter をダウンロード

ダウンロード先 https://github.com/prometheus/jmx_exporter/releases

Coordinator ノード

coordinatorTrino の Server タイプのひとつで、文の解析、クエリプラン、worker の管理を担当します。

  • jmx_config.yaml を作成する
rules:
- pattern: ".*"
  • 起動コマンドを調整する
...
-javaagent:/opt/apache/trino/lib/jmx_prometheus_javaagent-0.19.0.jar=3900:/opt/apache/trino/etc/jmx_config.yaml \
-Dnode.environment=test \
-Dnode.id=trino-coordinator \
...

ここでの 3900 は外部公開するポートです。起動後、http://localhost:3900 からメトリクス情報を取得できます。

DataKit コレクタ設定

Trino は JMX Exporter によって metrics の URL を直接公開できるため、prom コレクタでそのまま収集できます。

以下を実行します。

cd datakit/conf.d/samples
cp prom.conf.sample trino.conf

trino.conf を次のように調整します。

  urls = ["http://localhost:3900"]

  source = "trino"

  [inputs.prom.tags]
    component="trino"
  interval = "10s"

その他の設定は必要に応じて調整してください

、パラメータの説明は次のとおりです。

  • urls:prometheus メトリクスのアドレス。ここには対応コンポーネントが公開するメトリクス URL を指定します
  • source:コレクタの別名。識別しやすいように設定することを推奨します
  • interval:収集間隔

DataKit を再起動

DataKit を再起動

メトリクス

メトリクスセット Trino

メトリクス 説明
memory_ClusterMemoryPool_Nodes クラスタノード数
memory_ClusterMemoryPool_BlockedNodes メモリクラスタのメモリプールでブロックされたノード数
memory_ClusterMemoryPool_FreeDistributedBytes クラスタメモリプール内の未割り当ての空きメモリ
memory_ClusterMemoryPool_TotalDistributedBytes クラスタメモリ内の総メモリ
memory_ClusterMemoryPool_ReservedDistributedBytes クラスタメモリプール内の未割り当ての空きメモリ
memory_ClusterMemoryManager_ClusterMemoryBytes クラスタメモリサイズ
memory_ClusterMemoryManager_QueriesKilledDueToOutOfMemory OOM により終了したクエリの総数
execution_QueryManager_RunningQueries 現在実行中のクエリ数
execution_QueryManager_QueuedQueries 実行待ちのクエリ数
execution_QueryManager_SubmittedQueries_OneMinute_Count 1 分あたりに送信されたクエリ数
execution_QueryManager_CompletedQueries_OneMinute_Count 1 分あたりの完了クエリ数
execution_QueryManager_CompletedQueries_TotalCount クエリ完了総数
execution_QueryManager_FailedQueries_OneMinute_Count 1 分あたりの失敗クエリ数
execution_QueryManager_FailedQueries_FiveMinute_Count 5 分あたりの失敗クエリ数
execution_QueryManager_UserErrorFailures_OneMinute_Count 1 分あたりの例外による失敗クエリ数
execution_QueryManager_UserErrorFailures_FiveMinute_Count 5 分あたりの例外による失敗クエリ数
execution_QueryManager_UserErrorFailures_TotalCount 例外による失敗クエリ総数
execution_QueryManager_InternalFailures_OneMinute_Count 1 分あたりの内部例外による失敗クエリ数
execution_QueryManager_InternalFailures_FiveMinute_Count 5 分あたりの内部例外による失敗クエリ数
execution_QueryManager_InternalFailures_TotalCount 内部例外による失敗クエリ総数
execution_SqlTaskManager_InputDataSize_OneMinute_Count 1 分あたりの Task 入力データ量
execution_SqlTaskManager_InputDataSize_FiveMinute_Count 5 分あたりの Task 入力データ量
execution_SqlTaskManager_InputDataSize_TotalCount Task 入力データ量
execution_SqlTaskManager_InputPositions_OneMinute_Count 1 分あたりの Task 入力データ行数
execution_SqlTaskManager_InputPositions_FiveMinute_Count 5 分あたりの Task 入力データ行数
execution_SqlTaskManager_InputPositions_TotalCount Task 入力データ行総数
execution_SqlTaskManager_OutputDataSize_OneMinute_Count 1 分あたりの Task 出力データ量
execution_SqlTaskManager_OutputDataSize_FiveMinute_Count 5 分あたりの Task 出力データ量
execution_SqlTaskManager_OutputDataSize_TotalCount Task 出力データ量
execution_SqlTaskManager_OutputPositions_OneMinute_Count 1 分あたりの Task 出力データ行数
execution_SqlTaskManager_OutputPositions_FiveMinute_Count 5 分あたりの Task 出力データ行数
execution_SqlTaskManager_OutputPositions_TotalCount Task 出力データ行総数
execution_SqlTaskManager_FailedTasks_OneMinute_Count 1 分あたりの失敗 Task 数
execution_SqlTaskManager_FailedTasks_FiveMinute_Count 5 分あたりの失敗 Task 数
execution_SqlTaskManager_FailedTasks_TotalCount Task 出力データ行総数
execution_executor_TaskExecutor_Tasks タスク実行器に登録された全タスク数
execution_executor_TaskExecutor_TotalSplits タスク実行器の総 splits 数
execution_executor_TaskExecutor_RunningSplits タスク実行器で実行中の splits 数
execution_executor_TaskExecutor_WaitingSplits タスク実行器上で待機中の splits 数
memory_ClusterMemoryManager_TotalAvailableProcessors クラスタ CPU 数

Java メトリクスセット

メトリクス 説明
lang_Runtime_Uptime 稼働時間
lang_G1_Concurrent_GC_CollectionCount GC 回数
lang_Memory_HeapMemoryUsage_used ヒープ使用済みメモリ
lang_Memory_HeapMemoryUsage_init ヒープ初期メモリ
lang_Memory_HeapMemoryUsage_max ヒープ最大メモリ
lang_Memory_HeapMemoryUsage_committed ヒープ確保済みメモリ
lang_Memory_NonHeapMemoryUsage_used 非ヒープ使用済みメモリ
lang_Memory_NonHeapMemoryUsage_init 非ヒープ初期メモリ
lang_Memory_NonHeapMemoryUsage_max 非ヒープ最大メモリ
lang_Memory_NonHeapMemoryUsage_committed 非ヒープ確保済みメモリ

フィードバック

このページは役に立ちましたか?