{ "editable": true, "panels": [ { "id": 1, "type": "row", "title": "Server: $server", "repeat": "server", "collapsed": false, "panels": [], "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 } }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "Caps at 20, so it cannot show headroom. MSPT is the honest number.", "fieldConfig": { "defaults": { "custom": { "axisSoftMin": 0, "fillOpacity": 12, "lineWidth": 2, "showPoints": "never", "spanNulls": true, "stacking": { "mode": "none" } }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 1 }, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_tps{server=~\"$server\"}", "instant": false, "legendFormat": "{{server}} \u00b7 {{window}}", "range": true, "refId": "A" } ], "title": "TPS", "type": "timeseries", "id": 2 }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "Folia and Canvas only. Folia has no single server tick, so the panels above stay empty there and these take their place; on Paper it is the other way round. Sampled at the locations of online players, so it is empty with nobody online.", "fieldConfig": { "defaults": { "custom": { "axisSoftMin": 0, "fillOpacity": 12, "lineWidth": 2, "showPoints": "never", "spanNulls": true, "stacking": { "mode": "none" } }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 1 }, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_folia_region_tps{server=~\"$server\",statistic=\"avg\"}", "legendFormat": "{{server}} \u00b7 {{window}} avg", "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_folia_region_tps{server=~\"$server\",statistic=\"min\"}", "legendFormat": "{{server}} \u00b7 {{window}} worst region", "refId": "B" } ], "title": "Regional TPS (Folia)", "type": "timeseries", "id": 3 }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "Max is the 8G Xmx from compose.", "fieldConfig": { "defaults": { "custom": { "axisSoftMin": 0, "fillOpacity": 12, "lineWidth": 2, "showPoints": "never", "spanNulls": true, "stacking": { "mode": "none" } }, "unit": "bytes" }, "overrides": [] }, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 8 }, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_jvm_memory_bytes_used{server=~\"$server\",area=\"heap\"}", "instant": false, "legendFormat": "{{server}} \u00b7 used", "range": true, "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_jvm_memory_bytes_committed{server=~\"$server\",area=\"heap\"}", "instant": false, "legendFormat": "{{server}} \u00b7 committed", "range": true, "refId": "B" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_jvm_memory_bytes_max{server=~\"$server\",area=\"heap\"}", "instant": false, "legendFormat": "{{server}} \u00b7 max", "range": true, "refId": "C" } ], "title": "Heap", "type": "timeseries", "id": 4 }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "", "fieldConfig": { "defaults": { "custom": { "axisSoftMin": 0, "fillOpacity": 12, "lineWidth": 2, "showPoints": "never", "spanNulls": true, "stacking": { "mode": "none" } }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 8 }, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_players_online{server=~\"$server\"}", "instant": false, "legendFormat": "{{server}} \u00b7 online", "range": true, "refId": "A" } ], "title": "Players online", "type": "timeseries", "id": 5 }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "Time spent collecting TickScope snapshots. Main and entity scans run on separate cadences.", "fieldConfig": { "defaults": { "custom": { "axisSoftMin": 0, "fillOpacity": 12, "lineWidth": 2, "showPoints": "never", "spanNulls": true, "stacking": { "mode": "none" } }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 15 }, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "(time() - mc_collection_last_success_timestamp_seconds{server=~\"$server\"}) and (mc_collection_enabled{server=~\"$server\"} == 1)", "instant": false, "legendFormat": "{{server}} \u00b7 {{stage}}", "range": true, "refId": "A" } ], "title": "Collection age", "type": "timeseries", "id": 6 }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "Successful player pings / requested players in the last completed or expired batch. Zero requested players displays 0; regional API availability is reported separately by regional sample counts.", "fieldConfig": { "defaults": { "custom": { "axisSoftMin": 0, "fillOpacity": 12, "lineWidth": 2, "showPoints": "never", "spanNulls": true, "stacking": { "mode": "none" } }, "unit": "percentunit" }, "overrides": [] }, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 15 }, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "expr": "mc_folia_player_samples_completed{server=~\"$server\"} / clamp_min(mc_folia_player_samples_expected{server=~\"$server\"}, 1)", "instant": false, "legendFormat": "{{server}}", "range": true, "refId": "A" } ], "title": "Folia player sample coverage", "type": "timeseries", "id": 7 } ], "refresh": "30s", "schemaVersion": 39, "tags": [ "minecraft", "paper", "prometheus", "tickscope" ], "time": { "from": "now-6h", "to": "now" }, "timezone": "browser", "title": "TickScope \u2014 per-server overview", "uid": "tickscope-per-server", "description": "Select one or more servers to repeat an overview row for each server.", "__inputs": [ { "name": "DS_PROMETHEUS", "label": "Prometheus", "description": "Prometheus data source containing TickScope metrics", "type": "datasource", "pluginId": "prometheus", "pluginName": "Prometheus" } ], "templating": { "list": [ { "allValue": ".*", "current": { "selected": true, "text": "All", "value": "$__all" }, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "definition": "label_values(mc_tickscope_info, server)", "description": "TickScope server-id", "includeAll": true, "label": "Server", "multi": true, "name": "server", "options": [], "query": { "query": "label_values(mc_tickscope_info, server)", "refId": "PrometheusVariableQueryEditor-VariableQuery" }, "refresh": 1, "regex": "", "skipUrlSync": false, "sort": 1, "type": "query" } ] } }