Upload files to "/"

This commit is contained in:
2026-01-18 03:35:03 +00:00
parent c2efa19b9d
commit 9f3e7c9d48

View File

@@ -0,0 +1,726 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "datasource",
"uid": "grafana"
},
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"limit": 100,
"name": "Annotations & Alerts",
"showIn": 0,
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"description": "Dashboard for monitor HTTP Responses",
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 102,
"links": [],
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 26,
"panels": [],
"title": "Alert State",
"type": "row"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 1
},
"id": 24,
"panels": [],
"title": "Overview",
"type": "row"
},
{
"datasource": {
"type": "prometheus",
"uid": "${_data_source}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
}
},
"decimals": 2,
"mappings": [
{
"options": {
"match": "null",
"result": {
"text": "N/A"
}
},
"type": "special"
}
],
"min": 0,
"unit": "deckbytes"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Free Capacity"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#5e91ce",
"mode": "fixed"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "Used Capacity"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#e36761",
"mode": "fixed"
}
}
]
}
]
},
"gridPos": {
"h": 13,
"w": 8,
"x": 0,
"y": 2
},
"hideTimeOverride": false,
"id": 46,
"interval": "1h",
"maxDataPoints": 100,
"options": {
"displayLabels": [
"percent"
],
"legend": {
"displayMode": "table",
"placement": "right",
"showLegend": true,
"values": [
"percent"
]
},
"pieType": "donut",
"reduceOptions": {
"calcs": [],
"fields": "",
"values": false
},
"sort": "desc",
"tooltip": {
"hideZeros": false,
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "12.3.1",
"targets": [
{
"alias": "Total Capacity",
"datasource": {
"type": "influxdb",
"uid": "${_data_source}"
},
"disableTextWrap": false,
"editorMode": "code",
"expr": "count(http_response_http_response_code{status_code=\"200\"})",
"fullMetaSearch": false,
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"source"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"includeNullMetadata": true,
"legendFormat": "success",
"measurement": "vsphere_datastore_disk",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: v.defaultBucket)\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"metric.vsphere_datastore_disk\")\r\n |> filter(fn: (r) => r[\"source\"] =~ /^${datastore:regex}$/)\r\n |> filter(fn: (r) => \r\n r[\"_field\"] == \"capacity_latest\" or\r\n r[\"_field\"] == \"used_latest\")\r\n |> last()\r\n |> pivot(rowKey:[\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n |> map(fn: (r) => ({ r with _value: (float(v: r.capacity_latest) - float(v: r.used_latest)) }))\r\n |> keep(columns: [\"_time\", \"_value\", \"source\", \"used_latest\"])\r\n |> group()",
"range": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"capacity_latest"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "source",
"operator": "=~",
"value": "/^$datastore$/"
}
],
"useBackend": false
},
{
"datasource": {
"type": "prometheus",
"uid": "${_data_source}"
},
"disableTextWrap": false,
"editorMode": "code",
"expr": "count(http_response_http_response_code) - count(http_response_http_response_code{status_code=\"200\"})",
"fullMetaSearch": false,
"hide": false,
"includeNullMetadata": true,
"instant": false,
"legendFormat": "failed",
"range": true,
"refId": "B",
"useBackend": false
}
],
"timeFrom": "3h",
"title": "Summary",
"transformations": [
{
"id": "organize",
"options": {
"excludeByName": {
"_time": true,
"source": true
},
"indexByName": {},
"renameByName": {
"_value": "Free Capacity",
"used_latest": "Used Capacity"
}
}
}
],
"type": "piechart"
},
{
"datasource": {
"type": "prometheus",
"uid": "${_data_source}"
},
"description": "SSL Certificate Monitoring Table. On the first column you can find the SSL x509 Certificate name, and on the second column the TTL/Expirty Date in days.\n\nThresholds are:\n* From 0 days to 14, Red\n* From 15 days to 30, Orange\n* From 31 days onward, Green",
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "transparent",
"mode": "thresholds"
},
"custom": {
"align": "auto",
"cellOptions": {
"mode": "basic",
"type": "color-background"
},
"filterable": false,
"footer": {
"reducers": []
},
"inspect": false
},
"mappings": [],
"noValue": "-",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "transparent",
"value": 0
},
{
"color": "semi-dark-green",
"value": 200
},
{
"color": "semi-dark-orange",
"value": 300
},
{
"color": "semi-dark-red",
"value": 400
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Response Code"
},
"properties": [
{
"id": "custom.width",
"value": 200
},
{
"id": "mappings",
"value": [
{
"options": {
"match": "null",
"result": {
"color": "semi-dark-red",
"index": 0
}
},
"type": "special"
}
]
}
]
},
{
"matcher": {
"id": "byName",
"options": "Result"
},
"properties": [
{
"id": "custom.width",
"value": 400
}
]
},
{
"matcher": {
"id": "byName",
"options": "server"
},
"properties": [
{
"id": "custom.width",
"value": 611
}
]
},
{
"matcher": {
"id": "byName",
"options": "result"
},
"properties": [
{
"id": "custom.width",
"value": 108
}
]
}
]
},
"gridPos": {
"h": 13,
"w": 16,
"x": 8,
"y": 2
},
"id": 9,
"interval": "30s",
"options": {
"cellHeight": "sm",
"showHeader": true,
"sortBy": []
},
"pluginVersion": "12.3.1",
"targets": [
{
"alias": "$tag_server",
"datasource": {
"type": "influxdb",
"uid": "${_data_source}"
},
"disableTextWrap": false,
"editorMode": "builder",
"exemplar": false,
"expr": "last_over_time(http_response_http_response_code{server=~\"$url_name\"}[$__interval])",
"format": "table",
"fullMetaSearch": false,
"groupBy": [
{
"params": [
"server"
],
"type": "tag"
}
],
"includeNullMetadata": true,
"instant": true,
"interval": "",
"legendFormat": "__auto",
"measurement": "metric.http_response",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"telegraf\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"metric.http_response\")\r\n |> filter(fn: (r) => r[\"server\"] =~ /${url_name:regex}/)\r\n |> filter(fn: (r) => \r\n\t\tr[\"_field\"] == \"server\" or\r\n\t\tr[\"_field\"] == \"result_type\" or\r\n\t\tr[\"_field\"] == \"http_response_code\")\r\n |> pivot(rowKey:[\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n |> group(columns: [\"server\"])\r\n |> last(column: \"server\")\r\n |> keep(columns: [\"_value\", \"_time\", \"server\", \"http_response_code\", \"result_type\"])\r\n |> group(columns: [\"_measurement\"])",
"range": false,
"rawQuery": false,
"refId": "A",
"resultFormat": "table",
"select": [
[
{
"params": [
"result_type"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"Result"
],
"type": "alias"
}
],
[
{
"params": [
"http_response_code"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"Response Code"
],
"type": "alias"
}
]
],
"tags": [
{
"key": "server",
"operator": "=~",
"value": "/^$url_name$/"
}
],
"useBackend": false
}
],
"title": "",
"transformations": [
{
"id": "organize",
"options": {
"excludeByName": {
"Time": true,
"__name__": true,
"method": true,
"receive": true,
"tenant_id": true
},
"includeByName": {},
"indexByName": {
"Time": 0,
"Value": 8,
"__name__": 1,
"method": 2,
"receive": 3,
"result": 5,
"server": 4,
"status_code": 6,
"tenant_id": 7
},
"renameByName": {}
}
}
],
"type": "table"
},
{
"datasource": {
"type": "prometheus",
"uid": "${_data_source}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"axisSoftMax": 200,
"barAlignment": 0,
"barWidthFactor": 0.6,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"insertNulls": false,
"lineInterpolation": "smooth",
"lineWidth": 2,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"showValues": false,
"spanNulls": true,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"links": [],
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": 0
},
{
"color": "red",
"value": 80
}
]
},
"unit": "ms"
},
"overrides": []
},
"gridPos": {
"h": 13,
"w": 24,
"x": 0,
"y": 15
},
"id": 13,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"hideZeros": false,
"mode": "multi",
"sort": "none"
}
},
"pluginVersion": "12.3.1",
"targets": [
{
"alias": "$tag_server",
"datasource": {
"type": "influxdb",
"uid": "${_data_source}"
},
"editorMode": "code",
"expr": "http_response_response_time{server=~\"$url_name\"}",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"server"
],
"type": "tag"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"legendFormat": "{{server}}",
"measurement": "metric.http_response",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"telegraf\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"metric.http_response\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"response_time\")\r\n |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)\r\n |> keep(columns: [\"server\", \"_value\", \"_time\"])",
"range": true,
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"response_time"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "server",
"operator": "=~",
"value": "/^$url_name$/"
}
]
}
],
"title": "HTTP Response in ms",
"type": "timeseries"
}
],
"preload": false,
"refresh": "",
"schemaVersion": 42,
"tags": [
"HTTP",
"Response",
"Prometheus"
],
"templating": {
"list": [
{
"current": {
"text": "Prometheus",
"value": "prometheus"
},
"includeAll": false,
"label": "Data Source",
"name": "_data_source",
"options": [],
"query": "prometheus",
"refresh": 1,
"regex": "",
"type": "datasource"
},
{
"current": {
"text": "All",
"value": [
"$__all"
]
},
"datasource": {
"type": "prometheus",
"uid": "${_data_source}"
},
"definition": "label_values(http_response_http_response_code,server)",
"includeAll": true,
"label": "URL",
"multi": true,
"name": "url_name",
"options": [],
"query": {
"qryType": 1,
"query": "label_values(http_response_http_response_code,server)",
"refId": "PrometheusVariableQueryEditor-VariableQuery"
},
"refresh": 1,
"regex": "",
"type": "query"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d",
"7d"
]
},
"timezone": "",
"title": "HTTP Response Monitoring",
"uid": "e0e30e0e-2fde-4c80-bb79-84d3f34e4872",
"version": 4
}