├── prometheus.yml ├── docker-compose-75.yml ├── README.md ├── docker-compose-71.yml └── docker-monitoring_rev1.json /prometheus.yml: -------------------------------------------------------------------------------- 1 | global: # 全局设置,可以被覆盖 2 | scrape_interval: 15s # 抓取采样数据的时间间隔,每15秒去被监控机上采样,即数据采集频率 3 | evaluation_interval: 15s # 监控数据规则的评估频率,比如设置文件系统使用率>75%发出告警则每15秒执行一次该规则,进行文件系统检查 4 | external_labels: # 与外部通信时用的外部标签 5 | monitor: 'nodecontainer-monitor' 6 | 7 | scrape_configs: # 抓取配置 8 | - job_name: 'prometheus' # 任务名,全局唯一 9 | scrape_interval: 5s # 本任务的抓取间隔,覆盖全局配置 10 | static_configs: # 静态目标配置 11 | # 抓取地址,路径为默认的/metrics 12 | - targets: ['localhost:9090','localhost:8080','localhost:9100','172.27.9.75:8080','172.27.9.75:9100'] 13 | -------------------------------------------------------------------------------- /docker-compose-75.yml: -------------------------------------------------------------------------------- 1 | version: '3.7' 2 | 3 | services: 4 | node-exporter: 5 | image: prom/node-exporter:latest 6 | network_mode: 'host' 7 | container_name: node-exporter 8 | restart: unless-stopped 9 | ports: 10 | - '9100:9100' 11 | command: 12 | - '--path.procfs=/host/proc' 13 | - '--path.sysfs=/host/sys' 14 | - '--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($$|/)' 15 | volumes: 16 | - /proc:/host/proc 17 | - /sys:/host/sys 18 | - /:/rootfs 19 | 20 | cadvisor: 21 | image: google/cadvisor:latest 22 | network_mode: 'host' 23 | container_name: cadvisor 24 | restart: unless-stopped 25 | ports: 26 | - '8080:8080' 27 | volumes: 28 | - /:/rootfs:ro 29 | - /var/run:/var/run:rw 30 | - /sys:/sys:ro 31 | - /var/lib/docker/:/var/lib/docker:ro 32 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Prometheus+Grafana+钉钉搭建监控告警系统 2 | **环境说明:** 3 | 4 | 5 | | 主机名 | Docker版本 | Prometheus版本 | Node exporter版本 | cAdvisor版本 | Grafana版本 | ip地址 | 6 | |:------: |:------:|:------:|:------:|:------:|:------:|:------:| 7 | | docker01 | 18.09.2 | 2.9.2 | 0.18.0 | v0.32.0 | v6.1.6 | 172.27.9.71 | 8 | | docker02 | 18.09.2 | / | 0.18.0 | v0.32.0 | /| 172.27.9.75 | 9 | 10 | 11 |
12 |     Prometheus是一套开源的系统监控报警框架,提供了监控数据搜集、存储、处理、可视化和告警一套完整的解决方案,该项目于2012年在SoundCloud上创建,拥有非常活跃的开发人员和用户社区,许多公司和组织都采用了Prometheus。作为一个独立的开源项目,Prometheus于2016年正式加入Cloud Native Computing Foundation,成为受欢迎度仅次于Kubernetes的项目。 13 | 程序编写环境: 14 | 15 | **文章目录:** 16 | # 一、Prometheus简介 17 | # 二、Prometheus架构 18 | # 三、Prometheus搭建 19 | ## 1. 环境说明 20 | ## 2. 监控主机部署 21 | ### 2.1 docker-compose.yml配置 22 | ### 2.2 运行docker-compose 23 | ### 2.3 查看Node Exporter监控数据 24 | ### 2.4 查看cAdvisor监控数据 25 | ## 3. 监控服务器部署 26 | ### 3.1 prometheus.yml配置 27 | ### 3.2 docker-compose.yml配置 28 | ### 3.3 运行docker-compose 29 | ### 3.4 查看Prometheus监控数据 30 | #### 3.4.1 配置文件查看 31 | #### 3.4.2 监控信息查看 32 | #### 3.4.3 查看指定监控项 33 | # 四、Grafana配置 34 | ## 1. 登陆grafana 35 | ## 2. 添加DataSource 36 | ## 3. Dashboards配置 37 | ### 3.1 下载Dashboards 38 | ### 3.2 导入 Dashboards 39 | ## 4. Grafana监控展示 40 | ### 4.1 容器监控展示 41 | ### 4.2 host监控展示 42 | # 五、钉钉告警配置 43 | ## 1. 钉钉添加机器人 44 | ## 2. Grafana新增告警项 45 | ## 3. 新增告警项 46 | ### 3.1 编辑Memory Usage 47 | ### 3.2 创建Alert 48 | ### 3.3 Alert配置 49 | ### 3.4 验证告警配置 50 | ### 3.5 保存告警配置 51 | ### 3.6 告警信息查看 52 | 53 |
54 |
55 | 56 | **详细搭建过程及测试:** 57 | 58 | 59 | https://blog.51cto.com/3241766/2394283 60 | -------------------------------------------------------------------------------- /docker-compose-71.yml: -------------------------------------------------------------------------------- 1 | version: '3.7' 2 | 3 | services: 4 | prometheus: 5 | image: prom/prometheus:latest 6 | network_mode: 'host' 7 | container_name: prometheus 8 | restart: unless-stopped 9 | ports: 10 | - '9090:9090' 11 | volumes: 12 | - /root/prometheus.yml:/etc/prometheus/prometheus.yml 13 | depends_on: 14 | - cadvisor 15 | 16 | node-exporter: 17 | image: prom/node-exporter:latest 18 | network_mode: 'host' 19 | container_name: node-exporter 20 | restart: unless-stopped 21 | ports: 22 | - '9100:9100' 23 | command: 24 | - '--path.procfs=/host/proc' 25 | - '--path.sysfs=/host/sys' 26 | - '--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($$|/)' 27 | volumes: 28 | - /proc:/host/proc 29 | - /sys:/host/sys 30 | - /:/rootfs 31 | 32 | cadvisor: 33 | image: google/cadvisor:latest 34 | network_mode: 'host' 35 | container_name: cadvisor 36 | restart: unless-stopped 37 | ports: 38 | - '8080:8080' 39 | volumes: 40 | - /:/rootfs:ro 41 | - /var/run:/var/run:rw 42 | - /sys:/sys:ro 43 | - /var/lib/docker/:/var/lib/docker:ro 44 | 45 | grafana: 46 | image: grafana/grafana:latest 47 | network_mode: 'host' 48 | container_name: grafana 49 | restart: unless-stopped 50 | ports: 51 | - '3000:3000' 52 | user: '0' 53 | volumes: 54 | - ./data/grafana:/var/lib/grafana 55 | environment: 56 | - GF_SECURITY_ADMIN_PASSWORD=admin 57 | - GF_SERVER_ROOT_URL=http://172.27.9.71:3000 58 | -------------------------------------------------------------------------------- /docker-monitoring_rev1.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "prometheus", 6 | "description": "prometheus with cAdvisor as a target", 7 | "type": "datasource", 8 | "pluginId": "prometheus", 9 | "pluginName": "Prometheus" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "panel", 15 | "id": "singlestat", 16 | "name": "Singlestat", 17 | "version": "" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "" 24 | }, 25 | { 26 | "type": "grafana", 27 | "id": "grafana", 28 | "name": "Grafana", 29 | "version": "3.1.0" 30 | }, 31 | { 32 | "type": "datasource", 33 | "id": "prometheus", 34 | "name": "Prometheus", 35 | "version": "1.0.0" 36 | } 37 | ], 38 | "id": null, 39 | "title": "Docker monitoring", 40 | "description": "Docker monitoring with Prometheus and cAdvisor", 41 | "tags": [ 42 | "docker" 43 | ], 44 | "style": "dark", 45 | "timezone": "browser", 46 | "editable": true, 47 | "hideControls": false, 48 | "sharedCrosshair": true, 49 | "rows": [ 50 | { 51 | "collapse": false, 52 | "editable": true, 53 | "height": "50", 54 | "panels": [ 55 | { 56 | "cacheTimeout": null, 57 | "colorBackground": false, 58 | "colorValue": false, 59 | "colors": [ 60 | "rgba(245, 54, 54, 0.9)", 61 | "rgba(237, 129, 40, 0.89)", 62 | "rgba(50, 172, 45, 0.97)" 63 | ], 64 | "datasource": "${DS_PROMETHEUS}", 65 | "editable": true, 66 | "error": false, 67 | "format": "none", 68 | "gauge": { 69 | "maxValue": 100, 70 | "minValue": 0, 71 | "show": false, 72 | "thresholdLabels": false, 73 | "thresholdMarkers": true 74 | }, 75 | "height": "20", 76 | "id": 7, 77 | "interval": null, 78 | "isNew": true, 79 | "links": [], 80 | "mappingType": 1, 81 | "mappingTypes": [ 82 | { 83 | "name": "value to text", 84 | "value": 1 85 | }, 86 | { 87 | "name": "range to text", 88 | "value": 2 89 | } 90 | ], 91 | "maxDataPoints": 100, 92 | "nullPointMode": "connected", 93 | "nullText": null, 94 | "postfix": "", 95 | "postfixFontSize": "50%", 96 | "prefix": "", 97 | "prefixFontSize": "50%", 98 | "rangeMaps": [ 99 | { 100 | "from": "null", 101 | "text": "N/A", 102 | "to": "null" 103 | } 104 | ], 105 | "span": 4, 106 | "sparkline": { 107 | "fillColor": "rgba(31, 118, 189, 0.18)", 108 | "full": false, 109 | "lineColor": "rgb(31, 120, 193)", 110 | "show": false 111 | }, 112 | "targets": [ 113 | { 114 | "expr": "count(container_last_seen{image!=\"\"})", 115 | "intervalFactor": 2, 116 | "legendFormat": "", 117 | "metric": "container_last_seen", 118 | "refId": "A", 119 | "step": 240 120 | } 121 | ], 122 | "thresholds": "", 123 | "title": "Running containers", 124 | "transparent": true, 125 | "type": "singlestat", 126 | "valueFontSize": "80%", 127 | "valueMaps": [ 128 | { 129 | "op": "=", 130 | "text": "N/A", 131 | "value": "null" 132 | } 133 | ], 134 | "valueName": "avg" 135 | }, 136 | { 137 | "cacheTimeout": null, 138 | "colorBackground": false, 139 | "colorValue": false, 140 | "colors": [ 141 | "rgba(245, 54, 54, 0.9)", 142 | "rgba(237, 129, 40, 0.89)", 143 | "rgba(50, 172, 45, 0.97)" 144 | ], 145 | "datasource": "${DS_PROMETHEUS}", 146 | "editable": true, 147 | "error": false, 148 | "format": "mbytes", 149 | "gauge": { 150 | "maxValue": 100, 151 | "minValue": 0, 152 | "show": false, 153 | "thresholdLabels": false, 154 | "thresholdMarkers": true 155 | }, 156 | "height": "20", 157 | "id": 5, 158 | "interval": null, 159 | "isNew": true, 160 | "links": [], 161 | "mappingType": 1, 162 | "mappingTypes": [ 163 | { 164 | "name": "value to text", 165 | "value": 1 166 | }, 167 | { 168 | "name": "range to text", 169 | "value": 2 170 | } 171 | ], 172 | "maxDataPoints": 100, 173 | "nullPointMode": "connected", 174 | "nullText": null, 175 | "postfix": "", 176 | "postfixFontSize": "50%", 177 | "prefix": "", 178 | "prefixFontSize": "50%", 179 | "rangeMaps": [ 180 | { 181 | "from": "null", 182 | "text": "N/A", 183 | "to": "null" 184 | } 185 | ], 186 | "span": 4, 187 | "sparkline": { 188 | "fillColor": "rgba(31, 118, 189, 0.18)", 189 | "full": false, 190 | "lineColor": "rgb(31, 120, 193)", 191 | "show": false 192 | }, 193 | "targets": [ 194 | { 195 | "expr": "sum(container_memory_usage_bytes{image!=\"\"})/1024/1024", 196 | "intervalFactor": 2, 197 | "legendFormat": "", 198 | "metric": "container_memory_usage_bytes", 199 | "refId": "A", 200 | "step": 240 201 | } 202 | ], 203 | "thresholds": "", 204 | "title": "Total Memory Usage", 205 | "transparent": true, 206 | "type": "singlestat", 207 | "valueFontSize": "80%", 208 | "valueMaps": [ 209 | { 210 | "op": "=", 211 | "text": "N/A", 212 | "value": "null" 213 | } 214 | ], 215 | "valueName": "current" 216 | }, 217 | { 218 | "cacheTimeout": null, 219 | "colorBackground": false, 220 | "colorValue": false, 221 | "colors": [ 222 | "rgba(245, 54, 54, 0.9)", 223 | "rgba(237, 129, 40, 0.89)", 224 | "rgba(50, 172, 45, 0.97)" 225 | ], 226 | "datasource": "${DS_PROMETHEUS}", 227 | "editable": true, 228 | "error": false, 229 | "format": "percent", 230 | "gauge": { 231 | "maxValue": 100, 232 | "minValue": 0, 233 | "show": false, 234 | "thresholdLabels": false, 235 | "thresholdMarkers": true 236 | }, 237 | "height": "20", 238 | "id": 6, 239 | "interval": null, 240 | "isNew": true, 241 | "links": [], 242 | "mappingType": 1, 243 | "mappingTypes": [ 244 | { 245 | "name": "value to text", 246 | "value": 1 247 | }, 248 | { 249 | "name": "range to text", 250 | "value": 2 251 | } 252 | ], 253 | "maxDataPoints": 100, 254 | "nullPointMode": "connected", 255 | "nullText": null, 256 | "postfix": "", 257 | "postfixFontSize": "50%", 258 | "prefix": "", 259 | "prefixFontSize": "50%", 260 | "rangeMaps": [ 261 | { 262 | "from": "null", 263 | "text": "N/A", 264 | "to": "null" 265 | } 266 | ], 267 | "span": 4, 268 | "sparkline": { 269 | "fillColor": "rgba(31, 118, 189, 0.18)", 270 | "full": false, 271 | "lineColor": "rgb(31, 120, 193)", 272 | "show": false 273 | }, 274 | "targets": [ 275 | { 276 | "expr": "sum(rate(container_cpu_user_seconds_total{image!=\"\"}[5m]) * 100)", 277 | "intervalFactor": 2, 278 | "legendFormat": "", 279 | "metric": "container_memory_usage_bytes", 280 | "refId": "A", 281 | "step": 240 282 | } 283 | ], 284 | "thresholds": "", 285 | "title": "Total CPU Usage", 286 | "transparent": true, 287 | "type": "singlestat", 288 | "valueFontSize": "80%", 289 | "valueMaps": [ 290 | { 291 | "op": "=", 292 | "text": "N/A", 293 | "value": "null" 294 | } 295 | ], 296 | "valueName": "current" 297 | } 298 | ], 299 | "title": "New row" 300 | }, 301 | { 302 | "collapse": false, 303 | "editable": true, 304 | "height": "250px", 305 | "panels": [ 306 | { 307 | "aliasColors": {}, 308 | "bars": false, 309 | "datasource": "${DS_PROMETHEUS}", 310 | "decimals": 2, 311 | "editable": true, 312 | "error": false, 313 | "fill": 1, 314 | "grid": { 315 | "threshold1": null, 316 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 317 | "threshold2": null, 318 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 319 | }, 320 | "id": 2, 321 | "isNew": true, 322 | "legend": { 323 | "alignAsTable": true, 324 | "avg": true, 325 | "current": true, 326 | "max": false, 327 | "min": false, 328 | "rightSide": true, 329 | "show": true, 330 | "total": false, 331 | "values": true 332 | }, 333 | "lines": true, 334 | "linewidth": 2, 335 | "links": [], 336 | "nullPointMode": "connected", 337 | "percentage": false, 338 | "pointradius": 5, 339 | "points": false, 340 | "renderer": "flot", 341 | "seriesOverrides": [], 342 | "span": 12, 343 | "stack": false, 344 | "steppedLine": false, 345 | "targets": [ 346 | { 347 | "expr": "rate(container_cpu_user_seconds_total{image!=\"\"}[5m]) * 100", 348 | "intervalFactor": 2, 349 | "legendFormat": "{{name}}", 350 | "metric": "cpu", 351 | "refId": "A", 352 | "step": 10 353 | } 354 | ], 355 | "timeFrom": null, 356 | "timeShift": null, 357 | "title": "CPU Usage", 358 | "tooltip": { 359 | "msResolution": false, 360 | "shared": true, 361 | "sort": 0, 362 | "value_type": "cumulative" 363 | }, 364 | "transparent": false, 365 | "type": "graph", 366 | "xaxis": { 367 | "show": true 368 | }, 369 | "yaxes": [ 370 | { 371 | "format": "percent", 372 | "label": null, 373 | "logBase": 1, 374 | "max": null, 375 | "min": null, 376 | "show": true 377 | }, 378 | { 379 | "format": "short", 380 | "label": null, 381 | "logBase": 1, 382 | "max": null, 383 | "min": null, 384 | "show": true 385 | } 386 | ] 387 | } 388 | ], 389 | "title": "Row" 390 | }, 391 | { 392 | "collapse": false, 393 | "editable": true, 394 | "height": "250px", 395 | "panels": [ 396 | { 397 | "aliasColors": {}, 398 | "bars": false, 399 | "datasource": "${DS_PROMETHEUS}", 400 | "decimals": 2, 401 | "editable": true, 402 | "error": false, 403 | "fill": 1, 404 | "grid": { 405 | "threshold1": null, 406 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 407 | "threshold2": null, 408 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 409 | }, 410 | "id": 1, 411 | "isNew": true, 412 | "legend": { 413 | "alignAsTable": true, 414 | "avg": true, 415 | "current": true, 416 | "max": false, 417 | "min": false, 418 | "rightSide": true, 419 | "show": true, 420 | "total": false, 421 | "values": true 422 | }, 423 | "lines": true, 424 | "linewidth": 2, 425 | "links": [], 426 | "nullPointMode": "connected", 427 | "percentage": false, 428 | "pointradius": 5, 429 | "points": false, 430 | "renderer": "flot", 431 | "seriesOverrides": [], 432 | "span": 12, 433 | "stack": false, 434 | "steppedLine": false, 435 | "targets": [ 436 | { 437 | "expr": "container_memory_usage_bytes{image!=\"\"}", 438 | "hide": false, 439 | "intervalFactor": 2, 440 | "legendFormat": "{{name}}", 441 | "metric": "container_memory_usage_bytes", 442 | "refId": "A", 443 | "step": 10 444 | } 445 | ], 446 | "timeFrom": null, 447 | "timeShift": null, 448 | "title": "Memory Usage", 449 | "tooltip": { 450 | "msResolution": false, 451 | "shared": true, 452 | "sort": 0, 453 | "value_type": "cumulative" 454 | }, 455 | "transparent": false, 456 | "type": "graph", 457 | "xaxis": { 458 | "show": true 459 | }, 460 | "yaxes": [ 461 | { 462 | "format": "bytes", 463 | "label": "", 464 | "logBase": 1, 465 | "max": null, 466 | "min": null, 467 | "show": true 468 | }, 469 | { 470 | "format": "short", 471 | "label": null, 472 | "logBase": 1, 473 | "max": null, 474 | "min": null, 475 | "show": false 476 | } 477 | ] 478 | } 479 | ], 480 | "title": "New row" 481 | }, 482 | { 483 | "collapse": false, 484 | "editable": true, 485 | "height": "250px", 486 | "panels": [ 487 | { 488 | "aliasColors": {}, 489 | "bars": false, 490 | "datasource": "${DS_PROMETHEUS}", 491 | "editable": true, 492 | "error": false, 493 | "fill": 1, 494 | "grid": { 495 | "threshold1": null, 496 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 497 | "threshold2": null, 498 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 499 | }, 500 | "id": 3, 501 | "isNew": true, 502 | "legend": { 503 | "avg": false, 504 | "current": false, 505 | "max": false, 506 | "min": false, 507 | "show": true, 508 | "total": false, 509 | "values": false 510 | }, 511 | "lines": true, 512 | "linewidth": 2, 513 | "links": [], 514 | "nullPointMode": "connected", 515 | "percentage": false, 516 | "pointradius": 5, 517 | "points": false, 518 | "renderer": "flot", 519 | "seriesOverrides": [], 520 | "span": 6, 521 | "stack": false, 522 | "steppedLine": false, 523 | "targets": [ 524 | { 525 | "expr": "irate(container_network_receive_bytes_total{image!=\"\"}[5m])", 526 | "intervalFactor": 2, 527 | "legendFormat": "{{name}}", 528 | "metric": "container_network_receive_bytes_total", 529 | "refId": "A", 530 | "step": 20 531 | } 532 | ], 533 | "timeFrom": null, 534 | "timeShift": null, 535 | "title": "Network Rx", 536 | "tooltip": { 537 | "msResolution": false, 538 | "shared": true, 539 | "sort": 0, 540 | "value_type": "cumulative" 541 | }, 542 | "type": "graph", 543 | "xaxis": { 544 | "show": true 545 | }, 546 | "yaxes": [ 547 | { 548 | "format": "Bps", 549 | "label": null, 550 | "logBase": 1, 551 | "max": null, 552 | "min": null, 553 | "show": true 554 | }, 555 | { 556 | "format": "short", 557 | "label": null, 558 | "logBase": 1, 559 | "max": null, 560 | "min": null, 561 | "show": true 562 | } 563 | ] 564 | }, 565 | { 566 | "aliasColors": {}, 567 | "bars": false, 568 | "datasource": "${DS_PROMETHEUS}", 569 | "editable": true, 570 | "error": false, 571 | "fill": 1, 572 | "grid": { 573 | "threshold1": null, 574 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 575 | "threshold2": null, 576 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 577 | }, 578 | "id": 4, 579 | "isNew": true, 580 | "legend": { 581 | "avg": false, 582 | "current": false, 583 | "max": false, 584 | "min": false, 585 | "show": true, 586 | "total": false, 587 | "values": false 588 | }, 589 | "lines": true, 590 | "linewidth": 2, 591 | "links": [], 592 | "nullPointMode": "connected", 593 | "percentage": false, 594 | "pointradius": 5, 595 | "points": false, 596 | "renderer": "flot", 597 | "seriesOverrides": [], 598 | "span": 6, 599 | "stack": false, 600 | "steppedLine": false, 601 | "targets": [ 602 | { 603 | "expr": "irate(container_network_transmit_bytes_total{image!=\"\"}[5m])", 604 | "intervalFactor": 2, 605 | "legendFormat": "{{name}}", 606 | "refId": "A", 607 | "step": 20 608 | } 609 | ], 610 | "timeFrom": null, 611 | "timeShift": null, 612 | "title": "Network Tx", 613 | "tooltip": { 614 | "msResolution": false, 615 | "shared": true, 616 | "sort": 0, 617 | "value_type": "cumulative" 618 | }, 619 | "type": "graph", 620 | "xaxis": { 621 | "show": true 622 | }, 623 | "yaxes": [ 624 | { 625 | "format": "Bps", 626 | "label": null, 627 | "logBase": 1, 628 | "max": null, 629 | "min": null, 630 | "show": true 631 | }, 632 | { 633 | "format": "short", 634 | "label": null, 635 | "logBase": 1, 636 | "max": null, 637 | "min": null, 638 | "show": true 639 | } 640 | ] 641 | } 642 | ], 643 | "title": "New row" 644 | } 645 | ], 646 | "time": { 647 | "from": "now-3h", 648 | "to": "now" 649 | }, 650 | "timepicker": { 651 | "refresh_intervals": [ 652 | "5s", 653 | "10s", 654 | "30s", 655 | "1m", 656 | "5m", 657 | "15m", 658 | "30m", 659 | "1h", 660 | "2h", 661 | "1d" 662 | ], 663 | "time_options": [ 664 | "5m", 665 | "15m", 666 | "1h", 667 | "6h", 668 | "12h", 669 | "24h", 670 | "2d", 671 | "7d", 672 | "30d" 673 | ] 674 | }, 675 | "templating": { 676 | "list": [] 677 | }, 678 | "annotations": { 679 | "list": [] 680 | }, 681 | "refresh": "10s", 682 | "schemaVersion": 12, 683 | "version": 26, 684 | "links": [], 685 | "gnetId": 193 686 | } --------------------------------------------------------------------------------