diff --git a/scripts/observability/alerts.conf.yaml b/scripts/observability/alerts.conf.yaml new file mode 100644 index 0000000000..5f5f51d67a --- /dev/null +++ b/scripts/observability/alerts.conf.yaml @@ -0,0 +1,28 @@ +--- +groups: + - name: snarkos_alerts + interval: 60s + rules: + - alert: SnarkosBlockHeightNotIncreasing + expr: | + avg by (job,instance,name) (increase(snarkos_bft_height_total[5m])) < 1 + for: 60s + labels: + severity: CRITICAL + annotations: + summary: "Block Height Not Increasing on {{ $labels.instance_name }}" + description: | + Block Height NOT Increasing. + + Metric `snarkos_bft_height_total` is not increasing over the last 5 minutes. + + If the alert fires, the blockchain has stopped advancing and you + should investigate the nodes for time-outs or mis-configurations. + + Please investigate: + - Verify blockchain network connectivity + - Check application/service status + - Review recent changes or deployments + + Details: + - Instance: {{ $labels.instance }} diff --git a/scripts/observability/snarkos_-_incident_response_rev1.json b/scripts/observability/snarkos_-_incident_response_rev1.json new file mode 100644 index 0000000000..f92b34959f --- /dev/null +++ b/scripts/observability/snarkos_-_incident_response_rev1.json @@ -0,0 +1,14228 @@ +{ + "apiVersion": "dashboard.grafana.app/v2beta1", + "kind": "Dashboard", + "metadata": { + "name": "snarkos-oncall", + "namespace": "stacks-935198", + "uid": "97d76362-136e-4bfb-b74b-1442a80977ae", + "resourceVersion": "1774034727547465", + "generation": 167, + "creationTimestamp": "2026-02-04T19:26:04Z", + "labels": { + "grafana.app/deprecatedInternalID": "3752765646725120" + }, + "annotations": { + "grafana.app/createdBy": "user:ff5wkv3e1hy4ge", + "grafana.app/folder": "aezo3n3rhbyf4f", + "grafana.app/saved-from-ui": "Grafana Cloud (steady)", + "grafana.app/updatedBy": "user:ff5wkv3e1hy4ge", + "grafana.app/updatedTimestamp": "2026-03-20T19:25:27Z", + "grafana.app/folderTitle": "snarkOS", + "grafana.app/folderUrl": "/dashboards/f/aezo3n3rhbyf4f/snarkos" + } + }, + "spec": { + "annotations": [ + { + "kind": "AnnotationQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "grafana", + "version": "v0", + "datasource": { + "name": "-- Grafana --" + }, + "spec": {} + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "builtIn": true, + "legacyOptions": { + "type": "dashboard" + } + } + } + ], + "cursorSync": "Crosshair", + "editable": true, + "elements": { + "panel-10": { + "kind": "Panel", + "spec": { + "id": 10, + "title": "SnarkOS BFT Connected", + "description": "snarkos_bft_connected_total{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_connected_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MIN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "24h", + "interval": "5m" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "text": { + "titleSize": 14 + }, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + } + }, + "overrides": [] + } + } + } + } + }, + "panel-102": { + "kind": "Panel", + "spec": { + "id": 102, + "title": "commit_leader_certificate_latency", + "description": "snarkos_bft_commit_leader_certificate_latency_secs_sum{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_bft_commit_leader_certificate_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] + } + } + } + } + }, + "panel-103": { + "kind": "Panel", + "spec": { + "id": 103, + "title": "consensus_advance_to_next_block_latency", + "description": "snarkos_consensus_advance_to_next_block_latency_secs_sum{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_consensus_advance_to_next_block_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] + } + } + } + } + }, + "panel-104": { + "kind": "Panel", + "spec": { + "id": 104, + "title": "consensus_prepare_advance_to_next_quorum_block_latency", + "description": "snarkos_consensus_prepare_advance_to_next_quorum_block_latency_secs_sum{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_consensus_prepare_advance_to_next_quorum_block_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] + } + } + } + } + }, + "panel-105": { + "kind": "Panel", + "spec": { + "id": 105, + "title": "consensus_check_next_block_latency", + "description": "snarkos_consensus_check_next_block_latency_secs_sum{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_consensus_check_next_block_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 0, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] + } + } + } + } + }, + "panel-106": { + "kind": "Panel", + "spec": { + "id": 106, + "title": "batch_certification_latency", + "description": "snarkos_bft_batch_certification_latency_secs_sum{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_bft_batch_certification_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] + } + } + } + } + }, + "panel-107": { + "kind": "Panel", + "spec": { + "id": 107, + "title": "batch_certification_latency", + "description": "snarkos_bft_batch_certification_latency_secs_sum{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_bft_batch_certification_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1h]))", + "projectName": "$project", + "step": "$interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "7d", + "interval": "1h" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] + } + } + } + } + }, + "panel-108": { + "kind": "Panel", + "spec": { + "id": 108, + "title": "Versions", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "__expr__", + "version": "v0", + "datasource": { + "name": "__expr__" + }, + "spec": { + "expression": "$A + $B + $C", + "type": "math" + } + }, + "refId": "reduce", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "intervalMs": 0, + "promQLQuery": { + "expr": "count by (job,snarkos_network,snarkos_version) (up{snarkos_network=\"[[network]]\",instance=\"localhost:9000\"})", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_version", + "=~", + ".*", + "AND", + "resource.label.instance", + "=", + "localhost:9000", + "AND", + "metric.label.snarkos_network", + "=~", + "mainnet", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/up/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_COUNT", + "preprocessor": "none", + "projectName": "snarkos-snapshots", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "intervalMs": 0, + "promQLQuery": { + "expr": "count by (job,snarkos_network,snarkos_version) (up{snarkos_network=\"[[network]]\",instance=\"localhost:9000\"})", + "projectName": "$project", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_version", + "=~", + ".*", + "AND", + "resource.label.instance", + "=", + "localhost:9000", + "AND", + "metric.label.snarkos_network", + "=~", + "mainnet", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/up/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_COUNT", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "intervalMs": 0, + "promQLQuery": { + "expr": "count by (job,snarkos_network,snarkos_version) (up{snarkos_network=\"[[network]]\",instance=\"localhost:9000\"})", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_version", + "=~", + ".*", + "AND", + "resource.label.instance", + "=", + "localhost:9000", + "AND", + "metric.label.snarkos_network", + "=~", + "mainnet", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/up/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_COUNT", + "preprocessor": "none", + "projectName": "snarkos-snapshots", + "view": "FULL" + } + } + }, + "refId": "C", + "hidden": true + } + } + ], + "transformations": [], + "queryOptions": {} + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "state-timeline", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "alignValue": "left", + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "mergeValues": true, + "rowHeight": 0.9, + "showValue": "auto", + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.snarkos_network} / ${__field.labels.snarkos_version}", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisPlacement": "auto", + "fillOpacity": 70, + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineWidth": 0, + "spanNulls": false + } + }, + "overrides": [] + } + } + } + } + }, + "panel-110": { + "kind": "Panel", + "spec": { + "id": 110, + "title": "Disk Usage", + "description": "agent.googleapis.com/disk/percent_used{state=used}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n avg_over_time(\n {\"__name__\"=\"agent.googleapis.com/disk/percent_used\",\"monitored_resource\"=\"gce_instance\",device!~\".*loop.*\",device=~\"/dev/(sda|nvme.*p)[0-9].*\",\"state\"=\"used\"}[$__interval]\n )\n)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "C", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n avg_over_time(\n {\"__name__\"=\"agent.googleapis.com/disk/percent_used\",\"monitored_resource\"=\"gce_instance\",device!~\".*loop.*\",device=~\"/dev/nvme0n2\",\"state\"=\"used\"}[$rate_interval]\n )\n)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "mnt-snarkos", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "displayName": "SnarkOS - ${__field.labels.instance_id}", + "unit": "percent", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "dark-green" + }, + { + "value": 50, + "color": "green" + }, + { + "value": 70, + "color": "semi-dark-orange" + }, + { + "value": 80, + "color": "semi-dark-red" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-111": { + "kind": "Panel", + "spec": { + "id": 111, + "title": "Disk Usage", + "description": "agent.googleapis.com/disk/percent_used{state=used}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n avg_over_time(\n {\"__name__\"=\"agent.googleapis.com/disk/percent_used\",\"monitored_resource\"=\"gce_instance\",device!~\".*loop.*\",device=~\"/dev/(sda|nvme.*p)[0-9].*\",\"state\"=\"used\"}[$__interval]\n )\n)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "C", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n avg_over_time(\n {\"__name__\"=\"agent.googleapis.com/disk/percent_used\",\"monitored_resource\"=\"gce_instance\",device!~\".*loop.*\",device=~\"/dev/nvme0n2\",\"state\"=\"used\"}[1d]\n )\n)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "mnt-snarkos", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n avg_over_time(\n {\"__name__\"=\"agent.googleapis.com/disk/bytes_used\",\"monitored_resource\"=\"gce_instance\",device!~\".*loop.*\",device=~\"/dev/nvme0n2\",\"state\"=\"used\"}[1d]\n )\n)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": true + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "120d", + "interval": "1d" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "delta", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "/mnt/snarkos - ${__field.labels.instance_id}", + "unit": "percent", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-112": { + "kind": "Panel", + "spec": { + "id": 112, + "title": "Disk Usage", + "description": "agent.googleapis.com/disk/percent_used{state=used}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n avg_over_time(\n {\"__name__\"=\"agent.googleapis.com/disk/bytes_used\",\"monitored_resource\"=\"gce_instance\",device!~\".*loop.*\",device=~\"/dev/nvme0n2\",\"state\"=\"used\"}[1d]\n )\n) / 1024", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "120d", + "interval": "1d" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "mean", + "delta", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "/mnt/snarkos - ${__field.labels.instance_id}", + "unit": "deckbytes", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "transparent" + }, + { + "value": 2147483648, + "color": "green" + }, + { + "value": 3221225472, + "color": "#EAB839" + }, + { + "value": 3758096384, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic-by-name", + "seriesBy": "last" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMax": 2362232012, + "axisSoftMin": 1073741824, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "area" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-12": { + "kind": "Panel", + "spec": { + "id": 12, + "title": "Block Height (Stat View)", + "description": "Same data as Block Height above, just a different view.", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "datasource", + "version": "v0", + "datasource": { + "name": "-- Dashboard --" + }, + "spec": { + "panelId": 14 + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": {} + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "continuous-greens" + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-13": { + "kind": "Panel", + "spec": { + "id": 13, + "title": "Avg Block Time /per min", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "( 1 / rate(snarkos_bft_height_total{}[$__interval])\n) * 1000", + "projectName": "$project", + "step": "$interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "${project}", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "options": { + "reducers": [ + "mean" + ] + } + } + } + ], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "max" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "ms", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "purple" + }, + { + "value": 10000, + "color": "red" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-14": { + "kind": "Panel", + "spec": { + "id": 14, + "title": "Block Height", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "snarkos_bft_height_total{origin_prometheus=\"${network}\",job=~\"$origin\"}", + "projectName": "${project}", + "step": "1m" + }, + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_height_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "range", + "logmin", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-15": { + "kind": "Panel", + "spec": { + "id": 15, + "title": "Certificate Commit Latency (WRONG???)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 2 + }, + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-16": { + "kind": "Panel", + "spec": { + "id": 16, + "title": "Commit Rounds Latency (seconds)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_bft_commit_rounds_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "transparent" + }, + { + "value": 10, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMin": 0, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "area" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-17": { + "kind": "Panel", + "spec": { + "id": 17, + "title": "SnarkOS Router Connected Total", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "snarkos_router_connected_total{origin_prometheus=\"${network}\",job=~\"$origin\"}", + "projectName": "${project}", + "step": "1m" + }, + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_router_connected_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "5m" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull" + ], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic-by-name" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMin": 0, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-2": { + "kind": "Panel", + "spec": { + "id": 2, + "title": "Logs - $severity / $role", + "description": "newest first", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "googlecloud-logging-datasource", + "version": "v0", + "datasource": { + "name": "${DS_LOGGING}" + }, + "spec": { + "bucketId": "", + "projectId": "[[project]]", + "queryText": "logName:\"/snarkos_log\"\nlabels.\"provable.com/role\"=~\"[[role]]\"\nseverity>=\"[[severity]]\"\nSEARCH(\"[[search]]\")", + "viewId": "" + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": {} + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "logs", + "version": "13.0.0-22478626928", + "spec": { + "options": { + "dedupStrategy": "signature", + "detailsMode": "sidebar", + "enableInfiniteScrolling": true, + "enableLogDetails": true, + "fontSize": "default", + "prettifyLogMessage": false, + "showControls": true, + "showFieldSelector": false, + "showLabels": false, + "showTime": true, + "sortOrder": "Descending", + "syntaxHighlighting": true, + "timestampResolution": "ms", + "unwrappedColumns": false, + "wrapLogMessage": true + }, + "fieldConfig": { + "defaults": {}, + "overrides": [] + } + } + } + } + }, + "panel-20": { + "kind": "Panel", + "spec": { + "id": 20, + "title": "SNAPSHOTS - Last Run", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "promQLQuery": { + "expr": "snarkos_snapshot_task_start_timestamp_ms{snarkos_network=\"$network\"}\n", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_snapshot_task_start_timestamp_ms/gauge" + ], + "groupBys": [ + "metric.label.snarkos_network", + "metric.label.snarkos_version", + "metric.label.public_ip", + "metric.label.instance_name", + "metric.label.machine_type" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "snarkos-snapshots", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "options": { + "includeTimeField": false, + "labelsToFields": true, + "mode": "seriesToRows", + "reducers": [ + "lastNotNull", + "last" + ] + } + } + }, + { + "kind": "joinByField", + "spec": { + "id": "joinByField", + "disabled": true, + "options": { + "byField": "metric.label.network", + "mode": "outerTabular" + } + } + }, + { + "kind": "organize", + "spec": { + "id": "organize", + "options": { + "excludeByName": { + "Field": true, + "__name__": true, + "cluster": true, + "group": true, + "instance": true, + "instance_name": true, + "job": true, + "location": true, + "machine_type": true, + "metric.label.machine_type": true, + "metric.label.network": false, + "metric.label.public_ip": false, + "metric.label.snarkos_network": true, + "metric.label.snarkos_version": true, + "metric.label.snarkos_version 2": true, + "metric_project_id": true, + "namespace": true, + "network": true, + "origin_prometheus": true, + "otel_scope_name": true, + "otel_scope_version": true, + "project_id": true, + "public_ip": true, + "resource.label.project_id": true, + "resource.label.project_id 1": true, + "resource.label.project_id 2": true, + "resource.type": true, + "resource.type 1": true, + "resource.type 2": true, + "snarkos_role": true, + "snarkos_version": false, + "vpc": true + }, + "includeByName": {}, + "indexByName": { + "Field": 7, + "Last": 8, + "Last *": 9, + "metric.label.instance_name": 1, + "metric.label.machine_type": 6, + "metric.label.public_ip": 5, + "metric.label.snarkos_network": 0, + "metric.label.snarkos_version": 2, + "resource.label.project_id": 3, + "resource.type": 4 + }, + "orderByMode": "manual", + "renameByName": { + "Last": "Last Run", + "Last *": "Last Run", + "Trend #A": "Last Run Started", + "Trend #B": "Last Run Start Time", + "metric.label.instance_name": "Instance Name", + "metric.label.machine_type": "Machine Type", + "metric.label.network": "Network", + "metric.label.public_ip": "Public IP", + "metric.label.snarkos_network": "Network", + "metric.label.snarkos_version": "SnarkOS Version", + "metric.label.snarkos_version 1": "SnarkOS Version" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "24h", + "interval": "$interval", + "hideTimeOverride": true + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "table", + "version": "13.0.0-22843068776.patch2", + "spec": { + "options": { + "cellHeight": "lg", + "enablePagination": false, + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "Last Run" + } + ] + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "blue" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "filterable": false, + "footer": { + "reducers": [] + }, + "inspect": true, + "wrapHeaderText": false + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Last *" + }, + "properties": [ + { + "id": "unit", + "value": "dateTimeFromNow" + }, + { + "id": "custom.cellOptions", + "value": { + "type": "color-text" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "metric.label.machine_type" + }, + "properties": [ + { + "id": "mappings", + "value": [ + { + "options": { + "pattern": ".*/(.*)", + "result": { + "index": 0, + "text": "$1" + } + }, + "type": "regex" + } + ] + }, + { + "id": "custom.cellOptions", + "value": { + "type": "pill" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "metric.label.snarkos_version" + }, + "properties": [ + { + "id": "custom.cellOptions", + "value": { + "type": "pill" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Instance Name" + }, + "properties": [ + { + "id": "custom.width", + "value": 293 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Last" + }, + "properties": [ + { + "id": "unit", + "value": "dateTimeAsIso" + } + ] + } + ] + } + } + }, + "transparent": true + } + }, + "panel-21": { + "kind": "Panel", + "spec": { + "id": 21, + "title": "SnarkOS - Instances and Versions", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_version", + "=~", + ".*", + "AND", + "resource.label.instance", + "=", + "localhost:9000", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/up/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_COUNT", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_version", + "=~", + ".*", + "AND", + "resource.label.instance", + "=", + "localhost:9000", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/up/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_COUNT", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "options": { + "labelsToFields": true, + "reducers": [ + "last" + ] + } + } + }, + { + "kind": "filterFieldsByName", + "spec": { + "id": "filterFieldsByName", + "options": { + "include": { + "names": [ + "metric.label.instance_name", + "metric.label.machine_type", + "metric.label.public_ip", + "metric.label.snarkos_network", + "metric.label.snarkos_role", + "metric.label.snarkos_version", + "resource.label.location" + ] + } + } + } + }, + { + "kind": "organize", + "spec": { + "id": "organize", + "options": { + "excludeByName": { + "metric.label.snarkos_role": true + }, + "includeByName": {}, + "indexByName": { + "metric.label.instance_name": 1, + "metric.label.machine_type": 5, + "metric.label.public_ip": 4, + "metric.label.snarkos_network": 0, + "metric.label.snarkos_role": 3, + "metric.label.snarkos_version": 2, + "resource.label.location": 6 + }, + "orderByMode": "manual", + "renameByName": { + "metric.label.instance_name": "Instance Name", + "metric.label.machine_type": "Machine Type", + "metric.label.public_ip": "Public IP", + "metric.label.snarkos_network": "Network", + "metric.label.snarkos_role": "Role", + "metric.label.snarkos_version": "SnarkOS Version", + "resource.label.location": "Location", + "resource.label.namespace": "Instance ID" + } + } + } + } + ], + "queryOptions": {} + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "table", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "cellHeight": "sm", + "frozenColumns": {}, + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "SnarkOS Version" + } + ] + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "fixed", + "fixedColor": "#5e5e60" + }, + "custom": { + "align": "auto", + "cellOptions": { + "applyToRow": false, + "mode": "basic", + "type": "color-background" + }, + "filterable": false, + "footer": { + "reducers": [] + }, + "inspect": false, + "wrapHeaderText": false, + "wrapText": false + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "metric.label.machine_type" + }, + "properties": [ + { + "id": "mappings", + "value": [ + { + "options": { + "pattern": ".*/(.*)", + "result": { + "index": 0, + "text": "$1" + } + }, + "type": "regex" + } + ] + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "resource.label.namespace" + }, + "properties": [ + { + "id": "mappings", + "value": [ + { + "options": { + "pattern": "(.*)/", + "result": { + "color": "red", + "index": 0, + "text": "$1" + } + }, + "type": "regex" + } + ] + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Network" + }, + "properties": [ + { + "id": "custom.width", + "value": 117 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Instance Name" + }, + "properties": [ + { + "id": "custom.width", + "value": 225 + } + ] + } + ] + } + } + } + } + }, + "panel-22": { + "kind": "Panel", + "spec": { + "id": 22, + "title": "SNAPSHOTS - Task + Duration", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "(\n (snarkos_snapshot_task_end_timestamp_ms{snarkos_network=\"$network\"} - snarkos_snapshot_task_start_timestamp_ms{snarkos_network=\"$network\"}\n ) / 1000 > 0\n) OR (\n (snarkos_snapshot_task_start_timestamp_ms{snarkos_network=\"$network\"} / 1000) - time()\n)", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_snapshot_last_run_start_timestamp_ms/gauge" + ], + "groupBys": [ + "metric.label.snarkos_network" + ], + "perSeriesAligner": "ALIGN_NONE", + "preprocessor": "none", + "projectName": "snarkos-snapshots", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "options": { + "includeTimeField": false, + "labelsToFields": true, + "mode": "seriesToRows", + "reducers": [ + "lastNotNull", + "last" + ] + } + } + }, + { + "kind": "groupBy", + "spec": { + "id": "groupBy", + "options": { + "fields": { + "Last": { + "aggregations": [], + "operation": "groupby" + }, + "Last *": { + "aggregations": [], + "operation": "groupby" + }, + "snarkos_network": { + "aggregations": [], + "operation": "groupby" + }, + "snarkos_version": { + "aggregations": [], + "operation": "groupby" + } + } + } + } + }, + { + "kind": "organize", + "spec": { + "id": "organize", + "options": { + "excludeByName": { + "Field": true, + "Last *": false, + "Trend #A": false, + "__name__": true, + "cluster": true, + "group": true, + "instance": true, + "instance_name": true, + "job": true, + "location": true, + "machine_type": true, + "metric_project_id": true, + "namespace": true, + "network": true, + "origin_prometheus": true, + "otel_scope_name": true, + "otel_scope_version": true, + "project_id": true, + "public_ip": true, + "snarkos_network": true, + "snarkos_role": true, + "snarkos_version": false, + "vpc": true + }, + "includeByName": {}, + "indexByName": { + "Trend #A": 3, + "__name__": 5, + "cluster": 7, + "group": 20, + "instance": 8, + "instance_name": 4, + "job": 9, + "location": 10, + "machine_type": 11, + "metric_project_id": 12, + "namespace": 13, + "network": 0, + "origin_prometheus": 14, + "otel_scope_name": 15, + "otel_scope_version": 16, + "project_id": 6, + "public_ip": 17, + "snarkos_network": 1, + "snarkos_role": 18, + "snarkos_version": 2, + "vpc": 19 + }, + "orderByMode": "auto", + "renameByName": { + "Last": "State", + "Last *": "Runtime", + "Trend #A": "Last Run", + "snarkos_network": "Network", + "snarkos_version": "SnarkOS Version" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "24h", + "interval": "$interval", + "hideTimeOverride": true + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "table", + "version": "13.0.0-22843068776.patch2", + "spec": { + "options": { + "cellHeight": "sm", + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "SnarkOS Version" + } + ] + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "purple" + }, + { + "value": 0, + "color": "light-blue" + }, + { + "value": 7200, + "color": "green" + }, + { + "value": 21600, + "color": "red" + } + ] + }, + "color": { + "mode": "thresholds", + "fixedColor": "text" + }, + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "footer": { + "reducers": [] + }, + "inspect": false + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "State" + }, + "properties": [ + { + "id": "unit", + "value": "s" + }, + { + "id": "color", + "value": { + "mode": "thresholds" + } + }, + { + "id": "custom.cellOptions", + "value": { + "type": "color-text" + } + }, + { + "id": "mappings", + "value": [ + { + "options": { + "from": -21600, + "result": { + "color": "yellow", + "index": 0, + "text": "RUNNING" + }, + "to": 0 + }, + "type": "range" + }, + { + "options": { + "result": { + "color": "red", + "index": 1, + "text": "LAST RUN INCOMPLETE" + }, + "to": -21599 + }, + "type": "range" + }, + { + "options": { + "from": 0, + "result": { + "color": "green", + "index": 2, + "text": "COMPLETED" + }, + "to": 21600 + }, + "type": "range" + } + ] + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Runtime" + }, + "properties": [ + { + "id": "unit", + "value": "s" + }, + { + "id": "custom.cellOptions", + "value": { + "type": "color-text" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "snarkos_version" + }, + "properties": [ + { + "id": "custom.cellOptions", + "value": { + "type": "pill" + } + } + ] + } + ] + } + } + }, + "transparent": true + } + }, + "panel-23": { + "kind": "Panel", + "spec": { + "id": 23, + "title": "SnarkOS BFT Connecting", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_connecting_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "gauge", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "barShape": "flat", + "barWidthFactor": 0.5, + "effects": { + "barGlow": false, + "centerGlow": false, + "gradient": true + }, + "endpointMarker": "point", + "minVizHeight": 75, + "minVizWidth": 75, + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "segmentCount": 1, + "segmentSpacing": 0.3, + "shape": "gauge", + "showThresholdLabels": false, + "showThresholdMarkers": true, + "sizing": "auto", + "sparkline": true, + "text": { + "titleSize": 18 + }, + "textMode": "auto" + }, + "fieldConfig": { + "defaults": { + "unit": "pending", + "decimals": 0, + "min": 0, + "max": 11, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 1, + "color": "super-light-green" + }, + { + "value": 2, + "color": "#EAB839" + }, + { + "value": 4, + "color": "red" + }, + { + "value": 8, + "color": "dark-red" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-3": { + "kind": "Panel", + "spec": { + "id": 3, + "title": "Leaders Elected", + "description": "snarkos_bft_leaders_elected_total", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "sum by (instance_id) ({\"__name__\"=\"agent.googleapis.com/memory/percent_used\"})\n", + "projectName": "provable-testnet", + "step": "" + }, + "queryType": "timeSeriesList", + "sloQuery": { + "alignmentPeriod": "cloud-monitoring-auto", + "lookbackPeriod": "", + "perSeriesAligner": "ALIGN_MEAN", + "projectName": "$project", + "selectorName": "select_slo_health", + "serviceId": "", + "serviceName": "", + "sloId": "", + "sloName": "" + }, + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_leaders_elected_total/counter" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_DELTA", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "sortBy", + "spec": { + "id": "sortBy", + "options": {} + } + } + ], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "decimals": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "super-light-green" + }, + { + "value": 0, + "color": "semi-dark-red" + }, + { + "value": 15, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "noValue": "No Validators Found" + }, + "overrides": [] + } + } + } + } + }, + "panel-30": { + "kind": "Panel", + "spec": { + "id": 30, + "title": "Current Committed Round", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_last_committed_round/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "delta" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-32": { + "kind": "Panel", + "spec": { + "id": 32, + "title": "SNAPSHOTS - Service State", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "({\"node_systemd_unit_state\",name=\"snarkos-snapshot.timer\",network=\"[[network]]\",\"state\"=\"active\"} > 0)\nOR -({\"node_systemd_unit_state\",name=\"snarkos-snapshot.timer\",network=\"[[network]]\",\"state\"=~\"inactive|failed\"} > 0)", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "({\"node_systemd_unit_state\",name=\"snarkos.service\",network=\"[[network]]\",\"state\"=\"active\"} > 0)\nOR -({\"node_systemd_unit_state\",name=\"snarkos.service\",network=\"[[network]]\",\"state\"=~\"inactive|failed\"} > 0)", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "{\"node_systemd_unit_state\",name=\"snarkos-snapshot.timer\",network=\"[[network]]\"} > 0", + "projectName": "snarkos-snapshots", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "C", + "hidden": true + } + } + ], + "transformations": [ + { + "kind": "joinByField", + "spec": { + "id": "joinByField", + "disabled": true, + "options": { + "byField": "Value", + "mode": "inner" + } + } + } + ], + "queryOptions": { + "timeFrom": "5m", + "interval": "1m", + "hideTimeOverride": true + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-22843068776.patch2", + "spec": { + "options": { + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "text": { + "titleSize": 18, + "valueSize": 24 + }, + "textMode": "value_and_name", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.name} (${__field.labels.state})", + "decimals": 0, + "mappings": [ + { + "type": "value", + "options": { + "1": { + "text": "👍", + "color": "dark-green", + "index": 0 + }, + "-1": { + "text": "⚠️", + "color": "red", + "index": 1 + } + } + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "transparent" + }, + { + "value": 1, + "color": "dark-blue" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + }, + "transparent": true + } + }, + "panel-33": { + "kind": "Panel", + "spec": { + "id": 33, + "title": "Avg Transaction Latency (Seconds)", + "description": "Avg time to when node first sees transaction to when it is included in a block", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg(avg_over_time(snarkos_consensus_transmission_latency{origin_prometheus=\"${network}\", transmission_type=\"transaction\",job=~\".*_validator\"}[1m])) by (instance_name)", + "projectName": "${project}", + "step": "10s" + }, + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.transmission_type", + "=", + "transaction", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_transmission_latency/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name,public_ip,transmission_type) (snarkos_consensus_transmission_latency{snarkos_network=\"[[network]]\",snarkos_role=~\"[[role]]\",transmission_type=\"transaction\"})", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name} / ${__field.labels.transmission_type}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-36": { + "kind": "Panel", + "spec": { + "id": 36, + "title": "Transmissions by Type", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "Accepted Executes", + "promQLQuery": { + "expr": "max(snarkos_blocks_accepted_execute{origin_prometheus=\"${network}\",job=\"*_validator\"})", + "projectName": "${project}", + "step": "1m" + }, + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "resource.label.job", + "=", + "*_validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_accepted_execute/gauge" + ], + "groupBys": [ + "resource.label.job" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "Rejected Executes", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "resource.label.job", + "=", + "*_validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_rejected_execute/gauge" + ], + "groupBys": [ + "resource.label.job" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "Accepted Deploys", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "resource.label.job", + "=", + "*_validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_accepted_deploy/gauge" + ], + "groupBys": [ + "resource.label.job" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "C", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "Rejected Deploys", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "resource.label.job", + "=", + "*_validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_rejected_deploy/gauge" + ], + "groupBys": [ + "resource.label.job" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "D", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "Aborted Solutions", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "resource.label.job", + "=", + "*_validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_aborted_solutions/gauge" + ], + "groupBys": [ + "resource.label.job" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "E", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "Aborted Transactions", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "resource.label.job", + "=", + "*_validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_aborted_transactions/gauge" + ], + "groupBys": [ + "resource.label.job" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "F", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-37": { + "kind": "Panel", + "spec": { + "id": 37, + "title": "Confirmed Transactions", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "max by (instance_name) (increase(snarkos_blocks_transactions_total{snarkos_network=~\"[[network]]\",snarkos_role=~\"[[role]]\"}[1h]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "Maximum", + "mode": "reduceRow", + "reduce": { + "reducer": "max" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "Transactions", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "bars", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Maximum" + }, + "properties": [ + { + "id": "custom.drawStyle", + "value": "line" + }, + { + "id": "custom.fillOpacity", + "value": 0 + }, + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-38": { + "kind": "Panel", + "spec": { + "id": 38, + "title": "Confirmed Solutions (per-hour)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "max by (instance_name) (increase(snarkos_blocks_solutions_total{snarkos_network=~\"[[network]]\",snarkos_role=~\"[[role]]\"}[1h]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_solutions_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "Maximum", + "mode": "reduceRow", + "reduce": { + "reducer": "max" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": true, + "maxHeight": 600, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "bars", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Maximum" + }, + "properties": [ + { + "id": "custom.drawStyle", + "value": "line" + }, + { + "id": "custom.fillOpacity", + "value": 0 + }, + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-39": { + "kind": "Panel", + "spec": { + "id": 39, + "title": "Avg Solution Latency (Seconds)", + "description": "Avg time to when node first sees solution to when it is included in a block", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.public_ip}} {{metric.label.instance_name}} (GCP)", + "promQLQuery": { + "expr": "avg(\n avg_over_time(\n snarkos_consensus_transmission_latency{transmission_type=\"solution\", snarkos_role=~\"[[role]]\"}[1m]\n )\n) by (instance_name)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "+60s", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.transmission_type", + "=", + "solution", + "AND", + "resource.label.job", + "=", + "*_validator", + "AND", + "resource.label.job", + "=~", + "$origin", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_transmission_latency/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "mean", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineStyle": { + "fill": "solid" + }, + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-4": { + "kind": "Panel", + "spec": { + "id": 4, + "title": "", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [], + "transformations": [], + "queryOptions": {} + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "text", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "code": { + "language": "plaintext", + "showLineNumbers": false, + "showMiniMap": false + }, + "content": "# ${project}\n****", + "mode": "markdown" + }, + "fieldConfig": { + "defaults": {}, + "overrides": [] + } + } + }, + "transparent": true + } + }, + "panel-40": { + "kind": "Panel", + "spec": { + "id": 40, + "title": "Unconfirmed Transactions", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "max by (instance_name) (increase(snarkos_consensus_unconfirmed_transactions_total{snarkos_network=~\"[[network]]\",snarkos_role=~\"[[role]]\"}[1h])) > 0", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_unconfirmed_transactions_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "Maximum", + "mode": "reduceRow", + "reduce": { + "reducer": "max" + }, + "replaceFields": false + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "delta" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false, + "sortBy": "Delta", + "sortDesc": true + }, + "tooltip": { + "hideZeros": true, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "none", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "Transactions", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Maximum" + }, + "properties": [ + { + "id": "custom.drawStyle", + "value": "bars" + }, + { + "id": "custom.fillOpacity", + "value": 100 + }, + { + "id": "color", + "value": { + "fixedColor": "semi-dark-purple", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-42": { + "kind": "Panel", + "spec": { + "id": 42, + "title": "Avg TPS", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg(rate(snarkos_blocks_transactions_total{snarkos_network=\"${network}\",snarkos_role=\"validator\"}[$rate_interval]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-43": { + "kind": "Panel", + "spec": { + "id": 43, + "title": "Avg Solutions Per Second", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg(rate(snarkos_blocks_solutions_total{snarkos_network=\"${network}\",snarkos_role=\"validator\"}[$rate_interval]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-44": { + "kind": "Panel", + "spec": { + "id": 44, + "title": "Avg Unconfirmed Solutions Per Second", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg(rate(snarkos_consensus_unconfirmed_solutions_total{snarkos_network=\"${network}\",snarkos_role=\"validator\"}[$rate_interval]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-45": { + "kind": "Panel", + "spec": { + "id": 45, + "title": "Avg Unconfirmed Transactions Per Second", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg(rate(snarkos_consensus_unconfirmed_transactions_total{snarkos_network=\"${network}\",snarkos_role=\"validator\"}[$rate_interval]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-47": { + "kind": "Panel", + "spec": { + "id": 47, + "title": "Average TPS Timeseries (rate/5m)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (public_ip, instance_name) (rate(snarkos_blocks_transactions_total{origin_prometheus=\"${network}\",job=~\".*_validator\"}[1h]))", + "projectName": "$project", + "step": "$interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "14d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 0, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.lineStyle", + "value": { + "fill": "solid" + } + }, + { + "id": "color", + "value": { + "fixedColor": "semi-dark-blue", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/public_ip/" + }, + "properties": [ + { + "id": "color", + "value": { + "mode": "palette-classic" + } + }, + { + "id": "displayName", + "value": "${__field.labels.public_ip} ${__field.labels.instance_name} (GCP)" + } + ] + } + ] + } + } + } + } + }, + "panel-48": { + "kind": "Panel", + "spec": { + "id": 48, + "title": "Stale unconfirmed transmissions", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.public_ip}} {{metric.label.instance_name}} (GCP)", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_stale_unconfirmed_transmissions/counter" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "rate", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "disabled": true, + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 3 + }, + { + "id": "custom.lineStyle", + "value": { + "fill": "solid" + } + }, + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-49": { + "kind": "Panel", + "spec": { + "id": 49, + "title": "Average TPS Timeseries", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (public_ip, instance_name) (rate(snarkos_blocks_transactions_total{snarkos_network=\"${network}\",snarkos_role=~\"$role\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 0, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.lineStyle", + "value": { + "fill": "solid" + } + }, + { + "id": "color", + "value": { + "fixedColor": "semi-dark-blue", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/public_ip/" + }, + "properties": [ + { + "id": "color", + "value": { + "mode": "palette-classic" + } + }, + { + "id": "displayName", + "value": "${__field.labels.public_ip} ${__field.labels.instance_name} (GCP)" + } + ] + } + ] + } + } + } + } + }, + "panel-50": { + "kind": "Panel", + "spec": { + "id": 50, + "title": "Current Committee Stake", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkvm_ledger_committee_total_stake/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "mean", + "max", + "logmin" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-53": { + "kind": "Panel", + "spec": { + "id": 53, + "title": "Coinbase Target", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_coinbase_target/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "max by (snarkos_network)(snarkos_bft_height_total{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"})", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "mean", + "max", + "logmin" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "{snarkos_network=\"mainnet\"}" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit" + } + ] + } + ] + } + } + } + } + }, + "panel-54": { + "kind": "Panel", + "spec": { + "id": 54, + "title": "Primary Proposal Round", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{resource.label.project_id}}-{{metric.label.instance_name}}", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_primary_proposal_round/gauge" + ], + "groupBys": [ + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "center", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "none", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "continuous-RdYlGr" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-57": { + "kind": "Panel", + "spec": { + "id": 57, + "title": "Coinbase Target", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_coinbase_target/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-58": { + "kind": "Panel", + "spec": { + "id": 58, + "title": "Current Committee Stake", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkvm_ledger_committee_total_stake/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "mean", + "max", + "logmin" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-59": { + "kind": "Panel", + "spec": { + "id": 59, + "title": "Coinbase Target", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_coinbase_target/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "30d", + "interval": "1d" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "mean", + "max", + "min" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "bars", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-60": { + "kind": "Panel", + "spec": { + "id": 60, + "title": "Cumulative Proof Target", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_cumulative_proof_target/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "30d", + "interval": "1d" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-61": { + "kind": "Panel", + "spec": { + "id": 61, + "title": "Cumulative Proof Target", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_blocks_cumulative_proof_target/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "mean", + "max", + "logmin" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-62": { + "kind": "Panel", + "spec": { + "id": 62, + "title": "Current Committee Stake", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkvm_ledger_committee_total_stake/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "30d", + "interval": "1d" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "mean", + "max", + "logmin" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "short", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-64": { + "kind": "Panel", + "spec": { + "id": 64, + "title": "Block Height", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "snarkos_bft_height_total{origin_prometheus=\"${network}\",job=~\"$origin\"}", + "projectName": "${project}", + "step": "1m" + }, + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_height_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "delta" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-65": { + "kind": "Panel", + "spec": { + "id": 65, + "title": "Block Height (rate/15m)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "max(increase(snarkos_bft_height_total{snarkos_network=\"${network}\"}[1m]))\n", + "projectName": "${project}", + "step": "1m" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_height_total/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "15m", + "interval": "1m" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "Block/min", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "red" + }, + { + "value": 1, + "color": "blue" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-66": { + "kind": "Panel", + "spec": { + "id": 66, + "title": "Block Height (increase per-hr)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "max(increase(snarkos_bft_height_total{snarkos_network=\"${network}\"}[1h]))", + "projectName": "${project}", + "step": "$interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_height_total/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "background", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "Block/hr", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "dark-red" + }, + { + "value": 10, + "color": "dark-orange" + }, + { + "value": 1000, + "color": "dark-green" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-68": { + "kind": "Panel", + "spec": { + "id": 68, + "title": "Current Block Height", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (snarkos_bft_height_total{snarkos_network=\"${network}\",snarkos_role=\"validator\"})", + "projectName": "${project}", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_NONE", + "filters": [ + "metric.label.snarkos_network", + "=", + "$network", + "AND", + "metric.label.snarkos_role", + "=~", + "$role", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_height_total/gauge" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "background", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "text" + } + ] + }, + "color": { + "mode": "shades", + "fixedColor": "dark-blue" + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-7": { + "kind": "Panel", + "spec": { + "id": 7, + "title": "Consensus Block Latency", + "description": "snarkos_consensus_block_latency_secs_sum", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name,public_ip) (rate(snarkos_consensus_block_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "noValue": "No Validators Found", + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-70": { + "kind": "Panel", + "spec": { + "id": 70, + "title": "Certificate Commit Latency", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": true, + "maxHeight": 600, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 0, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-71": { + "kind": "Panel", + "spec": { + "id": 71, + "title": "Consensus Block Latency", + "description": "snarkos_consensus_block_latency_secs_sum", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "promQLQuery": { + "expr": "sum by (instance_id) ({\"__name__\"=\"agent.googleapis.com/memory/percent_used\"})\n", + "projectName": "provable-testnet", + "step": "" + }, + "queryType": "timeSeriesList", + "sloQuery": { + "alignmentPeriod": "cloud-monitoring-auto", + "lookbackPeriod": "", + "perSeriesAligner": "ALIGN_MEAN", + "projectName": "$project", + "selectorName": "select_slo_health", + "serviceId": "", + "serviceName": "", + "sloId": "", + "sloName": "" + }, + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_block_latency_secs_sum/summary:counter" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "rate", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "sortBy", + "spec": { + "id": "sortBy", + "options": {} + } + } + ], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic-by-name" + }, + "noValue": "No Validators Found", + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMax": 1.2, + "axisSoftMin": 0.8, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-72": { + "kind": "Panel", + "spec": { + "id": 72, + "title": "Current Committed Round", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_last_committed_round/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MAX", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "lastNotNull", + "delta" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-73": { + "kind": "Panel", + "spec": { + "id": 73, + "title": "Logs - Important", + "description": "extensive filter query for finding abnormal log events", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "googlecloud-logging-datasource", + "version": "v0", + "datasource": { + "name": "${DS_LOGGING}" + }, + "spec": { + "bucketId": "", + "projectId": "provable-[[network]]", + "queryText": "logName:\"/snarkos_log\"\nlabels.\"provable.com/role\"=~\"[[role]]\"\nseverity>=\"[[severity]]\"\n-jsonPayload.message:\"I/O error: timed out\"\n-jsonPayload.message:\"I/O error: Connection refused (os error 111)\"\n-jsonPayload.message:\"I/O error: the peer disconnected before sending\"\n-jsonPayload.message=~\"Certificate for round * already exists in storage\"\n-jsonPayload.message:\"Could not initiate connect to bootstrap peer\"\n-jsonPayload.message:\"Duplicate signature from\"\n-jsonPayload.message:\"(outdated)\"\n-jsonPayload.message:\"(maximum peers reached)\"\n-jsonPayload.message:\"already reached the maximum number of\"\n-jsonPayload.message:\"for being already connected\"\n-jsonPayload.message:\"The sync request was removed because we already advanced\"\n-jsonPayload.message:\"connected and immediately disconnected\"\n-jsonPayload.message:\"Attempted to send to a non-connected peer\"\n-jsonPayload.message:\"Failed to add unconfirmed execution transaction\"\n-jsonPayload.message:\"Failed to add unconfirmed solution\"\n-jsonPayload.message=~\"Failed to send .* not connected\"\n-jsonPayload.message=~\"Peer .* has not communicated in .*\"\n-jsonPayload.message:\"Cannot process a primary certificate\"\n-jsonPayload.message:\"Cannot sign a batch at round\"\n-jsonPayload.message:\"Cannot store a certificate\"\n-jsonPayload.message:\"Cannot store a signature for batch\"\n-jsonPayload.message:\"Primary is safely skipping a batch proposal\"\n-jsonPayload.message:\"Unable to fetch transmission\"\n-jsonPayload.message:\"Unable to connect to\"\n-jsonPayload.message:\"Unable to resolve the listener IP address\"\n", + "viewId": "" + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "googlecloud-logging-datasource", + "version": "v0", + "datasource": { + "name": "${DS_LOGGING}" + }, + "spec": { + "bucketId": "", + "projectId": "$project", + "queryText": "logName:\"/snarkos_log\"\nlabels.\"provable.com/role\"=~\"${role}\"\nseverity>=\"${severity}\"\n//\n// ======================================================================= =\n//\n-jsonPayload.message:\"(maximum peers reached)\"\n-jsonPayload.message:\"(outdated)\"\n-jsonPayload.message:\"already reached the maximum number of\"\n-jsonPayload.message:\"Attempted to send to a non-connected peer\"\n-jsonPayload.message:\"Cannot process a primary certificate\"\n-jsonPayload.message:\"Cannot sign a batch at round\"\n-jsonPayload.message:\"Cannot store a certificate\"\n-jsonPayload.message:\"Cannot store a signature for batch\"\n-jsonPayload.message:\"connected and immediately disconnected\"\n-jsonPayload.message:\"Could not initiate connect to bootstrap peer\"\n-jsonPayload.message:\"Duplicate signature from\"\n\n-jsonPayload.message:\"Failed to add unconfirmed execution transaction\"\n-jsonPayload.message:\"Failed to add unconfirmed solution\"\n-jsonPayload.message:\"Failed to insert block response\"\n-jsonPayload.message:\"Failed to process inbound message\"\n-jsonPayload.message:\"Failed to send 'PeerRequest\"\n-jsonPayload.message:\"Failed to send block request to peer\"\n\n\n/**\n * I/O\n */\n-jsonPayload.message:\"I/O error: Connection refused (os error 111)\"\n-jsonPayload.message:\"I/O error: the peer disconnected before sending\"\n-jsonPayload.message:\"I/O error: timed out\"\n-jsonPayload.message:\"I/O error\"\n\n\n/**\n * connections\n */\n-jsonPayload.message:\"Unable to connect to\"\n-jsonPayload.message:\"Unable to fetch transmission\"\n-jsonPayload.message:\"for being already connected\"\n\n/**\n * dns\n */\n-jsonPayload.message:\"Unable to resolve the listener IP address\"\n/**\n * certificates\n */\n-jsonPayload.message=~\"Certificate for round * already exists in storage\"\n\n-jsonPayload.message=~\"Failed to send .* not connected\"\n\n\n/**\n* blocks\n*/\n-jsonPayload.message:\"invalid - Failed to verify block\"\n-jsonPayload.message:\"Greatest peer height reduced\"\n//\n/**\n* block sync\n*/\n-jsonPayload.message:\"The sync request was removed because we already advanced\"\n-jsonPayload.message:\"Re-requesting blocks starting at height\"\n-jsonPayload.message:\"Not block synced `yet,` but there are still\"\n\n/**\n * batch\n */\n-jsonPayload.message:\"Primary is safely skipping a batch proposal\"\n\n/**\n* peer connections\n*/\n-jsonPayload.message=~\"Peer .* has not communicated in .*\"\n-jsonPayload.message:\"is not in the committee - skipping all stakers\"\n-jsonPayload.message:\"likely due to peer saturation or shutdown\"\n-jsonPayload.message:\"periodic refresh of peers\"\n\n\n/**\n* stake\n*/\n-jsonPayload.MESSAGE:\"Total stake invalidated due to validator not in committee\"\n\n// -jsonPayload.MESSAGE:\"snarkos_node_sync::block_sync:\"", + "viewId": "" + } + }, + "refId": "B", + "hidden": true + } + } + ], + "transformations": [], + "queryOptions": {} + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "logs", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "dedupStrategy": "signature", + "enableInfiniteScrolling": false, + "enableLogDetails": false, + "fontSize": "small", + "prettifyLogMessage": true, + "showControls": true, + "showFieldSelector": false, + "showLabels": false, + "showLevel": true, + "showTime": true, + "sortOrder": "Descending", + "timestampResolution": "ms", + "unwrappedColumns": false, + "wrapLogMessage": true + }, + "fieldConfig": { + "defaults": {}, + "overrides": [] + } + } + } + } + }, + "panel-75": { + "kind": "Panel", + "spec": { + "id": 75, + "title": "Participation Score", + "description": "combined score = (90% certificate, 10% signature)", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (validator_address) (rate(snarkos_consensus_validator_participation_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[$rate_interval]))", + "projectName": "provable-[[network]]", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "mean", + "max", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true, + "sortBy": "Last *", + "sortDesc": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "unit": "percent", + "decimals": 1, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 0, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "percent" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-78": { + "kind": "Panel", + "spec": { + "id": 78, + "title": "SnarkOS BFT - Connections / Stake", + "description": "snarkos_bft_connected_stake_as_percentage{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "promQLQuery": { + "expr": "sum by (instance_name) ( snarkos_bft_connected_stake_with_matching_sha_as_percentage{snarkos_role=\"validator\"})\nOR sum by (instance_name) ( snarkos_bft_connected_stake_as_percentage{snarkos_role=\"validator\"})", + "projectName": "provable-[[network]]", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_connected_stake_as_percentage/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "promQLQuery": { + "expr": "sum by (instance_name) ( snarkos_bft_connected_total{snarkos_role=\"validator\"}) AND sum by (instance_name) ( snarkos_bft_connected_stake_with_matching_sha_as_percentage{snarkos_role=\"validator\"})", + "projectName": "provable-[[network]]", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_connected_stake_as_percentage/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "percent", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "semi-dark-red" + }, + { + "value": 50, + "color": "yellow" + }, + { + "value": 75, + "color": "semi-dark-green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 0, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byFrameRefID", + "options": "A" + }, + "properties": [ + { + "id": "unit", + "value": "percent" + }, + { + "id": "decimals", + "value": 0 + }, + { + "id": "custom.fillOpacity", + "value": 30 + }, + { + "id": "custom.stacking", + "value": { + "group": "A", + "mode": "normal" + } + }, + { + "id": "custom.axisSoftMin", + "value": 50 + }, + { + "id": "thresholds", + "value": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": 0 + }, + { + "color": "semi-dark-orange", + "value": 30 + }, + { + "color": "#EAB839", + "value": 50 + }, + { + "color": "transparent", + "value": 75 + } + ] + } + }, + { + "id": "displayName", + "value": "Stake (${__field.labels.instance_name})" + }, + { + "id": "custom.thresholdsStyle", + "value": { + "mode": "area" + } + }, + { + "id": "min", + "value": 0 + }, + { + "id": "max", + "value": 100 + } + ] + }, + { + "matcher": { + "id": "byFrameRefID", + "options": "B" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "none" + }, + { + "id": "decimals", + "value": 0 + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "displayName", + "value": "Connections (${__field.labels.instance_name})" + } + ] + } + ] + } + } + } + } + }, + "panel-8": { + "kind": "Panel", + "spec": { + "id": 8, + "title": "Consensus Block Latency", + "description": "snarkos_consensus_block_latency_secs_sum", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "", + "promQLQuery": { + "expr": "sum by (instance_id) ({\"__name__\"=\"agent.googleapis.com/memory/percent_used\"})\n", + "projectName": "provable-testnet", + "step": "" + }, + "queryType": "timeSeriesList", + "sloQuery": { + "alignmentPeriod": "cloud-monitoring-auto", + "lookbackPeriod": "", + "perSeriesAligner": "ALIGN_MEAN", + "projectName": "$project", + "selectorName": "select_slo_health", + "serviceId": "", + "serviceName": "", + "sloId": "", + "sloName": "" + }, + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MAX", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_block_latency_secs_sum/summary:counter" + ], + "groupBys": [], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "rate", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": true + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "__expr__", + "version": "v0", + "datasource": { + "name": "__expr__" + }, + "spec": { + "expression": "$A * 1000", + "type": "math" + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "sortBy", + "spec": { + "id": "sortBy", + "options": {} + } + } + ], + "queryOptions": { + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "ms", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "semi-dark-blue" + }, + { + "value": 0, + "color": "green" + }, + { + "value": 999, + "color": "yellow" + }, + { + "value": 2000, + "color": "#EF843C" + }, + { + "value": 5000, + "color": "semi-dark-red" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "noValue": "No Validators Found", + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-80": { + "kind": "Panel", + "spec": { + "id": 80, + "title": "Seconds/Block", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name) (1 / rate(snarkos_bft_height_total{snarkos_network=\"[[network]]\",snarkos_role=~\"[[role]]\"}[1m])) < +inf", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "disabled": true, + "options": { + "reducers": [ + "mean" + ] + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "mean", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "right", + "axisSoftMin": 0, + "axisWidth": 1, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 55, + "gradientMode": "hue", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-81": { + "kind": "Panel", + "spec": { + "id": 81, + "title": "Seconds/Block", + "description": "max(snarkos_bft_height_total) [$rate_interval]", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "max by (instance_name) (\n 1 / rate(snarkos_bft_height_total{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m])\n) < +inf", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "disabled": true, + "options": { + "labelsToFields": false, + "reducers": [ + "max", + "mean", + "lastNotNull" + ] + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "decimals": 2, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "light-green" + }, + { + "value": 1, + "color": "dark-green" + }, + { + "value": 5, + "color": "#EAB839" + }, + { + "value": 15, + "color": "semi-dark-orange" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-84": { + "kind": "Panel", + "spec": { + "id": 84, + "title": "Seconds/Block", + "description": "calculated over [[rate_interval]] intervals", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name) (1 / rate(snarkos_bft_height_total{snarkos_network=\"[[network]]\",snarkos_role=~\"[[role]]\"}[1m])) < +inf", + "projectName": "$project", + "step": "1h" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "disabled": true, + "options": { + "reducers": [ + "mean" + ] + } + } + } + ], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "mean", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "right", + "axisSoftMin": 0, + "axisWidth": 1, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 55, + "gradientMode": "hue", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false + }, + "overrides": [] + } + } + } + } + }, + "panel-85": { + "kind": "Panel", + "spec": { + "id": 85, + "title": "Seconds/Block (max/yesterday)", + "description": "calculated over 5m intervals, max/ yesterday ", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "max by (instance_name) (\n 1 / rate(snarkos_bft_height_total{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m])\n) < +inf", + "projectName": "$project", + "step": "5m" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "reduce", + "spec": { + "id": "reduce", + "disabled": true, + "options": { + "labelsToFields": false, + "reducers": [ + "max", + "mean", + "lastNotNull" + ] + } + } + } + ], + "queryOptions": { + "timeFrom": "24h", + "timeShift": "24h", + "interval": "$rate_interval", + "hideTimeOverride": true + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "stat", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "max" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "fieldConfig": { + "defaults": { + "unit": "s", + "decimals": 2, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "light-green" + }, + { + "value": 1, + "color": "dark-green" + }, + { + "value": 5, + "color": "dark-yellow" + }, + { + "value": 15, + "color": "semi-dark-orange" + } + ] + }, + "color": { + "mode": "thresholds" + } + }, + "overrides": [] + } + } + } + } + }, + "panel-86": { + "kind": "Panel", + "spec": { + "id": 86, + "title": "Memory Usage", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (instance_id) (avg_over_time({\"__name__\"=\"agent.googleapis.com/memory/percent_used\",\"monitored_resource\"=\"gce_instance\",\"state\"!=\"free\"}[1m]))\n", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-87": { + "kind": "Panel", + "spec": { + "id": 87, + "title": "RX Bytes", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (instance_name) (rate({\"__name__\"=\"compute.googleapis.com/instance/network/received_bytes_count\",\"monitored_resource\"=\"gce_instance\"}[1m]))\n", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "bytes", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-88": { + "kind": "Panel", + "spec": { + "id": 88, + "title": "TX Bytes", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (instance_name) (rate({\"__name__\"=\"compute.googleapis.com/instance/network/sent_bytes_count\",\"monitored_resource\"=\"gce_instance\"}[1m]))\n", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "bytes", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-89": { + "kind": "Panel", + "spec": { + "id": 89, + "title": "CPU Utilization", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name) (avg_over_time({\"__name__\"=\"compute.googleapis.com/instance/cpu/utilization\",\"monitored_resource\"=\"gce_instance\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "mean", + "lastNotNull" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "unit": "percentunit", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-90": { + "kind": "Panel", + "spec": { + "id": 90, + "title": "SnarkOS TCP Tasks Total", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.public_ip}} {{metric.label.instance_name}} (GCP)", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_tcp_tasks_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "none", + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-91": { + "kind": "Panel", + "spec": { + "id": 91, + "title": "Unconfirmed Solutions (per-hour)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "max by (instance_name) (increase(snarkos_blocks_solutions_total{snarkos_network=~\"[[network]]\",snarkos_role=~\"[[role]]\"}[1h]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "Maximum", + "mode": "reduceRow", + "reduce": { + "reducer": "max" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [ + "max", + "delta" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": false, + "sortBy": "Delta", + "sortDesc": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "multi", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "thresholds" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "solutions /min", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "always", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Maximum" + }, + "properties": [ + { + "id": "custom.drawStyle", + "value": "bars" + }, + { + "id": "color", + "value": { + "fixedColor": "semi-dark-purple", + "mode": "fixed" + } + }, + { + "id": "custom.fillOpacity", + "value": 100 + } + ] + } + ] + } + } + } + } + }, + "panel-92": { + "kind": "Panel", + "spec": { + "id": 92, + "title": "SnarkOS TCP Tasks (per-sec)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.public_ip}} {{metric.label.instance_name}} (GCP)", + "promQLQuery": { + "expr": "sum by (instance_name,public_ip) (rate(snarkos_tcp_tasks_total[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_tcp_tasks_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.public_ip} ${__field.labels.instance_name} (GCP)", + "unit": "ops", + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 0, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "color", + "value": { + "fixedColor": "semi-dark-purple", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-93": { + "kind": "Panel", + "spec": { + "id": 93, + "title": "SnarkOS TCP Tasks (per-sec)", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.public_ip}} {{metric.label.instance_name}} (GCP)", + "promQLQuery": { + "expr": "sum by (instance_name,public_ip) (rate(snarkos_tcp_tasks_total[1h]))", + "projectName": "$project", + "step": "$interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_tcp_tasks_total/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "14d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "maxHeight": 600, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.public_ip} ${__field.labels.instance_name} (GCP)", + "unit": "ops", + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "smooth", + "lineWidth": 0, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "color", + "value": { + "fixedColor": "semi-dark-purple", + "mode": "fixed" + } + } + ] + } + ] + } + } + } + } + }, + "panel-94": { + "kind": "Panel", + "spec": { + "id": 94, + "title": "SnarkOS BFT Connected Stake /%", + "description": "snarkos_bft_connected_stake_with_matching_sha_as_percentage{}", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "promQLQuery": { + "expr": "avg by (instance_name,public_ip) (avg_over_time(snarkos_bft_connected_stake_with_matching_sha_as_percentage{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))\n", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_connected_stake_as_percentage/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}}", + "promQLQuery": { + "expr": "avg by (instance_name,public_ip) (avg_over_time(snarkos_bft_connected_stake_as_percentage{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_bft_connected_stake_as_percentage/gauge" + ], + "groupBys": [ + "metric.label.instance_name", + "metric.label.public_ip" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": false, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "unit": "percent", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "semi-dark-red" + }, + { + "value": 34, + "color": "orange" + }, + { + "value": 50, + "color": "yellow" + }, + { + "value": 67, + "color": "semi-dark-green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byFrameRefID", + "options": "B" + }, + "properties": [ + { + "id": "custom.fillOpacity", + "value": 10 + }, + { + "id": "custom.lineWidth", + "value": 0 + }, + { + "id": "displayName", + "value": "${__field.labels.instance_name} (all sha)" + } + ] + }, + { + "matcher": { + "id": "byFrameRefID", + "options": "A" + }, + "properties": [ + { + "id": "displayName", + "value": "${__field.labels.instance_name} (matching sha)" + } + ] + } + ] + } + } + } + } + }, + "panel-95": { + "kind": "Panel", + "spec": { + "id": 95, + "title": "Memory Used", + "description": "based on Memory Free (not mem available)", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "avg by (instance_name) ((node_memory_MemTotal_bytes - node_memory_MemFree_bytes) / node_memory_MemTotal_bytes)", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "percentunit", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + }, + { + "value": 80, + "color": "red" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMax": 1, + "axisSoftMin": 0, + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-96": { + "kind": "Panel", + "spec": { + "id": 96, + "title": "Network / Bytes", + "description": "+(TX), -(RX)", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "-sum by (instance_name) (rate(node_network_receive_bytes_total[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "sum by (instance_name) (rate(node_network_transmit_bytes_total[1m]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "cloud-monitoring-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.type", + "=", + "compute.googleapis.com/guest/memory/percent_used" + ], + "groupBys": [ + "metadata.system_labels.node_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "provable-mainnet", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "unit": "bytes", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": true, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [] + } + } + } + } + }, + "panel-97": { + "kind": "Panel", + "spec": { + "id": 97, + "title": "Certificate Commit Latency / Block Height", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "queryType": "timeSeriesList", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + }, + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "promQLQuery": { + "expr": "max by (snarkos_network)(snarkos_bft_height_total{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"})", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "filters": [], + "projectName": "infrastructure-prod-01", + "view": "FULL" + } + } + }, + "refId": "B", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "disabled": true, + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "timeFrom": "7d", + "interval": "$interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "hideZeros": true, + "maxHeight": 600, + "mode": "multi", + "sort": "desc" + } + }, + "fieldConfig": { + "defaults": { + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 0, + "pointSize": 1, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "custom.lineWidth", + "value": 2 + }, + { + "id": "color", + "value": { + "fixedColor": "red", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byFrameRefID", + "options": "B" + }, + "properties": [ + { + "id": "custom.fillOpacity", + "value": 0 + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.axisPlacement", + "value": "right" + } + ] + } + ] + } + } + } + } + }, + "panel-99": { + "kind": "Panel", + "spec": { + "id": 99, + "title": "Certificate Commit Latency", + "description": "", + "links": [], + "data": { + "kind": "QueryGroup", + "spec": { + "queries": [ + { + "kind": "PanelQuery", + "spec": { + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "${DS_GOOGLE_CLOUD_MONITORING}" + }, + "spec": { + "aliasBy": "{{metric.label.instance_name}} ({{metric.label.public_ip}})", + "promQLQuery": { + "expr": "avg by (instance_name) (rate(snarkos_consensus_certificate_commit_latency_secs_sum{snarkos_network=\"[[network]]\",snarkos_role=\"validator\"}[$rate_interval]))", + "projectName": "$project", + "step": "$rate_interval" + }, + "queryType": "promQL", + "timeSeriesList": { + "alignmentPeriod": "grafana-auto", + "crossSeriesReducer": "REDUCE_MEAN", + "filters": [ + "metric.label.snarkos_role", + "=", + "validator", + "AND", + "metric.label.snarkos_network", + "=~", + "$network", + "AND", + "metric.type", + "=", + "prometheus.googleapis.com/snarkos_consensus_certificate_commit_latency_secs/summary" + ], + "groupBys": [ + "metric.label.public_ip", + "metric.label.instance_name" + ], + "perSeriesAligner": "ALIGN_MEAN", + "preprocessor": "none", + "projectName": "$project", + "view": "FULL" + } + } + }, + "refId": "A", + "hidden": false + } + } + ], + "transformations": [ + { + "kind": "calculateField", + "spec": { + "id": "calculateField", + "options": { + "alias": "All Nodes Average", + "mode": "reduceRow", + "reduce": { + "reducer": "mean" + } + } + } + } + ], + "queryOptions": { + "interval": "$rate_interval" + } + } + }, + "vizConfig": { + "kind": "VizConfig", + "group": "timeseries", + "version": "13.0.0-23069273608.patch3", + "spec": { + "options": { + "annotations": { + "clustering": -1, + "multiLane": false + }, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "fieldConfig": { + "defaults": { + "displayName": "${__field.labels.instance_name}", + "unit": "s", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "value": 0, + "color": "green" + } + ] + }, + "color": { + "mode": "palette-classic", + "fixedColor": "dark-red" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 0, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "showValues": false, + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "All Nodes Average" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "blue", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 1 + }, + { + "id": "custom.fillBelowTo", + "value": "All Nodes Average" + } + ] + } + ] + } + } + } + } + } + }, + "layout": { + "kind": "RowsLayout", + "spec": { + "rows": [ + { + "kind": "RowsLayoutRow", + "spec": { + "title": "[[project]] - [[role]]", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 1, + "y": 0, + "width": 23, + "height": 2, + "element": { + "kind": "ElementReference", + "name": "panel-4" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 2, + "width": 14, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-21" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 14, + "y": 2, + "width": 10, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-12" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Snapshots", + "collapse": true, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 12, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-20" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 0, + "width": 7, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-22" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 19, + "y": 0, + "width": 5, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-32" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Metrics", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 6, + "height": 6, + "element": { + "kind": "ElementReference", + "name": "panel-10" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 0, + "width": 9, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-17" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 15, + "y": 0, + "width": 9, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-94" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 6, + "width": 6, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-8" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 15, + "y": 8, + "width": 9, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-16" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 10, + "width": 6, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-13" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 12, + "width": 9, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-23" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 14, + "width": 6, + "height": 6, + "element": { + "kind": "ElementReference", + "name": "panel-3" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 20, + "width": 13, + "height": 16, + "element": { + "kind": "ElementReference", + "name": "panel-75" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 13, + "y": 20, + "width": 11, + "height": 16, + "element": { + "kind": "ElementReference", + "name": "panel-78" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Block Height", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 6, + "height": 5, + "element": { + "kind": "ElementReference", + "name": "panel-81" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 0, + "width": 8, + "height": 10, + "element": { + "kind": "ElementReference", + "name": "panel-80" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 14, + "y": 0, + "width": 10, + "height": 10, + "element": { + "kind": "ElementReference", + "name": "panel-84" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 5, + "width": 6, + "height": 5, + "element": { + "kind": "ElementReference", + "name": "panel-85" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 10, + "width": 6, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-68" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 10, + "width": 9, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-64" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 15, + "y": 10, + "width": 9, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-14" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 14, + "width": 6, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-66" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 18, + "width": 6, + "height": 4, + "element": { + "kind": "ElementReference", + "name": "panel-65" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Block Data", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 4, + "height": 9, + "element": { + "kind": "ElementReference", + "name": "panel-57" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 4, + "y": 0, + "width": 10, + "height": 9, + "element": { + "kind": "ElementReference", + "name": "panel-53" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 14, + "y": 0, + "width": 10, + "height": 9, + "element": { + "kind": "ElementReference", + "name": "panel-59" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 9, + "width": 4, + "height": 9, + "element": { + "kind": "ElementReference", + "name": "panel-58" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 4, + "y": 9, + "width": 10, + "height": 9, + "element": { + "kind": "ElementReference", + "name": "panel-50" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 14, + "y": 9, + "width": 10, + "height": 9, + "element": { + "kind": "ElementReference", + "name": "panel-62" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 18, + "width": 11, + "height": 11, + "element": { + "kind": "ElementReference", + "name": "panel-61" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 11, + "y": 18, + "width": 8, + "height": 11, + "element": { + "kind": "ElementReference", + "name": "panel-60" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 19, + "y": 18, + "width": 5, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-54" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Consensus", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-30" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 0, + "width": 6, + "height": 14, + "element": { + "kind": "ElementReference", + "name": "panel-99" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 0, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-70" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 7, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-72" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 7, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-97" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 14, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-106" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 14, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-107" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 14, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-7" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 18, + "y": 14, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-71" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 21, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-105" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 21, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-104" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 21, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-103" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 18, + "y": 21, + "width": 6, + "height": 14, + "element": { + "kind": "ElementReference", + "name": "panel-15" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 28, + "width": 6, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-102" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Transmission Data", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-36" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 0, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-37" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 18, + "y": 0, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-38" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 8, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-33" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 8, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-39" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 8, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-40" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 18, + "y": 8, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-91" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 16, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-42" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 6, + "y": 16, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-43" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 16, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-45" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 18, + "y": 16, + "width": 6, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-44" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 24, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-92" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 24, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-49" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 32, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-93" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 32, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-47" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 40, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-90" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 40, + "width": 12, + "height": 8, + "element": { + "kind": "ElementReference", + "name": "panel-48" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Instance Metrics", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 5, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-110" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 5, + "y": 0, + "width": 10, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-112" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 15, + "y": 0, + "width": 9, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-108" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 12, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-86" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 12, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-89" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 19, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-95" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 19, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-87" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 26, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-96" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 12, + "y": 26, + "width": 12, + "height": 7, + "element": { + "kind": "ElementReference", + "name": "panel-88" + } + } + }, + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 33, + "width": 12, + "height": 12, + "element": { + "kind": "ElementReference", + "name": "panel-111" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Logs - filtered", + "collapse": false, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 0, + "width": 24, + "height": 16, + "element": { + "kind": "ElementReference", + "name": "panel-73" + } + } + } + ] + } + } + } + }, + { + "kind": "RowsLayoutRow", + "spec": { + "title": "Logs - unfiltered", + "collapse": true, + "layout": { + "kind": "GridLayout", + "spec": { + "items": [ + { + "kind": "GridLayoutItem", + "spec": { + "x": 0, + "y": 2058, + "width": 24, + "height": 29, + "element": { + "kind": "ElementReference", + "name": "panel-2" + } + } + } + ] + } + } + } + } + ] + } + }, + "links": [ + { + "title": "snarkos", + "type": "dashboards", + "icon": "external link", + "tooltip": "", + "url": "", + "tags": [ + "snarkos" + ], + "asDropdown": false, + "targetBlank": true, + "includeVars": false, + "keepTime": true + } + ], + "liveNow": false, + "preload": false, + "tags": [ + "snarkos", + "mainnet", + "testnet", + "canary", + "oncall", + "incident" + ], + "timeSettings": { + "timezone": "browser", + "from": "now-24h", + "to": "now", + "autoRefresh": "30s", + "autoRefreshIntervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "hideTimepicker": false, + "fiscalYearStartMonth": 0 + }, + "title": "SnarkOS / Incident Response", + "variables": [ + { + "kind": "DatasourceVariable", + "spec": { + "name": "DS_LOGGING", + "pluginId": "googlecloud-logging-datasource", + "refresh": "onDashboardLoad", + "regex": "gcp-infrastructure-prod-01", + "current": { + "text": "gcp-infrastructure-prod-01", + "value": "bf6hh0chl7xtse" + }, + "options": [], + "multi": false, + "includeAll": false, + "hide": "hideVariable", + "skipUrlSync": false, + "allowCustomValue": false + } + }, + { + "kind": "CustomVariable", + "spec": { + "name": "project", + "query": "provable-mainnet, provable-testnet, provable-canary, infra-prod : infrastructure-prod-01, infra-sandbox : infra-sandbox-svc-ddzv, data-prod : data-svc-ddzv, data-sandbox : data-sandbox-440915, explorer : explorer-svc-ddzv , fastsync : fastsync-451720, snapshots : snarkos-snapshots", + "current": { + "text": "provable-mainnet", + "value": "provable-mainnet" + }, + "options": [], + "multi": false, + "includeAll": false, + "hide": "hideLabel", + "skipUrlSync": false, + "allowCustomValue": false, + "valuesFormat": "csv" + } + }, + { + "kind": "CustomVariable", + "spec": { + "name": "severity", + "query": "ERROR,WARNING,INFO,DEFAULT,DEBUG", + "current": { + "text": "WARNING", + "value": "WARNING" + }, + "options": [], + "multi": false, + "includeAll": false, + "label": "Severity", + "hide": "dontHide", + "skipUrlSync": false, + "description": "minimum severity of logs (>=)", + "allowCustomValue": false, + "valuesFormat": "csv" + } + }, + { + "kind": "CustomVariable", + "spec": { + "name": "role", + "query": "validator,client", + "current": { + "text": "$__all", + "value": "$__all" + }, + "options": [], + "multi": false, + "includeAll": true, + "allValue": ".*", + "label": "Instance Role", + "hide": "dontHide", + "skipUrlSync": false, + "allowCustomValue": false, + "valuesFormat": "csv" + } + }, + { + "kind": "TextVariable", + "spec": { + "name": "search", + "current": { + "text": "", + "value": "" + }, + "query": "", + "label": "Search Logs", + "hide": "dontHide", + "skipUrlSync": false, + "description": "case-sensitive" + } + }, + { + "kind": "QueryVariable", + "spec": { + "name": "network", + "current": { + "text": "canary", + "value": "canary" + }, + "hide": "dontHide", + "refresh": "onTimeRangeChanged", + "skipUrlSync": false, + "query": { + "kind": "DataQuery", + "group": "stackdriver", + "version": "v0", + "datasource": { + "name": "cex6fj2p02m0wd" + }, + "spec": { + "labelKey": "metric.label.snarkos_network", + "loading": false, + "projectName": "$project", + "projects": [ + { + "label": "auto export gemini notes", + "value": "sys-56982095939714979605995046" + }, + { + "label": "usdc-xreserve", + "value": "sys-55472635863004947458009008" + }, + { + "label": "Copy Gemini Transcripts", + "value": "sys-70467520751905353231978618" + }, + { + "label": "Untitled project", + "value": "sys-59308210618329776163466914" + }, + { + "label": "naman-claude", + "value": "naman-claude" + }, + { + "label": "circle-attester-mainnet", + "value": "circle-attester-mainnet" + }, + { + "label": "GAM Project", + "value": "gam-project-tsug9" + }, + { + "label": "GAM Project", + "value": "gam-project-ffuoc" + }, + { + "label": "GAM Project", + "value": "gam-project-mptmv" + }, + { + "label": "circle-attester-testnet", + "value": "circle-attester-testnet" + }, + { + "label": "it-cf-casb", + "value": "it-cf-casb" + }, + { + "label": "leo-wallet-android", + "value": "leo-wallet-android" + }, + { + "label": "Untitled project", + "value": "sys-13350396740401597810461479" + }, + { + "label": "PagerDuty Terraform", + "value": "provable-pagerduty-01" + }, + { + "label": "Untitled project", + "value": "sys-33452894203407965939156983" + }, + { + "label": "Utilities", + "value": "sys-03333931768594691762909002" + }, + { + "label": "IdP for Cloudflare Zero Trust", + "value": "geometric-rex-464218-r0" + }, + { + "label": "Untitled project", + "value": "sys-50525492812002480876210039" + }, + { + "label": "provable-testnet", + "value": "provable-testnet" + }, + { + "label": "provable-canary", + "value": "provable-canary" + }, + { + "label": "provable-mainnet", + "value": "provable-mainnet" + }, + { + "label": "snarkos-wallet-testing", + "value": "snarkos-wallet-testing" + }, + { + "label": "snarkos-canary", + "value": "snarkos-canary" + }, + { + "label": "snarkos-testnet", + "value": "snarkos-testnet" + }, + { + "label": "snarkos-mainnet", + "value": "snarkos-mainnet" + }, + { + "label": "anf-testnet", + "value": "anf-testnet" + }, + { + "label": "anf-mainnet", + "value": "anf-mainnet" + }, + { + "label": "anf-canary", + "value": "anf-canary" + }, + { + "label": "brentv-sandbox", + "value": "brentv-sandbox" + }, + { + "label": "ANF legacy content migration", + "value": "anf-legacy-content-migration" + }, + { + "label": "protocol-development-sandbox", + "value": "protocol-development-sandbox" + }, + { + "label": "snarkOS Snapshots", + "value": "snarkos-snapshots" + }, + { + "label": "infrastructure-prod", + "value": "infrastructure-prod-01" + }, + { + "label": "Cloudflare Email Security", + "value": "constant-jigsaw-454017-s0" + }, + { + "label": "it-usma", + "value": "it-usma" + }, + { + "label": "IT-Test Workspace Backup", + "value": "it-test-workspace-backup" + }, + { + "label": "bcw-migration", + "value": "bcw-migration" + }, + { + "label": "fastsync", + "value": "fastsync-451720" + }, + { + "label": "infrastructure-staging", + "value": "infra-staging-svc-ddzv" + }, + { + "label": "Untitled project", + "value": "sys-37939772802531243884873106" + }, + { + "label": "elastic", + "value": "elastic-448517" + }, + { + "label": "developer-services-sandbox", + "value": "developer-services-sandbox" + }, + { + "label": "it-sandbox", + "value": "it-sandbox-442116" + }, + { + "label": "JumpCloud OIDC", + "value": "jumpcloud-oidc-441819" + }, + { + "label": "api-ingestions", + "value": "api-ingestions" + }, + { + "label": "My First Project", + "value": "dulcet-palace-441121-i3" + }, + { + "label": "gcp-cloud-run-tutorial", + "value": "gcp-cloud-run-tutorial" + }, + { + "label": "IntegrityChecksIACTests", + "value": "integritychecksiactests" + }, + { + "label": "infrastructure-misc", + "value": "infrastructure-misc" + }, + { + "label": "data-sandbox", + "value": "data-sandbox-440915" + }, + { + "label": "AlienVault Integration", + "value": "alienvault-integration-440801" + }, + { + "label": "vpc-host-nonprod", + "value": "vpc-host-nonprod-hr267-nj325" + }, + { + "label": "vpc-host-prod", + "value": "vpc-host-prod-kr525-hs685" + }, + { + "label": "central-logging-monitoring", + "value": "central-log-monitor-lf159-hx35" + }, + { + "label": "infrastructure-sandbox", + "value": "infra-sandbox-svc-ddzv" + }, + { + "label": "data", + "value": "data-svc-ddzv" + }, + { + "label": "explorer", + "value": "explorer-svc-ddzv" + }, + { + "label": "Cloud Setup Host Project", + "value": "cs-host-44825f9f234545c2bfad75" + }, + { + "label": "Hybrid Connectivity Project", + "value": "cs-hc-d6469dede85b465aa4fc644f" + }, + { + "label": "My First Project", + "value": "majestic-nimbus-440020-j7" + }, + { + "label": "Untitled project", + "value": "sys-40341818367664385298756564" + }, + { + "label": "Google Analytics GA4 ", + "value": "sys-69674516584390937856474124" + }, + { + "label": "burn-in kibana sso", + "value": "burn-in-kibana-sso" + }, + { + "label": "CSV TO JSON", + "value": "sys-31179596860861350934042672" + }, + { + "label": "CSV TO JSON", + "value": "sys-08074495716258900478089845" + }, + { + "label": "Leo Metrics", + "value": "sys-91099579490803626672344944" + }, + { + "label": "My First Project", + "value": "friendly-aura-419121" + }, + { + "label": "My First Project", + "value": "our-rock-410110" + }, + { + "label": "My First Project", + "value": "linen-sunbeam-410110" + } + ], + "refId": "CloudMonitoringVariableQueryEditor-VariableQuery", + "selectedMetricType": "prometheus.googleapis.com/scrape_duration_seconds/gauge", + "selectedQueryType": "labelValues", + "selectedSLOService": "", + "selectedService": "prometheus.googleapis.com", + "sloServices": [] + } + }, + "regex": "", + "regexApplyTo": "value", + "sort": "disabled", + "definition": "", + "options": [], + "multi": false, + "includeAll": false, + "allowCustomValue": false + } + }, + { + "kind": "DatasourceVariable", + "spec": { + "name": "DS_GOOGLE_CLOUD_MONITORING", + "pluginId": "stackdriver", + "refresh": "onDashboardLoad", + "regex": "/provable.com|[[project]]/", + "current": { + "text": "Google Cloud Monitoring (provable.com)", + "value": "cex6fj2p02m0wd" + }, + "options": [], + "multi": false, + "includeAll": false, + "hide": "dontHide", + "skipUrlSync": false, + "allowCustomValue": false + } + }, + { + "kind": "IntervalVariable", + "spec": { + "name": "interval", + "query": "1m,5m,10m,15m,30m,1h,2h,3h,4h,6h,8h,12h", + "current": { + "text": "$__auto", + "value": "$__auto" + }, + "options": [ + { + "selected": false, + "text": "1m", + "value": "1m" + }, + { + "selected": false, + "text": "5m", + "value": "5m" + }, + { + "selected": false, + "text": "10m", + "value": "10m" + }, + { + "selected": false, + "text": "15m", + "value": "15m" + }, + { + "selected": false, + "text": "30m", + "value": "30m" + }, + { + "selected": false, + "text": "1h", + "value": "1h" + }, + { + "selected": false, + "text": "2h", + "value": "2h" + }, + { + "selected": false, + "text": "3h", + "value": "3h" + }, + { + "selected": false, + "text": "4h", + "value": "4h" + }, + { + "selected": false, + "text": "6h", + "value": "6h" + }, + { + "selected": false, + "text": "8h", + "value": "8h" + }, + { + "selected": false, + "text": "12h", + "value": "12h" + } + ], + "auto": true, + "auto_min": "3m", + "auto_count": 30, + "refresh": "onTimeRangeChanged", + "hide": "dontHide", + "skipUrlSync": false + } + }, + { + "kind": "IntervalVariable", + "spec": { + "name": "rate_interval", + "query": "1m,5m,10m,15m,30m,1h,2h,3h,4h,6h,8h,12h", + "current": { + "text": "$__auto", + "value": "$__auto" + }, + "options": [ + { + "selected": false, + "text": "1m", + "value": "1m" + }, + { + "selected": false, + "text": "5m", + "value": "5m" + }, + { + "selected": false, + "text": "10m", + "value": "10m" + }, + { + "selected": false, + "text": "15m", + "value": "15m" + }, + { + "selected": false, + "text": "30m", + "value": "30m" + }, + { + "selected": false, + "text": "1h", + "value": "1h" + }, + { + "selected": false, + "text": "2h", + "value": "2h" + }, + { + "selected": false, + "text": "3h", + "value": "3h" + }, + { + "selected": false, + "text": "4h", + "value": "4h" + }, + { + "selected": false, + "text": "6h", + "value": "6h" + }, + { + "selected": false, + "text": "8h", + "value": "8h" + }, + { + "selected": false, + "text": "12h", + "value": "12h" + } + ], + "auto": true, + "auto_min": "1m", + "auto_count": 50, + "refresh": "onTimeRangeChanged", + "hide": "dontHide", + "skipUrlSync": false + } + } + ] + } +} \ No newline at end of file