您可以通過JMX連接器查詢Trino叢集中所有節點的JMX資訊。通過修改本連接器的配置,可以實現JMX資訊定期轉儲的功能。本連接器通常用於系統監控和調試。
前提條件
已建立DataLake叢集、Custom叢集或Hadoop叢集,並選擇了Trino服務,詳情請參見建立叢集。
配置連接器
進入EMR控制台的Trino服務的配置頁面,在服務配置地區,單擊jmx.properties頁簽,修改或新增以下參數,參數值請根據您實際情況修改。
參數 | 描述 |
connector.name | Connector的名稱。預設值為jmx。 |
jmx.dump-tables | 是用逗號隔開的MBean(Managed Beans)列表。該配置項指定了每個採樣周期哪些MBean指標會被採樣並儲存到記憶體中。 如果指標項的名稱中包含逗號,則需要使用
|
jmx.dump-period | 設定採樣周期,預設為10s。 |
jmx.max-entries | 設定記錄的最大長度,預設為86400條。 |
資料表
JMX連接器提供了如下兩個Schemas:
current
:包含了Trino叢集中每個節點當前的MBean。MBean的名稱即為current
中的表名,如果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)