零 插件啓動
/usr/local/percona/pmm2/exporters/proxysql_exporter -collect.mysql_connection_list -collect.mysql_connection_pool -collect.mysql_status -web.listen-address=:xx
一 對應採集信息
collect.detailed.stats_mysql_processlist 從stats.stats_mysql_processlist 收集詳細的連接列表。
collect.mysql_connection_list 從 收集 MySQL 連接列表,默認是 true
collect.mysql_connection_pool 從 stats.stats_mysql_connection_pool 收集 MySQL 連接池 ,默認是 true
collect.mysql_status 從 stats.stats_mysql_global 收集 MySQL 狀態,(SHOW MYSQL STATUS) 默認是 true
collect.runtime_mysql_servers 從 runtime_mysql_servers 收集 ,需要管理員認證,默認是 false。
collect.stats_memory_metrics 從 stats_memory_metrics 收集內存監控指標
二 總結
從上面兩個方面我們可以發現查詢的是stats的三張表輸出各項
三 具體表說明
stats.stats_mysql_connection_pool 包含和每個主機組中每個後端節點的連接池使用情況相關的統計數據。
hostgroup - 該後端節點所在的組。注意,一個後端節點可以同時屬於多個組。 srv_host, srv_port - 後端MySQL節點監聽TCP連接的地址和端口。 status - 後端節點的狀態。可能值爲:ONLINE, SHUNNED, OFFLINE_SOFT, OFFLINE_HARD。詳細信息以及各狀態的意義,見mysql_servers表。 ConnUsed - ProxySQL當前使用了多少個連接來發送查詢給該後端節點。 ConnFree - 當前和該後端有多少個空閒連接。這些空閒連接保持打開狀態,以便稍後能儘快且儘量少開銷地發送查詢給該後端節點。 ConnOK - 和該後端已成功建立的連接數量。 ConnERR - 和該後端未成功建立的連接數量。 Queries - 路由到該後端節點的查詢總數。 Bytes_data_sent - 已發送給該後端節點的字節總數。不包括元數據(數據包的包頭)。 Bytes_data_recv - 已發送給該後端節點的字節總數。不包括元數據(數據包的包頭、OK/ERR數據包,數據包的字段描述符等)。 Latency_us - Monitor模塊發起ping檢查時報告的當前ping時間,單位微秒。
stats.stats_mysql_processlist 模仿MySQL命令"SHOW PROCESSLIST"結果的表。該表集合了所有後端的信息。
ThreadID - ProxySQL的內部的線程ID,這些線程ID從0開始遞增。 SessionID - ProxySQL內部的全局會話id,或者說是和前端客戶端建立的連接id。通過這個id可以很輕鬆地區分出每個會話,例如要殺掉某個會話、要監控某個會話。 user - MySQL客戶端連接到ProxySQL使用的user。 db - 當前使用的schema。 cli_host, cli_port - MySQL客戶端和ProxySQL建立的連接所使用的地址和端口(host, port)。(譯註:是客戶端的套接字地址) hostgroup - 當前的主機組。如果是正在執行的查詢,則該主機組是查詢需要路由到的位置(它可能是默認主機組)。默認情況下,路由的目標主機組是依據MySQL客戶端連接ProxySQL時所使用的用戶名決定的(各用戶的默認主機組定義在mysql_users表中,但通過修改查詢規則mysql_query_rules可以基於查詢來決定路由目標) l_srv_host, l_srv_port - 本地ProxySQL端和後端MySQL建立的TCP連接所使用的地址和端口號(host, port)。(譯註:是ProxySQL本地端的套接字地址) srv_host, srv_port - 後端MySQL監聽TCP連接的地址(host, port)。 command - 正在執行的查詢命令類型。 time_ms - 查詢處於當前狀態到目前爲止已經持續了多長時間(單位毫秒)。 info - 實際被執行的查詢語句。
四 具體key
proxysql_up proxysql存活 stats.stats_mysql_global-uptime
proxysql_mysql_status_client_connections_connected 總連接數 stats.stats_mysql_global -Client_Connections_connected(總連接數大於閾值_
proxysql_connection_pool_status 後端MYSQL存活異常情況 stats.stats_mysql_connection_pool->status(上線/離線等情況)
proxysql_connection_pool_conn_err 和後端MYSQL建立異常情況 stats.stats_mysql_connection_pool->conn_error