chore: added grafana resources
This commit is contained in:
166
configurations/grafana/alerts/electricity_peak_too_high.json
Normal file
166
configurations/grafana/alerts/electricity_peak_too_high.json
Normal file
@@ -0,0 +1,166 @@
|
||||
{
|
||||
"apiVersion": 1,
|
||||
"groups": [
|
||||
{
|
||||
"orgId": 1,
|
||||
"name": "Home",
|
||||
"folder": "Power",
|
||||
"interval": "10s",
|
||||
"rules": [
|
||||
{
|
||||
"uid": "ef6m5j923ruv4f",
|
||||
"title": "Alert if peak is too high",
|
||||
"condition": "C",
|
||||
"data": [
|
||||
{
|
||||
"refId": "A",
|
||||
"relativeTimeRange": { "from": 600, "to": 0 },
|
||||
"datasourceUid": "cf6lzj1gt48aoe",
|
||||
"model": {
|
||||
"intervalMs": 1000,
|
||||
"maxDataPoints": 43200,
|
||||
"query": "from(bucket: \"homeassistant\")\n |\u003e range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |\u003e filter(fn: (r) =\u003e r[\"entity_id\"] == \"thienpont_serruys_load_grid\")\n |\u003e filter(fn: (r) =\u003e r[\"_field\"] == \"value\")\n |\u003e filter(fn: (r) =\u003e r[\"domain\"] == \"sensor\")\n |\u003e filter(fn: (r) =\u003e r[\"_measurement\"] == \"W\")\n |\u003e aggregateWindow(every: 15m, fn: mean, createEmpty: false, offset: 0s)\n |\u003e yield(name: \"peak_load_15min\")\n",
|
||||
"refId": "A"
|
||||
}
|
||||
},
|
||||
{
|
||||
"refId": "B",
|
||||
"relativeTimeRange": { "from": 0, "to": 0 },
|
||||
"datasourceUid": "__expr__",
|
||||
"model": {
|
||||
"conditions": [
|
||||
{
|
||||
"evaluator": { "params": [], "type": "gt" },
|
||||
"operator": { "type": "and" },
|
||||
"query": { "params": ["B"] },
|
||||
"reducer": { "params": [], "type": "last" },
|
||||
"type": "query"
|
||||
}
|
||||
],
|
||||
"datasource": { "type": "__expr__", "uid": "__expr__" },
|
||||
"expression": "A",
|
||||
"intervalMs": 1000,
|
||||
"maxDataPoints": 43200,
|
||||
"reducer": "last",
|
||||
"refId": "B",
|
||||
"type": "reduce"
|
||||
}
|
||||
},
|
||||
{
|
||||
"refId": "C",
|
||||
"relativeTimeRange": { "from": 0, "to": 0 },
|
||||
"datasourceUid": "__expr__",
|
||||
"model": {
|
||||
"conditions": [
|
||||
{
|
||||
"evaluator": { "params": [5500], "type": "gt" },
|
||||
"operator": { "type": "and" },
|
||||
"query": { "params": ["C"] },
|
||||
"reducer": { "params": [], "type": "last" },
|
||||
"type": "query"
|
||||
}
|
||||
],
|
||||
"datasource": { "type": "__expr__", "uid": "__expr__" },
|
||||
"expression": "B",
|
||||
"intervalMs": 1000,
|
||||
"maxDataPoints": 43200,
|
||||
"refId": "C",
|
||||
"type": "threshold"
|
||||
}
|
||||
}
|
||||
],
|
||||
"dashboardUid": "2990096a-3ff9-4217-a629-2152a260b6b6",
|
||||
"panelId": 3,
|
||||
"noDataState": "NoData",
|
||||
"execErrState": "Error",
|
||||
"keepFiringFor": "1m",
|
||||
"annotations": {
|
||||
"__dashboardUid__": "2990096a-3ff9-4217-a629-2152a260b6b6",
|
||||
"__panelId__": "3",
|
||||
"description": "Disable some devices to lower the peak.",
|
||||
"summary": "Peak is too high!"
|
||||
},
|
||||
"labels": {},
|
||||
"isPaused": false,
|
||||
"notification_settings": { "receiver": "Telegram" }
|
||||
},
|
||||
{
|
||||
"uid": "af8fsdow4mjgga",
|
||||
"title": "Alert if peak is negative",
|
||||
"condition": "C",
|
||||
"data": [
|
||||
{
|
||||
"refId": "A",
|
||||
"relativeTimeRange": { "from": 600, "to": 0 },
|
||||
"datasourceUid": "cf6lzj1gt48aoe",
|
||||
"model": {
|
||||
"intervalMs": 1000,
|
||||
"maxDataPoints": 43200,
|
||||
"query": "from(bucket: \"homeassistant\")\n |\u003e range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |\u003e filter(fn: (r) =\u003e r[\"entity_id\"] == \"thienpont_serruys_load_grid\")\n |\u003e filter(fn: (r) =\u003e r[\"_field\"] == \"value\")\n |\u003e filter(fn: (r) =\u003e r[\"domain\"] == \"sensor\")\n |\u003e filter(fn: (r) =\u003e r[\"_measurement\"] == \"W\")\n |\u003e aggregateWindow(every: 15m, fn: mean, createEmpty: false, offset: 0s)\n |\u003e yield(name: \"peak_load_15min\")\n",
|
||||
"refId": "A"
|
||||
}
|
||||
},
|
||||
{
|
||||
"refId": "B",
|
||||
"relativeTimeRange": { "from": 0, "to": 0 },
|
||||
"datasourceUid": "__expr__",
|
||||
"model": {
|
||||
"conditions": [
|
||||
{
|
||||
"evaluator": { "params": [], "type": "gt" },
|
||||
"operator": { "type": "and" },
|
||||
"query": { "params": ["B"] },
|
||||
"reducer": { "params": [], "type": "last" },
|
||||
"type": "query"
|
||||
}
|
||||
],
|
||||
"datasource": { "type": "__expr__", "uid": "__expr__" },
|
||||
"expression": "A",
|
||||
"intervalMs": 1000,
|
||||
"maxDataPoints": 43200,
|
||||
"reducer": "last",
|
||||
"refId": "B",
|
||||
"type": "reduce"
|
||||
}
|
||||
},
|
||||
{
|
||||
"refId": "C",
|
||||
"relativeTimeRange": { "from": 0, "to": 0 },
|
||||
"datasourceUid": "__expr__",
|
||||
"model": {
|
||||
"conditions": [
|
||||
{
|
||||
"evaluator": { "params": [0], "type": "lt" },
|
||||
"operator": { "type": "and" },
|
||||
"query": { "params": ["C"] },
|
||||
"reducer": { "params": [], "type": "last" },
|
||||
"type": "query"
|
||||
}
|
||||
],
|
||||
"datasource": { "type": "__expr__", "uid": "__expr__" },
|
||||
"expression": "B",
|
||||
"intervalMs": 1000,
|
||||
"maxDataPoints": 43200,
|
||||
"refId": "C",
|
||||
"type": "threshold"
|
||||
}
|
||||
}
|
||||
],
|
||||
"dashboardUid": "2990096a-3ff9-4217-a629-2152a260b6b6",
|
||||
"panelId": 3,
|
||||
"noDataState": "NoData",
|
||||
"execErrState": "Error",
|
||||
"keepFiringFor": "1m",
|
||||
"annotations": {
|
||||
"__dashboardUid__": "2990096a-3ff9-4217-a629-2152a260b6b6",
|
||||
"__panelId__": "3",
|
||||
"description": "Enable some devices",
|
||||
"summary": "Peak is too high!"
|
||||
},
|
||||
"isPaused": false,
|
||||
"notification_settings": { "receiver": "Telegram" }
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user