diff --git a/README.md b/README.md index 351c829..5587c4b 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ grafana_host="http://localhost:3000" grafana_cred="admin:admin" # Keep grafana_folder empty for adding the dashboards in "General" folder grafana_folder="AWS CloudWatch" -ds=(1516 677 139 674 590 659 758 623 617 551 653 969 650 644 607 593 707 575 1519 581 584 2969 8050 11099 11154 11155 12979 13018 13040 13104 13892 14189 14391 14392 14954 14955 15016 16899 17741 17978 20007); +ds=(1516 677 139 674 590 659 758 623 617 551 653 969 650 644 607 593 707 575 1519 581 584 2969 8050 11099 11154 11155 12979 13018 13040 13104 13892 14189 14391 14392 14954 14955 15016 16899 17741 17978 20007 20008); folderId=$(curl -s -k -u "$grafana_cred" $grafana_host/api/folders | jq -r --arg grafana_folder "$grafana_folder" '.[] | select(.title==$grafana_folder).id') if [ -z "$folderId" ] ; then echo "Didn't get folderId" ; else echo "Got folderId $folderId" ; fi for d in "${ds[@]}"; do @@ -204,6 +204,9 @@ Single click provisioning [![Gitpod ready-to-test](https://img.shields.io/badge/ ### [AWS Storage Gateway](https://github.com/monitoringartist/grafana-aws-cloudwatch-dashboards/tree/master/aws-storage-gateway) [![AWS Storage Gateway](aws-storage-gateway/aws-storage-gateway.png)](https://github.com/monitoringartist/grafana-aws-cloudwatch-dashboards/tree/master/aws-storage-gateway) +### [AWS Transfer Family](https://github.com/monitoringartist/grafana-aws-cloudwatch-dashboards/tree/master/aws-transfer-family) +[![AWS Transfer Family](aws-transfer-family/aws-transfer-family.png)](https://github.com/monitoringartist/grafana-aws-cloudwatch-dashboards/tree/master/aws-transfer-family) + ### [AWS Transit Gateway](https://github.com/monitoringartist/grafana-aws-cloudwatch-dashboards/tree/master/aws-transit-gateway) [![AWS Transit Gateway](aws-transit-gateway/aws-transit-gateway.png)](https://github.com/monitoringartist/grafana-aws-cloudwatch-dashboards/tree/master/aws-transit-gateway) diff --git a/aws-transfer-family/aws-transfer-family.json b/aws-transfer-family/aws-transfer-family.json new file mode 100644 index 0000000..bd0133f --- /dev/null +++ b/aws-transfer-family/aws-transfer-family.json @@ -0,0 +1,585 @@ +{ + "__inputs": [], + "__elements": {}, + "__requires": [ + { + "type": "datasource", + "id": "cloudwatch", + "name": "CloudWatch", + "version": "1.0.0" + }, + { + "type": "grafana", + "id": "grafana", + "name": "Grafana", + "version": "10.2.0" + }, + { + "type": "panel", + "id": "text", + "name": "Text", + "version": "" + }, + { + "type": "panel", + "id": "timeseries", + "name": "Time series", + "version": "" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "description": "Visualize AWS Transfer Family metrics", + "editable": false, + "fiscalYearStartMonth": 0, + "gnetId": 707, + "graphTooltip": 0, + "id": null, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "cloudwatch", + "uid": "$datasource" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 20, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "BytesOut" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 16, + "links": [], + "options": { + "legend": { + "calcs": [ + "min", + "max", + "mean", + "sum" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.19", + "targets": [ + { + "alias": "", + "application": { + "filter": "" + }, + "datasource": { + "uid": "$datasource" + }, + "dimensions": { + "ServerId": "$ServerId" + }, + "expression": "", + "functions": [], + "group": { + "filter": "" + }, + "host": { + "filter": "" + }, + "id": "", + "item": { + "filter": "" + }, + "label": "", + "matchExact": true, + "metricEditorMode": 0, + "metricName": "BytesIn", + "metricQueryType": 0, + "mode": 0, + "namespace": "AWS/Transfer", + "options": { + "showDisabledItems": false + }, + "period": "", + "queryMode": "Metrics", + "refId": "A", + "region": "$region", + "sqlExpression": "", + "statistic": "Average" + }, + { + "alias": "", + "application": { + "filter": "" + }, + "datasource": { + "uid": "$datasource" + }, + "dimensions": { + "ServerId": "$ServerId" + }, + "expression": "", + "functions": [], + "group": { + "filter": "" + }, + "hide": false, + "host": { + "filter": "" + }, + "id": "", + "item": { + "filter": "" + }, + "label": "", + "matchExact": true, + "metricEditorMode": 0, + "metricName": "BytesOut", + "metricQueryType": 0, + "mode": 0, + "namespace": "AWS/Transfer", + "options": { + "showDisabledItems": false + }, + "period": "", + "queryMode": "Metrics", + "refId": "B", + "region": "$region", + "sqlExpression": "", + "statistic": "Average" + } + ], + "title": "BytesIn/BytesOut", + "type": "timeseries" + }, + { + "datasource": { + "type": "cloudwatch", + "uid": "$datasource" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 20, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "FilesOut" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 24, + "x": 0, + "y": 7 + }, + "id": 17, + "links": [], + "options": { + "legend": { + "calcs": [ + "min", + "max", + "mean", + "sum" + ], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.19", + "targets": [ + { + "alias": "", + "application": { + "filter": "" + }, + "datasource": { + "uid": "$datasource" + }, + "dimensions": { + "ServerId": "$ServerId" + }, + "expression": "", + "functions": [], + "group": { + "filter": "" + }, + "host": { + "filter": "" + }, + "id": "", + "item": { + "filter": "" + }, + "label": "", + "matchExact": true, + "metricEditorMode": 0, + "metricName": "FilesIn", + "metricQueryType": 0, + "mode": 0, + "namespace": "AWS/Transfer", + "options": { + "showDisabledItems": false + }, + "period": "", + "queryMode": "Metrics", + "refId": "A", + "region": "$region", + "sqlExpression": "", + "statistic": "Sum" + }, + { + "alias": "", + "application": { + "filter": "" + }, + "datasource": { + "uid": "$datasource" + }, + "dimensions": { + "ServerId": "$ServerId" + }, + "expression": "", + "functions": [], + "group": { + "filter": "" + }, + "hide": false, + "host": { + "filter": "" + }, + "id": "", + "item": { + "filter": "" + }, + "label": "", + "matchExact": true, + "metricEditorMode": 0, + "metricName": "FilesOut", + "metricQueryType": 0, + "mode": 0, + "namespace": "AWS/Transfer", + "options": { + "showDisabledItems": false + }, + "period": "", + "queryMode": "Metrics", + "refId": "B", + "region": "$region", + "sqlExpression": "", + "statistic": "Sum" + } + ], + "title": "FilesIn/FilesOut", + "type": "timeseries" + }, + { + "datasource": { + "uid": "$datasource" + }, + "editable": true, + "error": false, + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 14 + }, + "id": 2, + "links": [], + "options": { + "code": { + "language": "plaintext", + "showLineNumbers": false, + "showMiniMap": false + }, + "content": " | \nAWS CloudWatch Transfer Family documentation | \nInstalled from Grafana.com dashboards", + "mode": "html" + }, + "pluginVersion": "10.2.0", + "targets": [ + { + "datasource": { + "uid": "$datasource" + }, + "refId": "A" + } + ], + "title": "Documentation", + "type": "text" + } + ], + "refresh": "", + "schemaVersion": 38, + "tags": [], + "templating": { + "list": [ + { + "current": {}, + "hide": 0, + "includeAll": false, + "label": "Datasource", + "multi": false, + "name": "datasource", + "options": [], + "query": "cloudwatch", + "queryValue": "", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "type": "datasource" + }, + { + "current": {}, + "datasource": { + "uid": "$datasource" + }, + "definition": "", + "hide": 0, + "includeAll": false, + "label": "Region", + "multi": false, + "name": "region", + "options": [], + "query": "regions()", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": "*", + "current": {}, + "datasource": { + "uid": "$datasource" + }, + "definition": "", + "hide": 0, + "includeAll": true, + "label": "ServerId", + "multi": false, + "name": "ServerId", + "options": [], + "query": { + "attributeName": "", + "dimensionFilters": {}, + "dimensionKey": "ServerId", + "ec2Filters": {}, + "instanceID": "", + "metricName": "BytesIn", + "namespace": "AWS/Transfer", + "queryType": "dimensionValues", + "refId": "CloudWatchVariableQueryEditor-VariableQuery", + "region": "$region", + "resourceType": "", + "tags": {} + }, + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, + "time": { + "from": "now-1h", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "browser", + "title": "AWS Transfer Family", + "uid": "vzYZtWGIz", + "version": 9, + "weekStart": "" +} \ No newline at end of file diff --git a/aws-transfer-family/aws-transfer-family.png b/aws-transfer-family/aws-transfer-family.png new file mode 100644 index 0000000..b8a4877 Binary files /dev/null and b/aws-transfer-family/aws-transfer-family.png differ diff --git a/dashboards.libsonnet b/dashboards.libsonnet index 7d8f5b1..9b3628d 100644 --- a/dashboards.libsonnet +++ b/dashboards.libsonnet @@ -38,6 +38,7 @@ 'aws-sqs.json': (import 'aws-sqs/aws-sqs.json'), 'aws-step-functions.json': (import 'aws-step-functions/aws-step-functions.json'), 'aws-storage-gateway.json': (import 'aws-storage-gateway/aws-storage-gateway.json'), + 'aws-transfer-family.json': (import 'aws-transfer-family/aws-transfer-family.json'), 'aws-transit-gateway.json': (import 'aws-transit-gateway/aws-transit-gateway.json'), 'aws-vpn.json': (import 'aws-vpn/aws-vpn.json'), 'aws-x-ray.json': (import 'aws-x-ray/aws-x-ray.json'),