簡單記錄下,使用Prometheus
對Canal
進行監控。node
vim /Users/huan/soft/prometheus/prometheus-2.25.0/prometheus.ymlgit
scrape_configs: - job_name: 'canal' scrape_interval: 30s static_configs: - targets: ['localhost:11112'] # 端口配置即爲canal.properties中的canal.metrics.pull.port labels: nodename: 'canal'
# 檢測剛剛編寫的 prometheus.yml 語法是否錯誤 ./promtool check config prometheus.yml
nohup /Users/huan/soft/prometheus/prometheus-2.25.0/prometheus \ --config.file="/Users/huan/soft/prometheus/prometheus-2.25.0/prometheus.yml" \ --web.listen-address="0.0.0.0:9080" \ --web.enable-lifecycle \ --storage.tsdb.retention.time="3d" \ --log.level=debug \ > logs/prometheus.out 2>&1 &
指標 | 說明 | 單位 | 精度 |
---|---|---|---|
canal_instance_transactions | instance接收transactions計數 | - | - |
canal_instance | instance基本信息 | - | - |
canal_instance_subscriptions | instance訂閱數量 | - | - |
canal_instance_publish_blocking_time | instance dump線程提交到異步解析隊列過程當中的阻塞時間(僅parallel解析模式) | ms | ns |
canal_instance_received_binlog_bytes | instance接收binlog字節數 | byte | - |
canal_instance_parser_mode | instance解析模式(是否開啓parallel解析) | - | - |
canal_instance_client_packets | instance client請求次數的計數 | - | - |
canal_instance_client_bytes | 向instance client發送數據包字節計數 | byte | - |
canal_instance_client_empty_batches | 向instance client發送get接口的空結果計數 | - | - |
canal_instance_client_request_error | instance client請求失敗計數 | - | - |
canal_instance_client_request_latency | instance client請求的響應時間概況 | - | - |
canal_instance_sink_blocking_time | instance sink線程put數據至store的阻塞時間 | ms | ns |
canal_instance_store_produce_seq | instance store接收到的events sequence number | - | - |
canal_instance_store_consume_seq | instance store成功消費的events sequence number | - | - |
canal_instance_store | instance store基本信息 | - | - |
canal_instance_store_produce_mem | instance store接收到的全部events佔用內存總量 | byte | - |
canal_instance_store_consume_mem | instance store成功消費的全部events佔用內存總量 | byte | - |
canal_instance_put_rows | store put操做完成的table rows | - | - |
canal_instance_get_rows | client get請求返回的table rows | - | - |
canal_instance_ack_rows | client ack操做釋放的table rows | - | - |
canal_instance_traffic_delay | server與MySQL master的延時 | ms | ms |
canal_instance_put_delay | store put操做events的延時 | ms | ms |
canal_instance_get_delay | client get請求返回events的延時 | ms | ms |
canal_instance_ack_delay | client ack操做釋放events的延時 | ms | ms |
圖表json數據
github
{ "__inputs": [ { "name": "DS_PROMETHEUS", "label": "prometheus", "description": "", "type": "datasource", "pluginId": "prometheus", "pluginName": "Prometheus" } ], "__requires": [ { "type": "grafana", "id": "grafana", "name": "Grafana", "version": "5.2.2" }, { "type": "panel", "id": "graph", "name": "Graph", "version": "5.0.0" }, { "type": "datasource", "id": "prometheus", "name": "Prometheus", "version": "5.0.0" } ], "annotations": { "list": [ { "builtIn": 1, "datasource": "-- Grafana --", "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" } ] }, "editable": true, "gnetId": null, "graphTooltip": 0, "id": null, "iteration": 1536989235272, "links": [], "panels": [ { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 }, "id": 30, "panels": [], "title": "Instance status", "type": "row" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal instance 基本信息。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 0, "y": 1 }, "id": 24, "legend": { "alignAsTable": true, "avg": false, "current": false, "hideEmpty": false, "hideZero": false, "max": false, "min": false, "rightSide": true, "show": true, "sideWidth": 500, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "repeat": null, "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "canal_instance{destination=~\"$destination\"}", "format": "time_series", "instant": true, "intervalFactor": 1, "legendFormat": "Destination: {{destination}}", "refId": "A" }, { "expr": "canal_instance_parser_mode{destination=~\"$destination\"}", "format": "time_series", "instant": true, "intervalFactor": 1, "legendFormat": "Parallel parser: {{parallel}}", "refId": "B" }, { "expr": "canal_instance_store{destination=~\"$destination\"}", "format": "time_series", "instant": true, "intervalFactor": 1, "legendFormat": "Batch mode: {{batchMode}}", "refId": "C" }, { "expr": "canal_instance_store{destination=~\"$destination\"}", "format": "time_series", "instant": true, "intervalFactor": 1, "legendFormat": "Buffer size: {{size}}", "refId": "D" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Basic", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "transparent": true, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": false, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": false }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": false } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": { "inbound": "#bf1b00" }, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal instance 網絡帶寬佔用。\ninbound: 讀取MySQL binlog.\noutbound: 對Client端傳輸格式化binlog.", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 6, "y": 1 }, "id": 6, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(canal_instance_received_binlog_bytes{destination=~\"$destination\", parser=\"0\"}[2m]) / 1024", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "inbound", "refId": "A" }, { "expr": "rate(canal_instance_client_bytes{destination=~\"$destination\"}[2m]) / 1024", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "outbound", "refId": "B" }, { "expr": "rate(canal_instance_received_binlog_bytes{destination=~\"$destination\", parser=\"1\"}[2m]) / 1024", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "inbound-1", "refId": "C" }, { "expr": "rate(canal_instance_received_binlog_bytes{destination=~\"$destination\", parser=\"2\"}[2m]) / 1024", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "inbound-2", "refId": "D" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Network bandwith", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "KBs", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": { "ack": "#f29191", "get": "#cca300", "put": "#1f78c1" }, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "master: Canal server相對於MySQL master的延時。經過master heartbeat機制能刷新idle狀態下的延時。\nput: store put操做的時間點爲基準。\nget: client get操做的時間點爲基準。\nack: client ack操做的時間點爲基準。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 12, "y": 1 }, "id": 4, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "canal_instance_traffic_delay{destination=~\"$destination\"} / 1000", "format": "time_series", "hide": false, "interval": "15s", "intervalFactor": 2, "legendFormat": "master", "refId": "D" }, { "expr": "canal_instance_put_delay{destination=~\"$destination\"} / 1000", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "put", "refId": "A" }, { "expr": "canal_instance_get_delay{destination=~\"$destination\"} / 1000", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "get", "refId": "B" }, { "expr": "canal_instance_ack_delay{destination=~\"$destination\"} / 1000", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "ack", "refId": "C" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Delay", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "s", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "sink線程blocking佔比;dump線程blocking佔比(僅parallel mode)。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 18, "y": 1 }, "hideTimeOverride": false, "id": 2, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "clamp_max(rate(canal_instance_publish_blocking_time{destination=~\"$destination\", parser=\"0\"}[2m]), 1000) / 10", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "dump", "refId": "B" }, { "expr": "clamp_max(rate(canal_instance_sink_blocking_time{destination=~\"$destination\"}[2m]), 1000) / 10", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "sink", "refId": "A" }, { "expr": "clamp_max(rate(canal_instance_publish_blocking_time{destination=~\"$destination\", parser=\"1\"}[2m]), 1000) / 10", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "dump-1", "refId": "C" }, { "expr": "clamp_max(rate(canal_instance_publish_blocking_time{destination=~\"$destination\", parser=\"2\"}[2m]), 1000) / 10", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "dump-2", "refId": "D" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Blocking", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "percent", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 6 }, "id": 32, "panels": [], "title": "Throughput", "type": "row" }, { "aliasColors": { "rowDatas": "#7eb26d", "tableRows": "#c15c17" }, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Instance處理binlog的TPS(以master變動行數table rows爲基準計算)。\nput: put操做TPS。\nget: get操做TPS。\nack: ack操做TPS。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 0, "y": 7 }, "id": 14, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(canal_instance_put_rows{destination=~\"$destination\"}[2m])", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "put", "refId": "A" }, { "expr": "rate(canal_instance_get_rows{destination=~\"$destination\"}[2m])", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "get", "refId": "B" }, { "expr": "rate(canal_instance_ack_rows{destination=~\"$destination\"}[2m])", "format": "time_series", "intervalFactor": 1, "legendFormat": "ack", "refId": "C" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "TPS(table rows)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "iops", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": { "transactions": "#f9ba8f" }, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal instance 處理binlog的TPS,以MySQL transaction爲單位計算。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 6, "y": 7 }, "id": 12, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(canal_instance_transactions{destination=~\"$destination\"}[2m])", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "transactions", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "TPS(MySQL transaction)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "iops", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 12 }, "id": 34, "panels": [], "title": "Client", "type": "row" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal instance接收到的請求統計,結果按packet type分類。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 0, "y": 13 }, "id": 16, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "canal_instance_client_packets{destination=~\"$destination\"}", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "{{packetType}}", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Client requests", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "none", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "client 請求的GET與ACK包的QPS。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 6, "y": 13 }, "id": 38, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(canal_instance_client_packets{destination=~\"$destination\",packetType=\"GET\"}[2m])", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "GET", "refId": "A" }, { "expr": "rate(canal_instance_client_packets{destination=~\"$destination\",packetType=\"CLIENTACK\"}[2m])", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "ACK", "refId": "B" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Client QPS", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "server響應GET請求,但返回空包的佔比。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 12, "y": 13 }, "id": 26, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(canal_instance_client_empty_batches{destination=~\"$destination\"}[2m])", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "empty", "refId": "A" }, { "expr": "rate(canal_instance_client_packets{destination=~\"$destination\", packetType=\"GET\"}[2m])", "format": "time_series", "intervalFactor": 1, "legendFormat": "nonempty", "refId": "B" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Empty packets", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "wps", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal client 請求響應時間的概況。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 18, "y": 13 }, "id": 18, "legend": { "alignAsTable": false, "avg": false, "current": false, "max": false, "min": false, "rightSide": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [ { "alias": "25.0", "yaxis": 1 }, { "alias": "100.0", "yaxis": 1 } ], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(canal_instance_client_request_latency_bucket{destination=~\"$destination\"}[2m])", "format": "time_series", "hide": false, "interval": "15s", "intervalFactor": 2, "legendFormat": "{{le}}ms", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Response time", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "transparent": false, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 18 }, "id": 36, "panels": [], "title": "Store", "type": "row" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal instance ringbuffer內未釋放的events數量。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 0, "y": 19 }, "id": 20, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "canal_instance_store_produce_seq{destination=~\"$destination\"} - canal_instance_store_consume_seq{destination=~\"$destination\"}", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "events", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Store remain events", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "decimals": null, "format": "none", "label": "", "logBase": 1, "max": null, "min": null, "show": true }, { "decimals": null, "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": "$datasource", "description": "Canal instance ringbuffer 內未釋放events佔用內存。", "fill": 1, "gridPos": { "h": 5, "w": 6, "x": 6, "y": 19 }, "id": 22, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "(canal_instance_store_produce_mem{destination=~\"$destination\"} - canal_instance_store_consume_mem{destination=~\"$destination\"}) / 1024", "format": "time_series", "interval": "15s", "intervalFactor": 2, "legendFormat": "memsize", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeShift": null, "title": "Store remain mem", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "deckbytes", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } } ], "refresh": false, "schemaVersion": 16, "style": "dark", "tags": [ "canal" ], "templating": { "list": [ { "current": { "text": "prometheus", "value": "prometheus" }, "hide": 0, "label": "datasource", "name": "datasource", "options": [], "query": "prometheus", "refresh": 1, "regex": "", "type": "datasource" }, { "allValue": null, "current": {}, "datasource": "$datasource", "hide": 0, "includeAll": false, "label": "destination", "multi": false, "name": "destination", "options": [], "query": "label_values(canal_instance, destination)", "refresh": 1, "regex": "", "sort": 0, "tagValuesQuery": "", "tags": [], "tagsQuery": "", "type": "query", "useTags": false } ] }, "time": { "from": "now-6h", "to": "now" }, "timepicker": { "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ], "time_options": [ "5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d" ] }, "timezone": "", "title": "Canal instances", "uid": "8vh8NGpiz", "version": 103 }
一、https://github.com/alibaba/canal/wiki/Prometheus-QuickStartweb