├── Grafana_Dashboard.json └── README.md /Grafana_Dashboard.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "Prometheus", 6 | "description": "", 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 Dashboard", 40 | "description": "Docker Monitoring Template", 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": "250px", 54 | "panels": [ 55 | { 56 | "cacheTimeout": null, 57 | "colorBackground": false, 58 | "colorValue": false, 59 | "colors": [ 60 | "rgba(50, 172, 45, 0.97)", 61 | "rgba(237, 129, 40, 0.89)", 62 | "rgba(245, 54, 54, 0.9)" 63 | ], 64 | "datasource": "${DS_PROMETHEUS}", 65 | "editable": true, 66 | "error": false, 67 | "format": "percent", 68 | "gauge": { 69 | "maxValue": 100, 70 | "minValue": 0, 71 | "show": true, 72 | "thresholdLabels": false, 73 | "thresholdMarkers": true 74 | }, 75 | "id": 4, 76 | "interval": null, 77 | "isNew": true, 78 | "links": [], 79 | "mappingType": 1, 80 | "mappingTypes": [ 81 | { 82 | "name": "value to text", 83 | "value": 1 84 | }, 85 | { 86 | "name": "range to text", 87 | "value": 2 88 | } 89 | ], 90 | "maxDataPoints": 100, 91 | "nullPointMode": "connected", 92 | "nullText": null, 93 | "postfix": "", 94 | "postfixFontSize": "50%", 95 | "prefix": "", 96 | "prefixFontSize": "50%", 97 | "rangeMaps": [ 98 | { 99 | "from": "null", 100 | "text": "N/A", 101 | "to": "null" 102 | } 103 | ], 104 | "span": 4, 105 | "sparkline": { 106 | "fillColor": "rgba(31, 118, 189, 0.18)", 107 | "full": false, 108 | "lineColor": "rgb(31, 120, 193)", 109 | "show": false 110 | }, 111 | "targets": [ 112 | { 113 | "expr": "(sum(node_memory_MemTotal) - sum(node_memory_MemFree+node_memory_Buffers+node_memory_Cached) ) / sum(node_memory_MemTotal) * 100", 114 | "interval": "10s", 115 | "intervalFactor": 1, 116 | "refId": "A", 117 | "step": 10 118 | } 119 | ], 120 | "thresholds": "65, 90", 121 | "title": "Memory usage", 122 | "type": "singlestat", 123 | "valueFontSize": "80%", 124 | "valueMaps": [ 125 | { 126 | "op": "=", 127 | "text": "N/A", 128 | "value": "null" 129 | } 130 | ], 131 | "valueName": "current" 132 | }, 133 | { 134 | "cacheTimeout": null, 135 | "colorBackground": false, 136 | "colorValue": false, 137 | "colors": [ 138 | "rgba(50, 172, 45, 0.97)", 139 | "rgba(237, 129, 40, 0.89)", 140 | "rgba(245, 54, 54, 0.9)" 141 | ], 142 | "datasource": "${DS_PROMETHEUS}", 143 | "decimals": 2, 144 | "editable": true, 145 | "error": false, 146 | "format": "percent", 147 | "gauge": { 148 | "maxValue": 100, 149 | "minValue": 0, 150 | "show": true, 151 | "thresholdLabels": false, 152 | "thresholdMarkers": true 153 | }, 154 | "id": 6, 155 | "interval": null, 156 | "isNew": true, 157 | "links": [], 158 | "mappingType": 1, 159 | "mappingTypes": [ 160 | { 161 | "name": "value to text", 162 | "value": 1 163 | }, 164 | { 165 | "name": "range to text", 166 | "value": 2 167 | } 168 | ], 169 | "maxDataPoints": 100, 170 | "nullPointMode": "connected", 171 | "nullText": null, 172 | "postfix": "", 173 | "postfixFontSize": "50%", 174 | "prefix": "", 175 | "prefixFontSize": "50%", 176 | "rangeMaps": [ 177 | { 178 | "from": "null", 179 | "text": "N/A", 180 | "to": "null" 181 | } 182 | ], 183 | "span": 4, 184 | "sparkline": { 185 | "fillColor": "rgba(31, 118, 189, 0.18)", 186 | "full": false, 187 | "lineColor": "rgb(31, 120, 193)", 188 | "show": false 189 | }, 190 | "targets": [ 191 | { 192 | "expr": "sum(sum by (container_name)( rate(container_cpu_usage_seconds_total{image!=\"\"}[1m] ) )) / count(node_cpu{mode=\"system\"}) * 100", 193 | "interval": "10s", 194 | "intervalFactor": 1, 195 | "refId": "A", 196 | "step": 10 197 | } 198 | ], 199 | "thresholds": "65, 90", 200 | "title": "CPU usage", 201 | "type": "singlestat", 202 | "valueFontSize": "80%", 203 | "valueMaps": [ 204 | { 205 | "op": "=", 206 | "text": "N/A", 207 | "value": "null" 208 | } 209 | ], 210 | "valueName": "current" 211 | }, 212 | { 213 | "cacheTimeout": null, 214 | "colorBackground": false, 215 | "colorValue": false, 216 | "colors": [ 217 | "rgba(50, 172, 45, 0.97)", 218 | "rgba(237, 129, 40, 0.89)", 219 | "rgba(245, 54, 54, 0.9)" 220 | ], 221 | "datasource": "${DS_PROMETHEUS}", 222 | "decimals": 2, 223 | "editable": true, 224 | "error": false, 225 | "format": "percent", 226 | "gauge": { 227 | "maxValue": 100, 228 | "minValue": 0, 229 | "show": true, 230 | "thresholdLabels": false, 231 | "thresholdMarkers": true 232 | }, 233 | "id": 7, 234 | "interval": null, 235 | "isNew": true, 236 | "links": [], 237 | "mappingType": 1, 238 | "mappingTypes": [ 239 | { 240 | "name": "value to text", 241 | "value": 1 242 | }, 243 | { 244 | "name": "range to text", 245 | "value": 2 246 | } 247 | ], 248 | "maxDataPoints": 100, 249 | "nullPointMode": "connected", 250 | "nullText": null, 251 | "postfix": "", 252 | "postfixFontSize": "50%", 253 | "prefix": "", 254 | "prefixFontSize": "50%", 255 | "rangeMaps": [ 256 | { 257 | "from": "null", 258 | "text": "N/A", 259 | "to": "null" 260 | } 261 | ], 262 | "span": 4, 263 | "sparkline": { 264 | "fillColor": "rgba(31, 118, 189, 0.18)", 265 | "full": false, 266 | "lineColor": "rgb(31, 120, 193)", 267 | "show": false 268 | }, 269 | "targets": [ 270 | { 271 | "expr": "sum (container_fs_limit_bytes - container_fs_usage_bytes) / sum(container_fs_limit_bytes)", 272 | "interval": "10s", 273 | "intervalFactor": 1, 274 | "metric": "", 275 | "refId": "A", 276 | "step": 10 277 | } 278 | ], 279 | "thresholds": "65, 90", 280 | "title": "Filesystem usage", 281 | "type": "singlestat", 282 | "valueFontSize": "80%", 283 | "valueMaps": [ 284 | { 285 | "op": "=", 286 | "text": "N/A", 287 | "value": "null" 288 | } 289 | ], 290 | "valueName": "current" 291 | } 292 | ], 293 | "title": "Row" 294 | }, 295 | { 296 | "collapse": false, 297 | "editable": true, 298 | "height": "250px", 299 | "panels": [ 300 | { 301 | "aliasColors": {}, 302 | "bars": false, 303 | "datasource": "${DS_PROMETHEUS}", 304 | "decimals": 3, 305 | "editable": true, 306 | "error": false, 307 | "fill": 0, 308 | "grid": { 309 | "threshold1": null, 310 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 311 | "threshold2": null, 312 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 313 | }, 314 | "id": 3, 315 | "isNew": true, 316 | "legend": { 317 | "alignAsTable": true, 318 | "avg": true, 319 | "current": true, 320 | "max": false, 321 | "min": false, 322 | "rightSide": true, 323 | "show": true, 324 | "sort": "current", 325 | "sortDesc": true, 326 | "total": false, 327 | "values": true 328 | }, 329 | "lines": true, 330 | "linewidth": 2, 331 | "links": [], 332 | "nullPointMode": "connected", 333 | "percentage": false, 334 | "pointradius": 5, 335 | "points": false, 336 | "renderer": "flot", 337 | "seriesOverrides": [], 338 | "span": 12, 339 | "stack": false, 340 | "steppedLine": false, 341 | "targets": [ 342 | { 343 | "expr": "sort_desc(sum(rate(container_cpu_user_seconds_total{image!=\"\"}[1m])) by (name))", 344 | "interval": "10s", 345 | "intervalFactor": 1, 346 | "legendFormat": "{{ name }}", 347 | "metric": "container_cpu_user_seconds_total", 348 | "refId": "A", 349 | "step": 10 350 | } 351 | ], 352 | "timeFrom": null, 353 | "timeShift": null, 354 | "title": "Container CPU usage", 355 | "tooltip": { 356 | "msResolution": true, 357 | "shared": true, 358 | "sort": 0, 359 | "value_type": "cumulative" 360 | }, 361 | "type": "graph", 362 | "xaxis": { 363 | "show": true 364 | }, 365 | "yaxes": [ 366 | { 367 | "format": "percentunit", 368 | "label": null, 369 | "logBase": 1, 370 | "max": null, 371 | "min": null, 372 | "show": true 373 | }, 374 | { 375 | "format": "short", 376 | "label": null, 377 | "logBase": 1, 378 | "max": null, 379 | "min": null, 380 | "show": true 381 | } 382 | ] 383 | } 384 | ], 385 | "title": "New row" 386 | }, 387 | { 388 | "collapse": false, 389 | "editable": true, 390 | "height": "250px", 391 | "panels": [ 392 | { 393 | "aliasColors": {}, 394 | "bars": false, 395 | "datasource": "${DS_PROMETHEUS}", 396 | "decimals": 2, 397 | "editable": true, 398 | "error": false, 399 | "fill": 0, 400 | "grid": { 401 | "threshold1": null, 402 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 403 | "threshold2": null, 404 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 405 | }, 406 | "id": 2, 407 | "isNew": true, 408 | "legend": { 409 | "alignAsTable": true, 410 | "avg": true, 411 | "current": true, 412 | "max": false, 413 | "min": false, 414 | "rightSide": true, 415 | "show": true, 416 | "sideWidth": 200, 417 | "sort": "current", 418 | "sortDesc": true, 419 | "total": false, 420 | "values": true 421 | }, 422 | "lines": true, 423 | "linewidth": 2, 424 | "links": [], 425 | "nullPointMode": "connected", 426 | "percentage": false, 427 | "pointradius": 5, 428 | "points": false, 429 | "renderer": "flot", 430 | "seriesOverrides": [], 431 | "span": 12, 432 | "stack": false, 433 | "steppedLine": false, 434 | "targets": [ 435 | { 436 | "expr": "sort_desc(sum(container_memory_usage_bytes{image!=\"\"}) by (name))", 437 | "interval": "10s", 438 | "intervalFactor": 1, 439 | "legendFormat": "{{ name }}", 440 | "metric": "container_memory_usage:sort_desc", 441 | "refId": "A", 442 | "step": 10 443 | } 444 | ], 445 | "timeFrom": null, 446 | "timeShift": null, 447 | "title": "Container Memory Usage", 448 | "tooltip": { 449 | "msResolution": false, 450 | "shared": true, 451 | "sort": 0, 452 | "value_type": "cumulative" 453 | }, 454 | "type": "graph", 455 | "xaxis": { 456 | "show": true 457 | }, 458 | "yaxes": [ 459 | { 460 | "format": "bytes", 461 | "label": null, 462 | "logBase": 1, 463 | "max": null, 464 | "min": null, 465 | "show": true 466 | }, 467 | { 468 | "format": "short", 469 | "label": null, 470 | "logBase": 1, 471 | "max": null, 472 | "min": null, 473 | "show": true 474 | } 475 | ] 476 | }, 477 | { 478 | "aliasColors": {}, 479 | "bars": false, 480 | "datasource": "${DS_PROMETHEUS}", 481 | "decimals": 2, 482 | "editable": true, 483 | "error": false, 484 | "fill": 0, 485 | "grid": { 486 | "threshold1": null, 487 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 488 | "threshold2": null, 489 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 490 | }, 491 | "id": 8, 492 | "isNew": true, 493 | "legend": { 494 | "alignAsTable": true, 495 | "avg": true, 496 | "current": true, 497 | "max": false, 498 | "min": false, 499 | "rightSide": true, 500 | "show": true, 501 | "sideWidth": 200, 502 | "sort": "current", 503 | "sortDesc": true, 504 | "total": false, 505 | "values": true 506 | }, 507 | "lines": true, 508 | "linewidth": 2, 509 | "links": [], 510 | "nullPointMode": "connected", 511 | "percentage": false, 512 | "pointradius": 5, 513 | "points": false, 514 | "renderer": "flot", 515 | "seriesOverrides": [], 516 | "span": 12, 517 | "stack": false, 518 | "steppedLine": false, 519 | "targets": [ 520 | { 521 | "expr": "sort_desc(sum by (name) (rate(container_network_receive_bytes_total{image!=\"\"}[1m] ) ))", 522 | "interval": "10s", 523 | "intervalFactor": 1, 524 | "legendFormat": "{{ name }}", 525 | "metric": "container_network_receive_bytes_total", 526 | "refId": "A", 527 | "step": 10 528 | } 529 | ], 530 | "timeFrom": null, 531 | "timeShift": null, 532 | "title": "Container Network Input", 533 | "tooltip": { 534 | "msResolution": false, 535 | "shared": true, 536 | "sort": 0, 537 | "value_type": "cumulative" 538 | }, 539 | "type": "graph", 540 | "xaxis": { 541 | "show": true 542 | }, 543 | "yaxes": [ 544 | { 545 | "format": "bytes", 546 | "label": null, 547 | "logBase": 1, 548 | "max": null, 549 | "min": null, 550 | "show": true 551 | }, 552 | { 553 | "format": "short", 554 | "label": null, 555 | "logBase": 1, 556 | "max": null, 557 | "min": null, 558 | "show": true 559 | } 560 | ] 561 | }, 562 | { 563 | "aliasColors": {}, 564 | "bars": false, 565 | "datasource": "${DS_PROMETHEUS}", 566 | "decimals": 2, 567 | "editable": true, 568 | "error": false, 569 | "fill": 0, 570 | "grid": { 571 | "threshold1": null, 572 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 573 | "threshold2": null, 574 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 575 | }, 576 | "id": 9, 577 | "isNew": true, 578 | "legend": { 579 | "alignAsTable": true, 580 | "avg": true, 581 | "current": true, 582 | "max": false, 583 | "min": false, 584 | "rightSide": true, 585 | "show": true, 586 | "sideWidth": 200, 587 | "sort": "current", 588 | "sortDesc": true, 589 | "total": false, 590 | "values": true 591 | }, 592 | "lines": true, 593 | "linewidth": 2, 594 | "links": [], 595 | "nullPointMode": "connected", 596 | "percentage": false, 597 | "pointradius": 5, 598 | "points": false, 599 | "renderer": "flot", 600 | "seriesOverrides": [], 601 | "span": 12, 602 | "stack": false, 603 | "steppedLine": false, 604 | "targets": [ 605 | { 606 | "expr": "sort_desc(sum by (name) (rate(container_network_transmit_bytes_total{image!=\"\"}[1m] ) ))", 607 | "intervalFactor": 2, 608 | "legendFormat": "{{ name }}", 609 | "metric": "container_network_transmit_bytes_total", 610 | "refId": "B", 611 | "step": 4 612 | } 613 | ], 614 | "timeFrom": null, 615 | "timeShift": null, 616 | "title": "Container Network Output", 617 | "tooltip": { 618 | "msResolution": false, 619 | "shared": true, 620 | "sort": 0, 621 | "value_type": "cumulative" 622 | }, 623 | "type": "graph", 624 | "xaxis": { 625 | "show": true 626 | }, 627 | "yaxes": [ 628 | { 629 | "format": "bytes", 630 | "label": null, 631 | "logBase": 1, 632 | "max": null, 633 | "min": null, 634 | "show": true 635 | }, 636 | { 637 | "format": "short", 638 | "label": null, 639 | "logBase": 1, 640 | "max": null, 641 | "min": null, 642 | "show": false 643 | } 644 | ] 645 | } 646 | ], 647 | "title": "New row" 648 | } 649 | ], 650 | "time": { 651 | "from": "now-1h", 652 | "to": "now" 653 | }, 654 | "timepicker": { 655 | "refresh_intervals": [ 656 | "5s", 657 | "10s", 658 | "30s", 659 | "1m", 660 | "5m", 661 | "15m", 662 | "30m", 663 | "1h", 664 | "2h", 665 | "1d" 666 | ], 667 | "time_options": [ 668 | "5m", 669 | "15m", 670 | "1h", 671 | "6h", 672 | "12h", 673 | "24h", 674 | "2d", 675 | "7d", 676 | "30d" 677 | ] 678 | }, 679 | "templating": { 680 | "list": [] 681 | }, 682 | "annotations": { 683 | "list": [] 684 | }, 685 | "refresh": "10s", 686 | "schemaVersion": 12, 687 | "version": 3, 688 | "links": [], 689 | "gnetId": 179 690 | } 691 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # grafana_dashboard 2 | 3 | Repo for the Grafana Dashboard for the [Docker Monitoring with Prometheus Project](https://github.com/vegasbrianc/prometheus). This Dashboard is also hosted on Grafana.et under Dashboards [Grafana Dashboard](https://grafana.net/dashboards/193). 4 | 5 | PR requests are welcome to updated or change the dashboard. 6 | 7 | Dashboard: 8 | ![Grafana Dashboard](https://github.com/vegasbrianc/prometheus/blob/version-2/images/Dashboard.png) 9 | --------------------------------------------------------------------------------