├── .dockerignore ├── .travis.yml ├── Docker_Monitoring.png ├── README.md ├── docker-compose.yml ├── docker-monitoring-0.8.json ├── docker-monitoring-0.9.json ├── influxdb_0.8_queries ├── CPU.png ├── FS_Limit.png ├── Memory.png └── Network.png └── influxdb_0.9_queries ├── CPU.png ├── FS_Limit.png ├── Influx_Settings.png ├── Memory.png └── Network.png /.dockerignore: -------------------------------------------------------------------------------- 1 | /Queries 2 | Docker_Monitoring.png 3 | circleci.yml 4 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: required 2 | 3 | services: 4 | - docker 5 | 6 | language: bash 7 | 8 | before_script: 9 | - docker-compose pull 10 | - docker-compose up -d 11 | - docker ps 12 | 13 | script: 14 | - while ! curl --retry 10 --retry-delay 5 -v http://0.0.0.0:8080 >/dev/null; do sleep 1; done 15 | - while ! curl --retry 10 --retry-delay 5 -v http://0.0.0.0:3000 >/dev/null; do sleep 1; done 16 | -------------------------------------------------------------------------------- /Docker_Monitoring.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/Docker_Monitoring.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Docker Monitoring Grafana JSON Dashboard 2 | [![Build Status](https://travis-ci.org/vegasbrianc/docker-monitoring.svg?branch=master)](https://travis-ci.org/vegasbrianc/docker-monitoring) 3 | 4 | After publishing the article for Docker Monitoring based on cAdvisor, InfluxDB, and Grafana the request came up to share the Grafana Dashboards that were referenced in the article - [Docker Monitoring Article](https://www.brianchristner.io/how-to-setup-docker-monitoring/) 5 | 6 | Please take a look a the Docker-Monitoring-xx.json file to view the Grafana Dashboard's json file and check out the queries folders for screenshots of the queries in each graph. 7 | 8 | Also added the docker-compose.yml file to easily stand up the entire Monitoring Stack. 9 | 10 | ![Docker Grafana Monioring Dashboard](https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/master/Docker_Monitoring.png) 11 | 12 | 13 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | influxdbData: 5 | image: busybox 6 | volumes: 7 | - ./data/influxdb:/data 8 | 9 | influxdb: 10 | image: tutum/influxdb:0.9 11 | restart: always 12 | environment: 13 | - PRE_CREATE_DB=cadvisor 14 | ports: 15 | - "8083:8083" 16 | - "8086:8086" 17 | expose: 18 | - "8090" 19 | - "8099" 20 | volumes_from: 21 | - "influxdbData" 22 | 23 | cadvisor: 24 | image: google/cadvisor:v0.29.0 25 | links: 26 | - influxdb:influxsrv 27 | command: -storage_driver=influxdb -storage_driver_db=cadvisor -storage_driver_host=influxsrv:8086 28 | restart: always 29 | ports: 30 | - "8080:8080" 31 | volumes: 32 | - /:/rootfs:ro 33 | - /var/run:/var/run:rw 34 | - /sys:/sys:ro 35 | - /var/lib/docker/:/var/lib/docker:ro 36 | 37 | grafana: 38 | image: grafana/grafana:2.6.0 39 | restart: always 40 | links: 41 | - influxdb:influxsrv 42 | ports: 43 | - "3000:3000" 44 | environment: 45 | - HTTP_USER=admin 46 | - HTTP_PASS=admin 47 | - INFLUXDB_HOST=influxsrv 48 | - INFLUXDB_PORT=8086 49 | - INFLUXDB_NAME=cadvisor 50 | - INFLUXDB_USER=root 51 | - INFLUXDB_PASS=root 52 | -------------------------------------------------------------------------------- /docker-monitoring-0.8.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": 1, 3 | "title": "Docker Monitoring", 4 | "originalTitle": "Docker Monitoring", 5 | "tags": [], 6 | "style": "dark", 7 | "timezone": "browser", 8 | "editable": true, 9 | "hideControls": false, 10 | "sharedCrosshair": false, 11 | "rows": [ 12 | { 13 | "collapse": false, 14 | "editable": true, 15 | "height": "250px", 16 | "panels": [ 17 | { 18 | "aliasColors": { 19 | "FS Limit": "#F9934E", 20 | "FS Usage": "#E0F9D7" 21 | }, 22 | "bars": false, 23 | "datasource": null, 24 | "editable": true, 25 | "error": false, 26 | "fill": 1, 27 | "grid": { 28 | "leftLogBase": 1, 29 | "leftMax": null, 30 | "leftMin": null, 31 | "rightLogBase": 1, 32 | "rightMax": null, 33 | "rightMin": null, 34 | "threshold1": null, 35 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 36 | "threshold2": null, 37 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 38 | }, 39 | "id": 4, 40 | "legend": { 41 | "avg": false, 42 | "current": false, 43 | "max": false, 44 | "min": false, 45 | "show": true, 46 | "total": false, 47 | "values": false 48 | }, 49 | "lines": true, 50 | "linewidth": 2, 51 | "links": [], 52 | "nullPointMode": "connected", 53 | "percentage": false, 54 | "pointradius": 5, 55 | "points": false, 56 | "renderer": "flot", 57 | "seriesOverrides": [], 58 | "span": 6, 59 | "stack": false, 60 | "steppedLine": false, 61 | "targets": [ 62 | { 63 | "alias": "FS Limit", 64 | "column": "fs_limit", 65 | "function": "mean", 66 | "query": "select mean(fs_limit) from \"stats\" where $timeFilter group by time($interval) order asc", 67 | "series": "stats" 68 | }, 69 | { 70 | "alias": "FS Usage", 71 | "column": "fs_usage", 72 | "function": "mean", 73 | "query": "select mean(fs_usage) from \"stats\" where $timeFilter group by time($interval) order asc", 74 | "series": "stats", 75 | "target": "" 76 | } 77 | ], 78 | "timeFrom": null, 79 | "timeShift": null, 80 | "title": "Filesystem Limit / Usage", 81 | "tooltip": { 82 | "shared": true, 83 | "value_type": "cumulative" 84 | }, 85 | "type": "graph", 86 | "x-axis": true, 87 | "y-axis": true, 88 | "y_formats": [ 89 | "bits", 90 | "short" 91 | ] 92 | }, 93 | { 94 | "aliasColors": {}, 95 | "bars": false, 96 | "datasource": "influxdb", 97 | "decimals": null, 98 | "editable": true, 99 | "error": false, 100 | "fill": 1, 101 | "grid": { 102 | "leftLogBase": 1, 103 | "leftMax": null, 104 | "leftMin": null, 105 | "rightLogBase": 1, 106 | "rightMax": null, 107 | "rightMin": null, 108 | "threshold1": null, 109 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 110 | "threshold2": null, 111 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 112 | }, 113 | "id": 1, 114 | "interval": "", 115 | "leftYAxisLabel": "CPU time/sec", 116 | "legend": { 117 | "avg": false, 118 | "current": false, 119 | "max": false, 120 | "min": false, 121 | "show": true, 122 | "total": false, 123 | "values": false 124 | }, 125 | "lines": true, 126 | "linewidth": 2, 127 | "links": [], 128 | "nullPointMode": "null", 129 | "percentage": false, 130 | "pointradius": 5, 131 | "points": false, 132 | "renderer": "flot", 133 | "seriesOverrides": [], 134 | "span": 6, 135 | "stack": false, 136 | "steppedLine": true, 137 | "targets": [ 138 | { 139 | "alias": "", 140 | "column": "cpu_cumulative_usage", 141 | "function": "derivative", 142 | "groupby_field": "container_name", 143 | "query": "select container_name, median(cpu_cumulative_usage) from \"stats\" where $timeFilter group by time($interval), container_name order asc", 144 | "series": "stats", 145 | "interval": "2s" 146 | } 147 | ], 148 | "timeFrom": null, 149 | "timeShift": null, 150 | "title": "CPU Usage", 151 | "tooltip": { 152 | "shared": true, 153 | "value_type": "cumulative" 154 | }, 155 | "type": "graph", 156 | "x-axis": true, 157 | "y-axis": true, 158 | "y_formats": [ 159 | "ns", 160 | "short" 161 | ] 162 | } 163 | ], 164 | "title": "Row" 165 | }, 166 | { 167 | "collapse": false, 168 | "editable": true, 169 | "height": "250px", 170 | "panels": [ 171 | { 172 | "aliasColors": {}, 173 | "bars": false, 174 | "datasource": null, 175 | "decimals": null, 176 | "editable": true, 177 | "error": false, 178 | "fill": 1, 179 | "grid": { 180 | "leftLogBase": 1, 181 | "leftMax": null, 182 | "leftMin": null, 183 | "rightLogBase": 1, 184 | "rightMax": null, 185 | "rightMin": null, 186 | "threshold1": null, 187 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 188 | "threshold2": null, 189 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 190 | }, 191 | "id": 2, 192 | "legend": { 193 | "avg": false, 194 | "current": false, 195 | "max": false, 196 | "min": false, 197 | "show": true, 198 | "total": false, 199 | "values": false 200 | }, 201 | "lines": true, 202 | "linewidth": 2, 203 | "links": [], 204 | "nullPointMode": "connected", 205 | "percentage": false, 206 | "pointradius": 5, 207 | "points": false, 208 | "renderer": "flot", 209 | "rightYAxisLabel": "", 210 | "seriesOverrides": [], 211 | "span": 6, 212 | "stack": false, 213 | "steppedLine": false, 214 | "targets": [ 215 | { 216 | "alias": "", 217 | "column": "memory_usage", 218 | "function": "mean", 219 | "groupby_field": "container_name", 220 | "query": "select container_name, mean(memory_usage) from \"stats\" where $timeFilter group by time($interval), container_name order asc", 221 | "series": "stats" 222 | } 223 | ], 224 | "timeFrom": null, 225 | "timeShift": null, 226 | "title": "Memory Usage", 227 | "tooltip": { 228 | "shared": true, 229 | "value_type": "cumulative" 230 | }, 231 | "type": "graph", 232 | "x-axis": true, 233 | "y-axis": true, 234 | "y_formats": [ 235 | "bytes", 236 | "short" 237 | ] 238 | }, 239 | { 240 | "aliasColors": { 241 | "TX": "#890F02" 242 | }, 243 | "bars": false, 244 | "datasource": null, 245 | "editable": true, 246 | "error": false, 247 | "fill": 1, 248 | "grid": { 249 | "leftLogBase": 1, 250 | "leftMax": null, 251 | "leftMin": null, 252 | "rightLogBase": 1, 253 | "rightMax": null, 254 | "rightMin": null, 255 | "threshold1": null, 256 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 257 | "threshold2": null, 258 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 259 | }, 260 | "id": 3, 261 | "legend": { 262 | "avg": false, 263 | "current": false, 264 | "max": false, 265 | "min": false, 266 | "show": true, 267 | "total": false, 268 | "values": false 269 | }, 270 | "lines": true, 271 | "linewidth": 2, 272 | "links": [], 273 | "nullPointMode": "connected", 274 | "percentage": false, 275 | "pointradius": 5, 276 | "points": false, 277 | "renderer": "flot", 278 | "seriesOverrides": [], 279 | "span": 6, 280 | "stack": false, 281 | "steppedLine": false, 282 | "targets": [ 283 | { 284 | "alias": "TX", 285 | "column": "tx_bytes", 286 | "function": "last", 287 | "query": "select last(tx_bytes) from \"stats\" where $timeFilter group by time($interval) order asc", 288 | "series": "stats" 289 | }, 290 | { 291 | "alias": "RX", 292 | "column": "rx_bytes", 293 | "function": "last", 294 | "query": "select last(rx_bytes) from \"stats\" where $timeFilter group by time($interval) order asc", 295 | "series": "stats", 296 | "target": "" 297 | } 298 | ], 299 | "timeFrom": null, 300 | "timeShift": null, 301 | "title": "Network Traffic", 302 | "tooltip": { 303 | "shared": true, 304 | "value_type": "cumulative" 305 | }, 306 | "type": "graph", 307 | "x-axis": true, 308 | "y-axis": true, 309 | "y_formats": [ 310 | "Bps", 311 | "Bps" 312 | ] 313 | } 314 | ], 315 | "title": "New row" 316 | } 317 | ], 318 | "nav": [ 319 | { 320 | "collapse": false, 321 | "enable": true, 322 | "notice": false, 323 | "now": true, 324 | "refresh_intervals": [ 325 | "5s", 326 | "10s", 327 | "30s", 328 | "1m", 329 | "5m", 330 | "15m", 331 | "30m", 332 | "1h", 333 | "2h", 334 | "1d" 335 | ], 336 | "status": "Stable", 337 | "time_options": [ 338 | "5m", 339 | "15m", 340 | "1h", 341 | "6h", 342 | "12h", 343 | "24h", 344 | "2d", 345 | "7d", 346 | "30d" 347 | ], 348 | "type": "timepicker" 349 | } 350 | ], 351 | "time": { 352 | "from": "now-6h", 353 | "to": "now" 354 | }, 355 | "templating": { 356 | "list": [] 357 | }, 358 | "annotations": { 359 | "list": [] 360 | }, 361 | "refresh": false, 362 | "schemaVersion": 6, 363 | "version": 12 364 | } 365 | -------------------------------------------------------------------------------- /docker-monitoring-0.9.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": 1, 3 | "title": "New dashboard", 4 | "originalTitle": "New dashboard", 5 | "tags": [], 6 | "style": "dark", 7 | "timezone": "browser", 8 | "editable": true, 9 | "hideControls": false, 10 | "sharedCrosshair": false, 11 | "rows": [ 12 | { 13 | "collapse": false, 14 | "editable": true, 15 | "height": "250px", 16 | "panels": [ 17 | { 18 | "aliasColors": { 19 | "fs_usage.mean": "#BF1B00" 20 | }, 21 | "bars": false, 22 | "datasource": null, 23 | "editable": true, 24 | "error": false, 25 | "fill": 2, 26 | "grid": { 27 | "leftLogBase": 1, 28 | "leftMax": null, 29 | "leftMin": null, 30 | "rightLogBase": 1, 31 | "rightMax": null, 32 | "rightMin": null, 33 | "threshold1": null, 34 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 35 | "threshold2": null, 36 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 37 | }, 38 | "id": 1, 39 | "interval": ">180s", 40 | "isNew": true, 41 | "legend": { 42 | "avg": false, 43 | "current": false, 44 | "max": false, 45 | "min": false, 46 | "show": true, 47 | "total": false, 48 | "values": false 49 | }, 50 | "lines": true, 51 | "linewidth": 3, 52 | "links": [], 53 | "nullPointMode": "connected", 54 | "percentage": false, 55 | "pointradius": 5, 56 | "points": false, 57 | "renderer": "png", 58 | "seriesOverrides": [], 59 | "span": 6, 60 | "stack": false, 61 | "steppedLine": false, 62 | "targets": [ 63 | { 64 | "dsType": "influxdb", 65 | "groupBy": [ 66 | { 67 | "params": [ 68 | "$interval" 69 | ], 70 | "type": "time" 71 | }, 72 | { 73 | "params": [ 74 | "null" 75 | ], 76 | "type": "fill" 77 | } 78 | ], 79 | "measurement": "fs_limit", 80 | "query": "SELECT mean(\"value\") FROM \"fs_limit\" WHERE $timeFilter GROUP BY time($interval) fill(null)", 81 | "rawQuery": true, 82 | "refId": "A", 83 | "resultFormat": "time_series", 84 | "select": [ 85 | [ 86 | { 87 | "params": [ 88 | "value" 89 | ], 90 | "type": "field" 91 | }, 92 | { 93 | "params": [], 94 | "type": "mean" 95 | } 96 | ] 97 | ], 98 | "tags": [] 99 | }, 100 | { 101 | "dsType": "influxdb", 102 | "groupBy": [ 103 | { 104 | "params": [ 105 | "$interval" 106 | ], 107 | "type": "time" 108 | }, 109 | { 110 | "params": [ 111 | "null" 112 | ], 113 | "type": "fill" 114 | } 115 | ], 116 | "measurement": "fs_usage", 117 | "query": "SELECT mean(\"value\") FROM \"fs_usage\" WHERE $timeFilter GROUP BY time($interval) fill(null)", 118 | "rawQuery": true, 119 | "refId": "B", 120 | "resultFormat": "time_series", 121 | "select": [ 122 | [ 123 | { 124 | "params": [ 125 | "value" 126 | ], 127 | "type": "field" 128 | }, 129 | { 130 | "params": [], 131 | "type": "mean" 132 | } 133 | ] 134 | ], 135 | "tags": [] 136 | } 137 | ], 138 | "timeFrom": null, 139 | "timeShift": null, 140 | "title": "Filesystem Limit/Usage", 141 | "tooltip": { 142 | "shared": false, 143 | "value_type": "cumulative" 144 | }, 145 | "type": "graph", 146 | "x-axis": true, 147 | "y-axis": true, 148 | "y_formats": [ 149 | "bytes", 150 | "bytes" 151 | ] 152 | }, 153 | { 154 | "title": "CPU Usage", 155 | "error": false, 156 | "span": 6, 157 | "editable": true, 158 | "type": "graph", 159 | "isNew": true, 160 | "id": 2, 161 | "datasource": null, 162 | "renderer": "flot", 163 | "x-axis": false, 164 | "y-axis": true, 165 | "y_formats": [ 166 | "hertz", 167 | "hertz" 168 | ], 169 | "grid": { 170 | "leftLogBase": 1, 171 | "leftMax": null, 172 | "rightMax": null, 173 | "leftMin": null, 174 | "rightMin": null, 175 | "rightLogBase": 1, 176 | "threshold1": null, 177 | "threshold2": null, 178 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 179 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 180 | }, 181 | "lines": true, 182 | "fill": 1, 183 | "linewidth": 2, 184 | "points": false, 185 | "pointradius": 5, 186 | "bars": false, 187 | "stack": false, 188 | "percentage": false, 189 | "legend": { 190 | "show": true, 191 | "values": false, 192 | "min": false, 193 | "max": false, 194 | "current": false, 195 | "total": false, 196 | "avg": false, 197 | "alignAsTable": false 198 | }, 199 | "nullPointMode": "null as zero", 200 | "steppedLine": false, 201 | "tooltip": { 202 | "value_type": "individual", 203 | "shared": true 204 | }, 205 | "timeFrom": null, 206 | "timeShift": null, 207 | "targets": [ 208 | { 209 | "refId": "A", 210 | "dsType": "influxdb", 211 | "resultFormat": "time_series", 212 | "tags": [ 213 | { 214 | "key": "container_name", 215 | "operator": "!=", 216 | "value": "/" 217 | } 218 | ], 219 | "groupBy": [ 220 | { 221 | "type": "time", 222 | "params": [ 223 | "$interval" 224 | ] 225 | }, 226 | { 227 | "type": "tag", 228 | "params": [ 229 | "container_name" 230 | ] 231 | }, 232 | { 233 | "type": "fill", 234 | "params": [ 235 | "null" 236 | ] 237 | } 238 | ], 239 | "select": [ 240 | [ 241 | { 242 | "type": "field", 243 | "params": [ 244 | "value" 245 | ] 246 | }, 247 | { 248 | "type": "mean", 249 | "params": [] 250 | } 251 | ] 252 | ], 253 | "measurement": "cpu_usage_system", 254 | "query": "SELECT mean(\"value\") FROM \"cpu_usage_system\" WHERE $timeFilter GROUP BY time($interval), \"container_name\" fill(null)", 255 | "rawQuery": true 256 | } 257 | ], 258 | "aliasColors": { 259 | "cpu_usage_system.mean {container_name: /}": "#7EB26D" 260 | }, 261 | "seriesOverrides": [ 262 | { 263 | "alias": "cpu_usage_system.mean {container_name: /}", 264 | "legend": false 265 | }, 266 | { 267 | "alias": "cpu_usage_system.mean {container_name: /docker}", 268 | "legend": false 269 | }, 270 | { 271 | "alias": "cpu_usage_system.mean {container_name: /user/0.user}", 272 | "legend": false 273 | }, 274 | { 275 | "alias": "cpu_usage_system.mean {container_name: /user/0.user}", 276 | "legend": false 277 | }, 278 | { 279 | "alias": "cpu_usage_system.mean {container_name: /user/0.user}", 280 | "legend": false 281 | }, 282 | { 283 | "alias": "cpu_usage_system.mean {container_name: /user/0.user/1.session}", 284 | "legend": false 285 | }, 286 | { 287 | "alias": "cpu_usage_system.mean {container_name: /user/0.user/2.session}", 288 | "legend": false 289 | }, 290 | { 291 | "alias": "cpu_usage_system.mean {container_name: /user}", 292 | "legend": false 293 | }, 294 | { 295 | "alias": "cpu_usage_system.mean {container_name: 5fe5b1b0-d62c-4991-a0b6-07dcd7aab760}", 296 | "legend": false 297 | } 298 | ], 299 | "links": [], 300 | "minSpan": 3 301 | } 302 | ], 303 | "title": "Row" 304 | }, 305 | { 306 | "title": "New row", 307 | "height": "250px", 308 | "editable": true, 309 | "collapse": false, 310 | "panels": [ 311 | { 312 | "title": "Memory Usage", 313 | "error": false, 314 | "span": 6, 315 | "editable": true, 316 | "type": "graph", 317 | "isNew": true, 318 | "id": 3, 319 | "datasource": null, 320 | "renderer": "png", 321 | "x-axis": true, 322 | "y-axis": true, 323 | "y_formats": [ 324 | "bytes", 325 | "bytes" 326 | ], 327 | "grid": { 328 | "leftLogBase": 1, 329 | "leftMax": null, 330 | "rightMax": null, 331 | "leftMin": null, 332 | "rightMin": null, 333 | "rightLogBase": 1, 334 | "threshold1": null, 335 | "threshold2": null, 336 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 337 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 338 | }, 339 | "lines": true, 340 | "fill": 1, 341 | "linewidth": 2, 342 | "points": false, 343 | "pointradius": 5, 344 | "bars": false, 345 | "stack": false, 346 | "percentage": false, 347 | "legend": { 348 | "show": true, 349 | "values": false, 350 | "min": false, 351 | "max": false, 352 | "current": false, 353 | "total": false, 354 | "avg": false 355 | }, 356 | "nullPointMode": "connected", 357 | "steppedLine": false, 358 | "tooltip": { 359 | "value_type": "cumulative", 360 | "shared": true 361 | }, 362 | "timeFrom": null, 363 | "timeShift": null, 364 | "targets": [ 365 | { 366 | "refId": "A", 367 | "dsType": "influxdb", 368 | "resultFormat": "time_series", 369 | "tags": [], 370 | "groupBy": [ 371 | { 372 | "type": "time", 373 | "params": [ 374 | "$interval" 375 | ] 376 | }, 377 | { 378 | "type": "tag", 379 | "params": [ 380 | "container_name" 381 | ] 382 | }, 383 | { 384 | "type": "fill", 385 | "params": [ 386 | "null" 387 | ] 388 | } 389 | ], 390 | "select": [ 391 | [ 392 | { 393 | "type": "field", 394 | "params": [ 395 | "value" 396 | ] 397 | }, 398 | { 399 | "type": "mean", 400 | "params": [] 401 | } 402 | ] 403 | ], 404 | "measurement": "memory_usage", 405 | "query": "SELECT mean(\"value\") FROM \"memory_usage\" WHERE $timeFilter GROUP BY time($interval), \"container_name\" fill(null)", 406 | "rawQuery": true 407 | } 408 | ], 409 | "aliasColors": {}, 410 | "seriesOverrides": [ 411 | { 412 | "alias": "memory_usage.mean {container_name: /}", 413 | "legend": false 414 | }, 415 | { 416 | "alias": "memory_usage.mean {container_name: /docker}", 417 | "legend": false 418 | }, 419 | { 420 | "alias": "memory_usage.mean {container_name: /user}", 421 | "legend": false 422 | }, 423 | { 424 | "alias": "memory_usage.mean {container_name: /user/0.user}", 425 | "legend": false 426 | }, 427 | { 428 | "alias": "memory_usage.mean {container_name: /user/0.user}", 429 | "legend": false 430 | }, 431 | { 432 | "alias": "memory_usage.mean {container_name: /user/0.user/1.session}", 433 | "legend": false 434 | }, 435 | { 436 | "alias": "memory_usage.mean {container_name: /user/0.user/2.session}", 437 | "legend": false 438 | }, 439 | { 440 | "alias": "memory_usage.mean {container_name: 5fe5b1b0-d62c-4991-a0b6-07dcd7aab760}", 441 | "legend": false 442 | } 443 | ], 444 | "links": [] 445 | }, 446 | { 447 | "title": "Network Transmit / Receive", 448 | "error": false, 449 | "span": 6, 450 | "editable": true, 451 | "type": "graph", 452 | "isNew": true, 453 | "id": 4, 454 | "datasource": null, 455 | "renderer": "png", 456 | "x-axis": true, 457 | "y-axis": true, 458 | "y_formats": [ 459 | "Bps", 460 | "Bps" 461 | ], 462 | "grid": { 463 | "leftLogBase": 1, 464 | "leftMax": null, 465 | "rightMax": null, 466 | "leftMin": null, 467 | "rightMin": null, 468 | "rightLogBase": 1, 469 | "threshold1": null, 470 | "threshold2": null, 471 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 472 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 473 | }, 474 | "lines": true, 475 | "fill": 1, 476 | "linewidth": 2, 477 | "points": false, 478 | "pointradius": 5, 479 | "bars": false, 480 | "stack": true, 481 | "percentage": false, 482 | "legend": { 483 | "show": true, 484 | "values": false, 485 | "min": false, 486 | "max": false, 487 | "current": false, 488 | "total": false, 489 | "avg": false 490 | }, 491 | "nullPointMode": "connected", 492 | "steppedLine": false, 493 | "tooltip": { 494 | "value_type": "cumulative", 495 | "shared": true 496 | }, 497 | "timeFrom": null, 498 | "timeShift": null, 499 | "targets": [ 500 | { 501 | "refId": "A", 502 | "dsType": "influxdb", 503 | "resultFormat": "time_series", 504 | "tags": [], 505 | "groupBy": [ 506 | { 507 | "type": "time", 508 | "params": [ 509 | "$interval" 510 | ] 511 | }, 512 | { 513 | "type": "fill", 514 | "params": [ 515 | "null" 516 | ] 517 | } 518 | ], 519 | "select": [ 520 | [ 521 | { 522 | "type": "field", 523 | "params": [ 524 | "value" 525 | ] 526 | }, 527 | { 528 | "type": "mean", 529 | "params": [] 530 | } 531 | ] 532 | ], 533 | "measurement": "rx_bytes", 534 | "query": "SELECT mean(\"value\") FROM \"rx_bytes\" WHERE $timeFilter GROUP BY time($interval) fill(null)", 535 | "rawQuery": true 536 | }, 537 | { 538 | "refId": "B", 539 | "dsType": "influxdb", 540 | "resultFormat": "time_series", 541 | "tags": [], 542 | "groupBy": [ 543 | { 544 | "type": "time", 545 | "params": [ 546 | "$interval" 547 | ] 548 | }, 549 | { 550 | "type": "fill", 551 | "params": [ 552 | "null" 553 | ] 554 | } 555 | ], 556 | "select": [ 557 | [ 558 | { 559 | "type": "field", 560 | "params": [ 561 | "value" 562 | ] 563 | }, 564 | { 565 | "type": "mean", 566 | "params": [] 567 | } 568 | ] 569 | ], 570 | "measurement": "tx_bytes", 571 | "query": "SELECT mean(\"value\") FROM \"tx_bytes\" WHERE $timeFilter GROUP BY time($interval) fill(null)", 572 | "rawQuery": true 573 | } 574 | ], 575 | "aliasColors": { 576 | "tx_bytes.mean": "#1F78C1", 577 | "rx_bytes.mean": "#E5AC0E" 578 | }, 579 | "seriesOverrides": [], 580 | "links": [], 581 | "transparent": false 582 | } 583 | ] 584 | } 585 | ], 586 | "time": { 587 | "from": "now-1h", 588 | "to": "now" 589 | }, 590 | "timepicker": { 591 | "now": true, 592 | "refresh_intervals": [ 593 | "5s", 594 | "10s", 595 | "30s", 596 | "1m", 597 | "5m", 598 | "15m", 599 | "30m", 600 | "1h", 601 | "2h", 602 | "1d" 603 | ], 604 | "time_options": [ 605 | "5m", 606 | "15m", 607 | "1h", 608 | "6h", 609 | "12h", 610 | "24h", 611 | "2d", 612 | "7d", 613 | "30d" 614 | ] 615 | }, 616 | "templating": { 617 | "list": [] 618 | }, 619 | "annotations": { 620 | "list": [] 621 | }, 622 | "schemaVersion": 8, 623 | "version": 11, 624 | "links": [] 625 | } 626 | -------------------------------------------------------------------------------- /influxdb_0.8_queries/CPU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.8_queries/CPU.png -------------------------------------------------------------------------------- /influxdb_0.8_queries/FS_Limit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.8_queries/FS_Limit.png -------------------------------------------------------------------------------- /influxdb_0.8_queries/Memory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.8_queries/Memory.png -------------------------------------------------------------------------------- /influxdb_0.8_queries/Network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.8_queries/Network.png -------------------------------------------------------------------------------- /influxdb_0.9_queries/CPU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.9_queries/CPU.png -------------------------------------------------------------------------------- /influxdb_0.9_queries/FS_Limit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.9_queries/FS_Limit.png -------------------------------------------------------------------------------- /influxdb_0.9_queries/Influx_Settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.9_queries/Influx_Settings.png -------------------------------------------------------------------------------- /influxdb_0.9_queries/Memory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.9_queries/Memory.png -------------------------------------------------------------------------------- /influxdb_0.9_queries/Network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vegasbrianc/docker-monitoring/da1defdc795ba0319df76e284fe56b81930d674f/influxdb_0.9_queries/Network.png --------------------------------------------------------------------------------