すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:JMXコネクタ

最終更新日:Jan 11, 2025

JMXコネクタを使用すると、Trinoクラスター内のすべてのノードのJMX情報を照会できます。コネクタ構成を変更して、JMX情報の定期的なダンプを実行できます。 JMXコネクタは、通常、システムの監視とデバッグに使用されます。

前提条件

DataLakeクラスターまたはHadoopクラスターが作成され、Prestoサービスが選択されています。 詳細については、「クラスターの作成」をご参照ください。

JMXコネクタの構成

E-MapReduce(EMR)コンソールにログインし、Trinoサービスページの[構成] タブに移動します。 [構成] タブで、[jmx.properties] をクリックし、ビジネス要件に基づいて次の構成項目を変更または追加します。

構成項目

説明

connector.name

コネクタの名前。 デフォルト値:jmx。

jmx.dump-tables

コンマ(,)で区切られたマネージドBean(MBean)。 この構成項目は、各サンプリング期間中にサンプリングされ、メモリに格納されるMBeanを指定します。

メトリックの名前にコンマ(,)が含まれている場合は、\\, を使用してコンマをエスケープする必要があります。 例:

jmx.dump-tables=io.trino.memory:type=memorypool\\,name=general,\
   io.trino.memory:type=memorypool\\,name=system,\
   io.trino.memory:type=memorypool\\,name=reserved      

jmx.dump-period

サンプリング期間。 デフォルト値:10。 単位:秒。

jmx.max-entries

履歴レコードの最大数。 デフォルト値:86400。

テーブル

JMXコネクタは、次の2つのスキーマを提供します。

  • current: Trinoクラスター内の各ノードのMBeanが含まれています。 MBeanの名前は、current スキーマのテーブルの名前です。 MBeanの名前に標準以外の文字が含まれている場合は、クエリステートメントで名前を二重引用符(")で囲む必要があります。 サンプルコード:

    • プロジェクト内の使用可能なすべてのMBeanを一覧表示するには、次のステートメントを実行します。

      SHOW TABLES FROM jmx.current;        
    • 各ノードのJVM情報を取得するには、次のステートメントを実行します。

      SELECT node, vmname, vmversion
      FROM jmx.current."java.lang:type=runtime";   

      次の出力が返されます。

            node    |              vmname               | vmversion
      --------------+-----------------------------------+-----------
       ddc4df17-xxx | Java HotSpot(TM) 64-Bit Server VM | 24.60-b09
      (1 row)   
    • 各ノードのファイル記述子の最大数と最小数を示すメトリックを取得するには、次のステートメントを実行します。

      SELECT openfiledescriptorcount, maxfiledescriptorcount
      FROM jmx.current."java.lang:type=operatingsystem";

      次の出力が返されます。

      openfiledescriptorcount | maxfiledescriptorcount
      -------------------------+------------------------
                           329 |                  10240
      (1 row)          
  • history: 構成ファイルでダンプされるメトリックに対応するテーブルが含まれています。 次のステートメントを実行してクエリを実行できます。

    SELECT "timestamp", "uptime" FROM jmx.history."java.lang:type=runtime";

    次の出力が返されます。

            timestamp        | uptime
    -------------------------+--------
     2016-01-28 10:18:50.000 |  11420
     2016-01-28 10:19:00.000 |  21422
     2016-01-28 10:19:10.000 |  31412
    (3 rows)