294 lines
24 KiB
YAML
294 lines
24 KiB
YAML
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: factorio-dashboard
|
|
namespace: default
|
|
labels:
|
|
grafana_dashboard: '1'
|
|
app.kubernetes.io/name: factorio
|
|
data:
|
|
factorio.json: "{\n \"uid\": \"factorio-server\",\n \"title\": \"Factorio \\u2022\
|
|
\ Team Server\",\n \"description\": \"Achievement-safe Factorio monitoring: normal\
|
|
\ RCON player queries plus Kubernetes resource metrics. No mods or Lua commands.\
|
|
\ Missing player data means a failed query, not zero players.\",\n \"tags\":\
|
|
\ [\n \"factorio\",\n \"kubernetes\",\n \"gameserver\"\n ],\n \"schemaVersion\"\
|
|
: 39,\n \"version\": 1,\n \"refresh\": \"30s\",\n \"timezone\": \"browser\"\
|
|
,\n \"time\": {\n \"from\": \"now-3h\",\n \"to\": \"now\"\n },\n \"panels\"\
|
|
: [\n {\n \"id\": 1,\n \"type\": \"row\",\n \"title\": \"Factory\
|
|
\ control room\",\n \"collapsed\": false,\n \"gridPos\": {\n \
|
|
\ \"x\": 0,\n \"y\": 0,\n \"w\": 24,\n \"h\": 1\n }\n\
|
|
\ },\n {\n \"id\": 19,\n \"type\": \"stat\",\n \"title\"\
|
|
: \"Game version\",\n \"description\": \"Version tag of the currently running\
|
|
\ Factorio game container, reported by kube-state-metrics.\",\n \"datasource\"\
|
|
: {\n \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n\
|
|
\ },\n \"gridPos\": {\n \"x\": 0,\n \"y\": 1,\n \
|
|
\ \"w\": 4,\n \"h\": 5\n },\n \"fieldConfig\": {\n \"\
|
|
defaults\": {\n \"color\": {\n \"mode\": \"fixed\",\n \
|
|
\ \"fixedColor\": \"orange\"\n },\n \"unit\": \"none\"\
|
|
\n },\n \"overrides\": []\n },\n \"targets\": [\n \
|
|
\ {\n \"refId\": \"A\",\n \"expr\": \"max by (version) (label_replace(kube_pod_container_info{namespace=\\\
|
|
\"factorio\\\",container=\\\"factorio\\\"} and on(namespace,pod) (kube_pod_container_status_running{namespace=\\\
|
|
\"factorio\\\",container=\\\"factorio\\\"} == 1), \\\"version\\\", \\\"$1\\\"\
|
|
, \\\"image\\\", \\\".*:([^:]+)$\\\"))\",\n \"legendFormat\": \"{{version}}\"\
|
|
,\n \"instant\": true,\n \"range\": false\n }\n \
|
|
\ ],\n \"options\": {\n \"reduceOptions\": {\n \"calcs\"\
|
|
: [\n \"lastNotNull\"\n ],\n \"values\": false\n\
|
|
\ },\n \"graphMode\": \"none\",\n \"colorMode\": \"value\"\
|
|
,\n \"textMode\": \"name\"\n }\n },\n {\n \"id\": 2,\n\
|
|
\ \"type\": \"stat\",\n \"title\": \"Server ready\",\n \"description\"\
|
|
: \"\",\n \"datasource\": {\n \"type\": \"prometheus\",\n \"\
|
|
uid\": \"${DS_PROMETHEUS}\"\n },\n \"gridPos\": {\n \"x\": 4,\n\
|
|
\ \"y\": 1,\n \"w\": 3,\n \"h\": 5\n },\n \"fieldConfig\"\
|
|
: {\n \"defaults\": {\n \"unit\": \"short\",\n \"min\"\
|
|
: 0,\n \"color\": {\n \"mode\": \"palette-classic\"\n \
|
|
\ },\n \"custom\": {\n \"drawStyle\": \"line\",\n \
|
|
\ \"lineWidth\": 2,\n \"fillOpacity\": 10,\n \"\
|
|
spanNulls\": false\n }\n },\n \"overrides\": []\n \
|
|
\ },\n \"targets\": [\n {\n \"refId\": \"A\",\n \
|
|
\ \"expr\": \"max(kube_deployment_status_replicas_available{namespace=\\\"factorio\\\
|
|
\",deployment=\\\"factorio\\\"})\",\n \"legendFormat\": \"Ready\",\n\
|
|
\ \"range\": true\n }\n ],\n \"options\": {\n \
|
|
\ \"reduceOptions\": {\n \"calcs\": [\n \"lastNotNull\"\n\
|
|
\ ],\n \"values\": false\n },\n \"graphMode\"\
|
|
: \"area\",\n \"colorMode\": \"value\"\n }\n },\n {\n \"\
|
|
id\": 3,\n \"type\": \"stat\",\n \"title\": \"Players online\",\n \
|
|
\ \"description\": \"\",\n \"datasource\": {\n \"type\": \"prometheus\"\
|
|
,\n \"uid\": \"${DS_PROMETHEUS}\"\n },\n \"gridPos\": {\n \
|
|
\ \"x\": 7,\n \"y\": 1,\n \"w\": 3,\n \"h\": 5\n \
|
|
\ },\n \"fieldConfig\": {\n \"defaults\": {\n \"unit\":\
|
|
\ \"short\",\n \"min\": 0,\n \"color\": {\n \"mode\"\
|
|
: \"palette-classic\"\n },\n \"custom\": {\n \"drawStyle\"\
|
|
: \"line\",\n \"lineWidth\": 2,\n \"fillOpacity\": 10,\n\
|
|
\ \"spanNulls\": false\n }\n },\n \"overrides\"\
|
|
: []\n },\n \"targets\": [\n {\n \"refId\": \"A\",\n\
|
|
\ \"expr\": \"max(factorio_players_online{namespace=\\\"factorio\\\"\
|
|
}) and on() (max(factorio_server_up{namespace=\\\"factorio\\\"}) == 1)\",\n \
|
|
\ \"legendFormat\": \"Players\",\n \"range\": true\n }\n\
|
|
\ ],\n \"options\": {\n \"reduceOptions\": {\n \"calcs\"\
|
|
: [\n \"lastNotNull\"\n ],\n \"values\": false\n\
|
|
\ },\n \"graphMode\": \"area\",\n \"colorMode\": \"value\"\
|
|
\n }\n },\n {\n \"id\": 4,\n \"type\": \"stat\",\n \"\
|
|
title\": \"Server RAM\",\n \"description\": \"\",\n \"datasource\":\
|
|
\ {\n \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n\
|
|
\ },\n \"gridPos\": {\n \"x\": 10,\n \"y\": 1,\n \
|
|
\ \"w\": 4,\n \"h\": 5\n },\n \"fieldConfig\": {\n \"\
|
|
defaults\": {\n \"unit\": \"bytes\",\n \"min\": 0,\n \
|
|
\ \"color\": {\n \"mode\": \"palette-classic\"\n },\n \
|
|
\ \"custom\": {\n \"drawStyle\": \"line\",\n \"lineWidth\"\
|
|
: 2,\n \"fillOpacity\": 10,\n \"spanNulls\": false\n \
|
|
\ }\n },\n \"overrides\": []\n },\n \"targets\"\
|
|
: [\n {\n \"refId\": \"A\",\n \"expr\": \"sum(container_memory_working_set_bytes{namespace=\\\
|
|
\"factorio\\\",container=\\\"factorio\\\"})\",\n \"legendFormat\": \"\
|
|
Working set\",\n \"range\": true\n }\n ],\n \"options\"\
|
|
: {\n \"reduceOptions\": {\n \"calcs\": [\n \"lastNotNull\"\
|
|
\n ],\n \"values\": false\n },\n \"graphMode\"\
|
|
: \"area\",\n \"colorMode\": \"value\"\n }\n },\n {\n \"\
|
|
id\": 5,\n \"type\": \"stat\",\n \"title\": \"CPU cores\",\n \"\
|
|
description\": \"\",\n \"datasource\": {\n \"type\": \"prometheus\"\
|
|
,\n \"uid\": \"${DS_PROMETHEUS}\"\n },\n \"gridPos\": {\n \
|
|
\ \"x\": 14,\n \"y\": 1,\n \"w\": 3,\n \"h\": 5\n \
|
|
\ },\n \"fieldConfig\": {\n \"defaults\": {\n \"unit\"\
|
|
: \"short\",\n \"min\": 0,\n \"color\": {\n \"mode\"\
|
|
: \"palette-classic\"\n },\n \"custom\": {\n \"drawStyle\"\
|
|
: \"line\",\n \"lineWidth\": 2,\n \"fillOpacity\": 10,\n\
|
|
\ \"spanNulls\": false\n }\n },\n \"overrides\"\
|
|
: []\n },\n \"targets\": [\n {\n \"refId\": \"A\",\n\
|
|
\ \"expr\": \"sum(rate(container_cpu_usage_seconds_total{namespace=\\\
|
|
\"factorio\\\",container=\\\"factorio\\\"}[$__rate_interval]))\",\n \"\
|
|
legendFormat\": \"CPU\",\n \"range\": true\n }\n ],\n \
|
|
\ \"options\": {\n \"reduceOptions\": {\n \"calcs\": [\n \
|
|
\ \"lastNotNull\"\n ],\n \"values\": false\n \
|
|
\ },\n \"graphMode\": \"area\",\n \"colorMode\": \"value\"\n \
|
|
\ }\n },\n {\n \"id\": 17,\n \"type\": \"stat\",\n \"title\"\
|
|
: \"Game responding\",\n \"description\": \"\",\n \"datasource\": {\n\
|
|
\ \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n \
|
|
\ },\n \"gridPos\": {\n \"x\": 17,\n \"y\": 1,\n \
|
|
\ \"w\": 3,\n \"h\": 5\n },\n \"fieldConfig\": {\n \"\
|
|
defaults\": {\n \"unit\": \"short\",\n \"min\": 0,\n \
|
|
\ \"color\": {\n \"mode\": \"palette-classic\"\n },\n \
|
|
\ \"custom\": {\n \"drawStyle\": \"line\",\n \"lineWidth\"\
|
|
: 2,\n \"fillOpacity\": 10,\n \"spanNulls\": false\n \
|
|
\ }\n },\n \"overrides\": []\n },\n \"targets\"\
|
|
: [\n {\n \"refId\": \"A\",\n \"expr\": \"max(factorio_server_up{namespace=\\\
|
|
\"factorio\\\"})\",\n \"legendFormat\": \"Game responding\",\n \
|
|
\ \"range\": true\n }\n ],\n \"options\": {\n \"reduceOptions\"\
|
|
: {\n \"calcs\": [\n \"lastNotNull\"\n ],\n \
|
|
\ \"values\": false\n },\n \"graphMode\": \"area\",\n \
|
|
\ \"colorMode\": \"value\"\n }\n },\n {\n \"id\": 18,\n \
|
|
\ \"type\": \"stat\",\n \"title\": \"Save disk free\",\n \"description\"\
|
|
: \"Current free space on the save PVC. Node labels are collapsed so failover\
|
|
\ does not produce duplicate values.\",\n \"datasource\": {\n \"type\"\
|
|
: \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n },\n \"gridPos\"\
|
|
: {\n \"x\": 20,\n \"y\": 1,\n \"w\": 4,\n \"h\":\
|
|
\ 5\n },\n \"fieldConfig\": {\n \"defaults\": {\n \"\
|
|
unit\": \"bytes\",\n \"min\": 0,\n \"color\": {\n \
|
|
\ \"mode\": \"palette-classic\"\n },\n \"custom\": {\n \
|
|
\ \"drawStyle\": \"line\",\n \"lineWidth\": 2,\n \
|
|
\ \"fillOpacity\": 10,\n \"spanNulls\": false\n }\n \
|
|
\ },\n \"overrides\": []\n },\n \"targets\": [\n {\n\
|
|
\ \"refId\": \"A\",\n \"expr\": \"min(kubelet_volume_stats_available_bytes{namespace=\\\
|
|
\"factorio\\\",persistentvolumeclaim=\\\"factorio-data\\\"})\",\n \"\
|
|
legendFormat\": \"Save disk free\",\n \"range\": false,\n \"\
|
|
instant\": true\n }\n ],\n \"options\": {\n \"reduceOptions\"\
|
|
: {\n \"calcs\": [\n \"lastNotNull\"\n ],\n \
|
|
\ \"values\": false\n },\n \"graphMode\": \"none\",\n \
|
|
\ \"colorMode\": \"value\"\n }\n },\n {\n \"id\": 8,\n \"\
|
|
type\": \"row\",\n \"title\": \"Server resources & availability\",\n \
|
|
\ \"collapsed\": false,\n \"gridPos\": {\n \"x\": 0,\n \"\
|
|
y\": 6,\n \"w\": 24,\n \"h\": 1\n }\n },\n {\n \"\
|
|
id\": 9,\n \"type\": \"timeseries\",\n \"title\": \"RAM \\u2014 game\
|
|
\ and monitoring\",\n \"description\": \"\",\n \"datasource\": {\n \
|
|
\ \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n \
|
|
\ },\n \"gridPos\": {\n \"x\": 0,\n \"y\": 7,\n \"\
|
|
w\": 12,\n \"h\": 8\n },\n \"fieldConfig\": {\n \"defaults\"\
|
|
: {\n \"unit\": \"bytes\",\n \"min\": 0,\n \"color\"\
|
|
: {\n \"mode\": \"palette-classic\"\n },\n \"custom\"\
|
|
: {\n \"drawStyle\": \"line\",\n \"lineWidth\": 2,\n \
|
|
\ \"fillOpacity\": 10,\n \"spanNulls\": false\n }\n\
|
|
\ },\n \"overrides\": []\n },\n \"targets\": [\n \
|
|
\ {\n \"refId\": \"A\",\n \"expr\": \"sum by (container) (container_memory_working_set_bytes{namespace=\\\
|
|
\"factorio\\\",pod=~\\\"factorio-[a-z0-9]+-[a-z0-9]+\\\",container!=\\\"\\\",container!=\\\
|
|
\"POD\\\"})\",\n \"legendFormat\": \"{{container}}\",\n \"range\"\
|
|
: true\n }\n ],\n \"options\": {\n \"legend\": {\n \
|
|
\ \"displayMode\": \"table\",\n \"placement\": \"bottom\",\n \
|
|
\ \"calcs\": [\n \"lastNotNull\",\n \"max\"\n \
|
|
\ ]\n },\n \"tooltip\": {\n \"mode\": \"multi\",\n\
|
|
\ \"sort\": \"desc\"\n }\n }\n },\n {\n \"id\"\
|
|
: 10,\n \"type\": \"timeseries\",\n \"title\": \"CPU \\u2014 game and\
|
|
\ monitoring\",\n \"description\": \"\",\n \"datasource\": {\n \
|
|
\ \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n },\n\
|
|
\ \"gridPos\": {\n \"x\": 12,\n \"y\": 7,\n \"w\": 12,\n\
|
|
\ \"h\": 8\n },\n \"fieldConfig\": {\n \"defaults\": {\n\
|
|
\ \"unit\": \"short\",\n \"min\": 0,\n \"color\": {\n\
|
|
\ \"mode\": \"palette-classic\"\n },\n \"custom\"\
|
|
: {\n \"drawStyle\": \"line\",\n \"lineWidth\": 2,\n \
|
|
\ \"fillOpacity\": 10,\n \"spanNulls\": false\n }\n\
|
|
\ },\n \"overrides\": []\n },\n \"targets\": [\n \
|
|
\ {\n \"refId\": \"A\",\n \"expr\": \"sum by (container) (rate(container_cpu_usage_seconds_total{namespace=\\\
|
|
\"factorio\\\",pod=~\\\"factorio-[a-z0-9]+-[a-z0-9]+\\\",container!=\\\"\\\",container!=\\\
|
|
\"POD\\\"}[$__rate_interval]))\",\n \"legendFormat\": \"{{container}}\"\
|
|
,\n \"range\": true\n }\n ],\n \"options\": {\n \
|
|
\ \"legend\": {\n \"displayMode\": \"table\",\n \"placement\"\
|
|
: \"bottom\",\n \"calcs\": [\n \"lastNotNull\",\n \
|
|
\ \"max\"\n ]\n },\n \"tooltip\": {\n \"mode\"\
|
|
: \"multi\",\n \"sort\": \"desc\"\n }\n }\n },\n {\n\
|
|
\ \"id\": 11,\n \"type\": \"timeseries\",\n \"title\": \"Players\
|
|
\ online\",\n \"description\": \"\",\n \"datasource\": {\n \"\
|
|
type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n },\n \
|
|
\ \"gridPos\": {\n \"x\": 0,\n \"y\": 15,\n \"w\": 12,\n\
|
|
\ \"h\": 8\n },\n \"fieldConfig\": {\n \"defaults\": {\n\
|
|
\ \"unit\": \"short\",\n \"min\": 0,\n \"color\": {\n\
|
|
\ \"mode\": \"palette-classic\"\n },\n \"custom\"\
|
|
: {\n \"drawStyle\": \"line\",\n \"lineWidth\": 2,\n \
|
|
\ \"fillOpacity\": 10,\n \"spanNulls\": false\n }\n\
|
|
\ },\n \"overrides\": []\n },\n \"targets\": [\n \
|
|
\ {\n \"refId\": \"A\",\n \"expr\": \"max(factorio_players_online{namespace=\\\
|
|
\"factorio\\\"}) and on() (max(factorio_server_up{namespace=\\\"factorio\\\"})\
|
|
\ == 1)\",\n \"legendFormat\": \"Players\",\n \"range\": true\n\
|
|
\ }\n ],\n \"options\": {\n \"legend\": {\n \"\
|
|
displayMode\": \"table\",\n \"placement\": \"bottom\",\n \"\
|
|
calcs\": [\n \"lastNotNull\",\n \"max\"\n ]\n \
|
|
\ },\n \"tooltip\": {\n \"mode\": \"multi\",\n \
|
|
\ \"sort\": \"desc\"\n }\n }\n },\n {\n \"id\": 12,\n \
|
|
\ \"type\": \"timeseries\",\n \"title\": \"World storage\",\n \"\
|
|
description\": \"\",\n \"datasource\": {\n \"type\": \"prometheus\"\
|
|
,\n \"uid\": \"${DS_PROMETHEUS}\"\n },\n \"gridPos\": {\n \
|
|
\ \"x\": 12,\n \"y\": 15,\n \"w\": 12,\n \"h\": 8\n \
|
|
\ },\n \"fieldConfig\": {\n \"defaults\": {\n \"unit\"\
|
|
: \"bytes\",\n \"min\": 0,\n \"color\": {\n \"mode\"\
|
|
: \"palette-classic\"\n },\n \"custom\": {\n \"drawStyle\"\
|
|
: \"line\",\n \"lineWidth\": 2,\n \"fillOpacity\": 10,\n\
|
|
\ \"spanNulls\": false\n }\n },\n \"overrides\"\
|
|
: []\n },\n \"targets\": [\n {\n \"refId\": \"A\",\n\
|
|
\ \"expr\": \"max(kubelet_volume_stats_used_bytes{namespace=\\\"factorio\\\
|
|
\",persistentvolumeclaim=\\\"factorio-data\\\"})\",\n \"legendFormat\"\
|
|
: \"Used\",\n \"range\": true\n },\n {\n \"refId\"\
|
|
: \"B\",\n \"expr\": \"max(kubelet_volume_stats_capacity_bytes{namespace=\\\
|
|
\"factorio\\\",persistentvolumeclaim=\\\"factorio-data\\\"})\",\n \"\
|
|
legendFormat\": \"Capacity\",\n \"range\": true\n }\n ],\n\
|
|
\ \"options\": {\n \"legend\": {\n \"displayMode\": \"table\"\
|
|
,\n \"placement\": \"bottom\",\n \"calcs\": [\n \"\
|
|
lastNotNull\",\n \"max\"\n ]\n },\n \"tooltip\"\
|
|
: {\n \"mode\": \"multi\",\n \"sort\": \"desc\"\n }\n\
|
|
\ }\n },\n {\n \"id\": 13,\n \"type\": \"timeseries\",\n\
|
|
\ \"title\": \"Network traffic\",\n \"description\": \"\",\n \"\
|
|
datasource\": {\n \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\
|
|
\n },\n \"gridPos\": {\n \"x\": 0,\n \"y\": 23,\n \
|
|
\ \"w\": 12,\n \"h\": 8\n },\n \"fieldConfig\": {\n \
|
|
\ \"defaults\": {\n \"unit\": \"Bps\",\n \"min\": 0,\n \
|
|
\ \"color\": {\n \"mode\": \"palette-classic\"\n },\n\
|
|
\ \"custom\": {\n \"drawStyle\": \"line\",\n \"\
|
|
lineWidth\": 2,\n \"fillOpacity\": 10,\n \"spanNulls\":\
|
|
\ false\n }\n },\n \"overrides\": []\n },\n \"\
|
|
targets\": [\n {\n \"refId\": \"A\",\n \"expr\": \"sum(rate(container_network_receive_bytes_total{namespace=\\\
|
|
\"factorio\\\",pod=~\\\"factorio-[a-z0-9]+-[a-z0-9]+\\\"}[$__rate_interval]))\"\
|
|
,\n \"legendFormat\": \"Received\",\n \"range\": true\n \
|
|
\ },\n {\n \"refId\": \"B\",\n \"expr\": \"sum(rate(container_network_transmit_bytes_total{namespace=\\\
|
|
\"factorio\\\",pod=~\\\"factorio-[a-z0-9]+-[a-z0-9]+\\\"}[$__rate_interval]))\"\
|
|
,\n \"legendFormat\": \"Sent\",\n \"range\": true\n }\n\
|
|
\ ],\n \"options\": {\n \"legend\": {\n \"displayMode\"\
|
|
: \"table\",\n \"placement\": \"bottom\",\n \"calcs\": [\n \
|
|
\ \"lastNotNull\",\n \"max\"\n ]\n },\n \
|
|
\ \"tooltip\": {\n \"mode\": \"multi\",\n \"sort\": \"\
|
|
desc\"\n }\n }\n },\n {\n \"id\": 14,\n \"type\":\
|
|
\ \"timeseries\",\n \"title\": \"Container restarts\",\n \"description\"\
|
|
: \"\",\n \"datasource\": {\n \"type\": \"prometheus\",\n \"\
|
|
uid\": \"${DS_PROMETHEUS}\"\n },\n \"gridPos\": {\n \"x\": 12,\n\
|
|
\ \"y\": 23,\n \"w\": 12,\n \"h\": 8\n },\n \"\
|
|
fieldConfig\": {\n \"defaults\": {\n \"unit\": \"short\",\n \
|
|
\ \"min\": 0,\n \"color\": {\n \"mode\": \"palette-classic\"\
|
|
\n },\n \"custom\": {\n \"drawStyle\": \"line\",\n\
|
|
\ \"lineWidth\": 2,\n \"fillOpacity\": 10,\n \
|
|
\ \"spanNulls\": false\n }\n },\n \"overrides\": []\n \
|
|
\ },\n \"targets\": [\n {\n \"refId\": \"A\",\n \
|
|
\ \"expr\": \"sum by (container) (kube_pod_container_status_restarts_total{namespace=\\\
|
|
\"factorio\\\",pod=~\\\"factorio-[a-z0-9]+-[a-z0-9]+\\\"})\",\n \"legendFormat\"\
|
|
: \"{{container}}\",\n \"range\": true\n }\n ],\n \"\
|
|
options\": {\n \"legend\": {\n \"displayMode\": \"table\",\n \
|
|
\ \"placement\": \"bottom\",\n \"calcs\": [\n \"lastNotNull\"\
|
|
,\n \"max\"\n ]\n },\n \"tooltip\": {\n \
|
|
\ \"mode\": \"multi\",\n \"sort\": \"desc\"\n }\n }\n\
|
|
\ },\n {\n \"id\": 15,\n \"type\": \"timeseries\",\n \"title\"\
|
|
: \"Host placement\",\n \"description\": \"\",\n \"datasource\": {\n\
|
|
\ \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n \
|
|
\ },\n \"gridPos\": {\n \"x\": 0,\n \"y\": 31,\n \
|
|
\ \"w\": 12,\n \"h\": 8\n },\n \"fieldConfig\": {\n \"\
|
|
defaults\": {\n \"unit\": \"short\",\n \"min\": 0,\n \
|
|
\ \"color\": {\n \"mode\": \"palette-classic\"\n },\n \
|
|
\ \"custom\": {\n \"drawStyle\": \"line\",\n \"lineWidth\"\
|
|
: 2,\n \"fillOpacity\": 10,\n \"spanNulls\": false\n \
|
|
\ }\n },\n \"overrides\": []\n },\n \"targets\"\
|
|
: [\n {\n \"refId\": \"A\",\n \"expr\": \"max by (node)\
|
|
\ (kube_pod_info{namespace=\\\"factorio\\\",pod=~\\\"factorio-[a-z0-9]+-[a-z0-9]+\\\
|
|
\"} * on(namespace,pod) group_left() (kube_pod_status_phase{namespace=\\\"factorio\\\
|
|
\",phase=\\\"Running\\\"} == 1))\",\n \"legendFormat\": \"{{node}}\"\
|
|
,\n \"range\": true\n }\n ],\n \"options\": {\n \
|
|
\ \"legend\": {\n \"displayMode\": \"table\",\n \"placement\"\
|
|
: \"bottom\",\n \"calcs\": [\n \"lastNotNull\",\n \
|
|
\ \"max\"\n ]\n },\n \"tooltip\": {\n \"mode\"\
|
|
: \"multi\",\n \"sort\": \"desc\"\n }\n }\n },\n {\n\
|
|
\ \"id\": 16,\n \"type\": \"timeseries\",\n \"title\": \"Monitoring\
|
|
\ response time\",\n \"description\": \"\",\n \"datasource\": {\n \
|
|
\ \"type\": \"prometheus\",\n \"uid\": \"${DS_PROMETHEUS}\"\n \
|
|
\ },\n \"gridPos\": {\n \"x\": 12,\n \"y\": 31,\n \"\
|
|
w\": 12,\n \"h\": 8\n },\n \"fieldConfig\": {\n \"defaults\"\
|
|
: {\n \"unit\": \"s\",\n \"min\": 0,\n \"color\": {\n\
|
|
\ \"mode\": \"palette-classic\"\n },\n \"custom\"\
|
|
: {\n \"drawStyle\": \"line\",\n \"lineWidth\": 2,\n \
|
|
\ \"fillOpacity\": 10,\n \"spanNulls\": false\n }\n\
|
|
\ },\n \"overrides\": []\n },\n \"targets\": [\n \
|
|
\ {\n \"refId\": \"A\",\n \"expr\": \"scrape_duration_seconds{namespace=\\\
|
|
\"factorio\\\",service=\\\"factorio-metrics\\\"}\",\n \"legendFormat\"\
|
|
: \"Exporter scrape\",\n \"range\": true\n }\n ],\n \
|
|
\ \"options\": {\n \"legend\": {\n \"displayMode\": \"table\"\
|
|
,\n \"placement\": \"bottom\",\n \"calcs\": [\n \"\
|
|
lastNotNull\",\n \"max\"\n ]\n },\n \"tooltip\"\
|
|
: {\n \"mode\": \"multi\",\n \"sort\": \"desc\"\n }\n\
|
|
\ }\n }\n ],\n \"templating\": {\n \"list\": [\n {\n \
|
|
\ \"name\": \"DS_PROMETHEUS\",\n \"type\": \"datasource\",\n \"\
|
|
query\": \"prometheus\",\n \"label\": \"Prometheus\",\n \"current\"\
|
|
: {\n \"text\": \"Prometheus\",\n \"value\": \"aevstx976yku8a\"\
|
|
\n },\n \"refresh\": 1\n }\n ]\n },\n \"annotations\"\
|
|
: {\n \"list\": []\n }\n}"
|