Simple configuration project showing an example Dockerized ERDDAP deployment with logs and monitoring (prometheus/grafana).
Last active
October 16, 2025 06:26
-
-
Save srstsavage/5c63684088b6a209812592bde48747aa to your computer and use it in GitHub Desktop.
erddap-docker-demo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#these are dummy values! make sure to change these and give this file restrictive permissions in a real deployment! | |
SMTP_PASSWORD=stmpsecret | |
GF_SECURITY_ADMIN_PASSWORD=supersecret |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
services: | |
erddap: | |
image: erddap/erddap:v2.28.1 | |
restart: unless-stopped | |
volumes: | |
- ./erddapData:/erddapData | |
ports: | |
- 8080:8080 | |
environment: | |
ERDDAP_MEMORY: 4g | |
ERDDAP_enableCors: true | |
ERDDAP_emailEverythingTo: [email protected] | |
ERDDAP_emailDailyReportsTo: [email protected] | |
ERDDAP_emailFromAddress: [email protected] | |
ERDDAP_emailUserName: smtpUsername | |
ERDDAP_emailPassword: "${SMTP_PASSWORD}" | |
ERDDAP_emailSmtpHost: smtp.host.com | |
ERDDAP_emailSmtpPort: 465 | |
ERDDAP_adminInstitution: Ocean Institute | |
ERDDAP_adminInstitutionUrl: https://yourdomain.net | |
ERDDAP_adminIndividualName: "First Last" | |
ERDDAP_adminPosition: "ERDDAP Administrator" | |
ERDDAP_adminPhone: "+33 01 23 45 67 89" | |
ERDDAP_adminAddress: "1625 route de Sainte Anne, Zone Industrielle de la Pointe du Diable" | |
ERDDAP_adminCity: "Plouzané" | |
ERDDAP_adminStateOrProvince: "Bretagne" | |
ERDDAP_adminPostalCode: "29280" | |
ERDDAP_adminCountry: "France" | |
ERDDAP_adminEmail: "[email protected]" | |
mem_limit: 6g | |
healthcheck: | |
test: ["CMD", "curl", "-fl", "http://localhost:8080/erddap/index.html"] | |
interval: 15s | |
timeout: 5s | |
retries: 3 | |
logs: | |
image: alpine | |
restart: unless-stopped | |
volumes: | |
- ./erddapData:/erddapData:ro | |
mem_limit: 256m | |
depends_on: | |
erddap: | |
condition: service_healthy | |
command: tail -F /erddapData/logs/log.txt | |
prometheus: | |
image: prom/prometheus:latest | |
restart: unless-stopped | |
volumes: | |
- ./prometheus.yml:/etc/prometheus/prometheus.yml:ro | |
- prometheus_data:/prometheus | |
command: > | |
--config.file=/etc/prometheus/prometheus.yml | |
--storage.tsdb.path=/prometheus | |
--storage.tsdb.retention.time=30d | |
--web.console.libraries=/etc/prometheus/console_libraries | |
--web.console.templates=/etc/prometheus/consoles | |
--web.enable-lifecycle | |
grafana: | |
image: grafana/grafana:latest | |
restart: unless-stopped | |
volumes: | |
- grafana_data:/var/lib/grafana | |
- ./datasource-prometheus.yml:/etc/grafana/provisioning/datasources/prometheus.yml | |
- ./dashboard.yml:/etc/grafana/provisioning/dashboards/dashboard.yml | |
- ./erddap-dashboard.json:/var/lib/grafana/dashboards/erddap-dashboard.json | |
- ./request-dashboard.json:/var/lib/grafana/dashboards/request-dashboard.json | |
environment: | |
GF_SECURITY_ADMIN_USER: admin | |
GF_SECURITY_ADMIN_PASSWORD: "${GF_SECURITY_ADMIN_PASSWORD}" | |
GF_USERS_ALLOW_SIGN_UP: false | |
GF_INSTALL_PLUGINS: grafana-clock-panel,grafana-piechart-panel | |
ports: | |
- 3000:3000 | |
depends_on: | |
- prometheus | |
volumes: | |
prometheus_data: | |
grafana_data: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apiVersion: 1 | |
providers: | |
- name: 'ERDDAP Dashboards' | |
orgId: 1 | |
folder: 'ERDDAP' | |
type: file | |
disableDeletion: false | |
editable: true | |
allowUiUpdates: true | |
options: | |
path: /var/lib/grafana/dashboards |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="ISO-8859-1"?> | |
<erddapDatasets> | |
<dataset type="EDDTableFromErddap" datasetID="cwwcNDBCMet"> | |
<sourceUrl>https://coastwatch.pfeg.noaa.gov/erddap/tabledap/cwwcNDBCMet</sourceUrl> | |
<reloadEveryNMinutes>120</reloadEveryNMinutes> | |
</dataset> | |
</erddapDatasets> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apiVersion: 1 | |
datasources: | |
- name: Prometheus | |
type: prometheus | |
access: proxy | |
url: http://prometheus:9090 | |
uid: prometheus | |
isDefault: true | |
editable: false |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"annotations": { | |
"list": [ | |
{ | |
"builtIn": 1, | |
"datasource": { | |
"type": "grafana", | |
"uid": "-- Grafana --" | |
}, | |
"enable": true, | |
"hide": true, | |
"iconColor": "rgba(0, 211, 255, 1)", | |
"name": "Annotations & Alerts", | |
"type": "dashboard" | |
} | |
] | |
}, | |
"editable": true, | |
"fiscalYearStartMonth": 0, | |
"graphTooltip": 0, | |
"id": 2, | |
"links": [], | |
"panels": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"description": "Shows the status of ERDDAP service", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [ | |
{ | |
"options": { | |
"0": { | |
"color": "red", | |
"index": 0, | |
"text": "Down" | |
}, | |
"1": { | |
"color": "green", | |
"index": 1, | |
"text": "Up" | |
} | |
}, | |
"type": "value" | |
} | |
], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "red" | |
}, | |
{ | |
"color": "green", | |
"value": 1 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 2, | |
"w": 2, | |
"x": 0, | |
"y": 0 | |
}, | |
"id": 2, | |
"options": { | |
"colorMode": "background", | |
"graphMode": "none", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"percentChangeColorMode": "standard", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showPercentChange": false, | |
"text": {}, | |
"textMode": "auto", | |
"wideLayout": true | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "up{job=\"erddap\"}", | |
"interval": "", | |
"legendFormat": "ERDDAP Service", | |
"refId": "A" | |
} | |
], | |
"title": "Service Status", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"description": "Shows the status of ERDDAP's graphics system", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [ | |
{ | |
"options": { | |
"0": { | |
"color": "red", | |
"index": 0, | |
"text": "Not Available" | |
}, | |
"1": { | |
"color": "green", | |
"index": 1, | |
"text": "Available" | |
} | |
}, | |
"type": "value" | |
} | |
], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "red" | |
}, | |
{ | |
"color": "green", | |
"value": 1 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 2, | |
"w": 2, | |
"x": 2, | |
"y": 0 | |
}, | |
"id": 3, | |
"options": { | |
"colorMode": "background", | |
"graphMode": "none", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"percentChangeColorMode": "standard", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showPercentChange": false, | |
"textMode": "auto", | |
"wideLayout": true | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "bufferedImage_info", | |
"interval": "", | |
"legendFormat": "Graphics System", | |
"refId": "A" | |
} | |
], | |
"title": "Graphics State", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 3, | |
"w": 4, | |
"x": 4, | |
"y": 0 | |
}, | |
"id": 1, | |
"options": { | |
"colorMode": "value", | |
"graphMode": "none", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"percentChangeColorMode": "standard", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showPercentChange": false, | |
"textMode": "name", | |
"wideLayout": true | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "ERDDAP_build_info", | |
"instant": true, | |
"interval": "", | |
"legendFormat": "Version {{version}} ({{deployment_info}})", | |
"refId": "A" | |
} | |
], | |
"title": "ERDDAP Version", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "fixed" | |
}, | |
"fieldMinMax": false, | |
"mappings": [ | |
{ | |
"options": { | |
"0": { | |
"color": "red", | |
"index": 0, | |
"text": "0" | |
}, | |
"1": { | |
"color": "green", | |
"index": 1, | |
"text": "1" | |
} | |
}, | |
"type": "value" | |
} | |
], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 12, | |
"w": 12, | |
"x": 12, | |
"y": 0 | |
}, | |
"id": 8, | |
"options": { | |
"minVizHeight": 75, | |
"minVizWidth": 75, | |
"orientation": "auto", | |
"reduceOptions": { | |
"calcs": [ | |
"last" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showThresholdLabels": false, | |
"showThresholdMarkers": true, | |
"sizing": "auto", | |
"text": {} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"exemplar": false, | |
"expr": "feature_flags", | |
"format": "time_series", | |
"fullMetaSearch": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "{{feature_flags}}", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
} | |
], | |
"title": "Feature Flags", | |
"transparent": true, | |
"type": "gauge" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"description": "Number of datasets by type", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
} | |
] | |
}, | |
"unit": "none" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 5, | |
"w": 4, | |
"x": 0, | |
"y": 2 | |
}, | |
"id": 4, | |
"options": { | |
"displayMode": "gradient", | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": false | |
}, | |
"maxVizHeight": 300, | |
"minVizHeight": 10, | |
"minVizWidth": 0, | |
"namePlacement": "auto", | |
"orientation": "horizontal", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showUnfilled": true, | |
"sizing": "auto", | |
"text": { | |
"percentSize": 1 | |
}, | |
"valueMode": "color" | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "dataset_count", | |
"interval": "", | |
"legendFormat": "{{category}} Datasets", | |
"refId": "A" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "dataset_failed_load_count", | |
"interval": "", | |
"legendFormat": "Failed to Load", | |
"refId": "B" | |
} | |
], | |
"title": "Dataset Statistics", | |
"type": "bargauge" | |
}, | |
{ | |
"datasource": { | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 2, | |
"w": 5, | |
"x": 4, | |
"y": 3 | |
}, | |
"id": 14, | |
"options": { | |
"colorMode": "value", | |
"graphMode": "area", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"percentChangeColorMode": "standard", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showPercentChange": false, | |
"textMode": "name", | |
"wideLayout": true | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "jvm_runtime_info", | |
"fullMetaSearch": false, | |
"includeNullMetadata": true, | |
"legendFormat": "{{version}} {{vendor}} {{runtime}}", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
} | |
], | |
"title": "JDK Version", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"description": "Memory usage statistics", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"barWidthFactor": 0.6, | |
"drawStyle": "line", | |
"fillOpacity": 20, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 2, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "never", | |
"spanNulls": true, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "area" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "bytes" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 0, | |
"y": 7 | |
}, | |
"id": 7, | |
"options": { | |
"legend": { | |
"calcs": [ | |
"lastNotNull", | |
"max" | |
], | |
"displayMode": "table", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "multi", | |
"sort": "desc" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "jvm_memory_used_bytes{area=\"heap\"}", | |
"interval": "", | |
"legendFormat": "Heap Memory", | |
"refId": "A" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "jvm_memory_used_bytes{area=\"nonheap\"}", | |
"interval": "", | |
"legendFormat": "Non-Heap Memory", | |
"refId": "B" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "process_resident_memory_bytes", | |
"interval": "", | |
"legendFormat": "Resident Memory", | |
"refId": "C" | |
} | |
], | |
"title": "Memory Usage", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"description": "System resource usage", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"barWidthFactor": 0.6, | |
"drawStyle": "line", | |
"fillOpacity": 20, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 2, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "never", | |
"spanNulls": true, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "area" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "percent" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 12, | |
"y": 12 | |
}, | |
"id": 6, | |
"options": { | |
"legend": { | |
"calcs": [ | |
"lastNotNull", | |
"max" | |
], | |
"displayMode": "table", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "multi", | |
"sort": "desc" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"expr": "rate(process_cpu_seconds_total{job=\"erddap\"}[5m]) * 100", | |
"interval": "", | |
"legendFormat": "CPU Usage", | |
"refId": "A" | |
} | |
], | |
"title": "CPU Usage", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"fillOpacity": 80, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"lineWidth": 1, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 0, | |
"y": 15 | |
}, | |
"id": 12, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"exemplar": false, | |
"expr": "load_datasets_duration_seconds_sum", | |
"format": "table", | |
"fullMetaSearch": false, | |
"includeNullMetadata": false, | |
"instant": false, | |
"legendFormat": "__auto", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
} | |
], | |
"title": "Load Datasets Seconds Histogram", | |
"type": "histogram" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"barWidthFactor": 0.6, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 12, | |
"y": 20 | |
}, | |
"id": 13, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "sum by(success) (rate(email_count_distribution_sum[$__rate_interval]))", | |
"fullMetaSearch": false, | |
"includeNullMetadata": false, | |
"legendFormat": "email_{{success}}", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "sum by(success) (rate(task_thread_duration_seconds_sum[$__rate_interval]))", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "task_thread_{{success}}", | |
"range": true, | |
"refId": "B", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "sum by(success) (rate(touch_thread_duration_seconds_sum[$__rate_interval]))", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "__auto", | |
"range": true, | |
"refId": "C", | |
"useBackend": false | |
} | |
], | |
"title": "Helper Threads", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"barWidthFactor": 0.6, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 0, | |
"y": 23 | |
}, | |
"id": 9, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(shed_requests_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"includeNullMetadata": false, | |
"legendFormat": "__auto", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(dangerous_memory_failures_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "__auto", | |
"range": true, | |
"refId": "B", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(dangerous_memory_emails_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "__auto", | |
"range": true, | |
"refId": "C", | |
"useBackend": false | |
} | |
], | |
"title": "Dangerous Memory and Shed Requests", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"barWidthFactor": 0.6, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 12, | |
"y": 28 | |
}, | |
"id": 10, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(gshhs_request_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"includeNullMetadata": true, | |
"legendFormat": "gshhs_{{status}}", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(national_boundaries_request_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "national_{{status}}", | |
"range": true, | |
"refId": "B", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(river_boundaries_request_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "river_{{status}}", | |
"range": true, | |
"refId": "C", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(state_boundaries_request_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "state_{{status}}", | |
"range": true, | |
"refId": "D", | |
"useBackend": false | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(topo_request_total[$__rate_interval])", | |
"fullMetaSearch": false, | |
"hide": false, | |
"includeNullMetadata": true, | |
"instant": false, | |
"legendFormat": "topo_{{cache}}", | |
"range": true, | |
"refId": "E", | |
"useBackend": false | |
} | |
], | |
"title": "Boundary and Topo Request Rates", | |
"type": "timeseries" | |
} | |
], | |
"preload": false, | |
"refresh": "5s", | |
"schemaVersion": 41, | |
"tags": [ | |
"erddap", | |
"monitoring" | |
], | |
"templating": { | |
"list": [] | |
}, | |
"time": { | |
"from": "now-6h", | |
"to": "now" | |
}, | |
"timepicker": {}, | |
"timezone": "", | |
"title": "ERDDAP Dashboard", | |
"uid": "eeo2a3a3sgt8gd", | |
"version": 21 | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
global: | |
scrape_interval: 15s | |
evaluation_interval: 15s | |
scrape_configs: | |
- job_name: 'erddap' | |
scrape_interval: 30s | |
metrics_path: '/erddap/metrics' | |
scheme: 'http' | |
honor_labels: true | |
static_configs: | |
- targets: ['erddap:8080'] | |
labels: | |
instance: 'erddap-primary' | |
region: 'primary' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"annotations": { | |
"list": [ | |
{ | |
"builtIn": 1, | |
"datasource": { | |
"type": "grafana", | |
"uid": "-- Grafana --" | |
}, | |
"enable": true, | |
"hide": true, | |
"iconColor": "rgba(0, 211, 255, 1)", | |
"name": "Annotations & Alerts", | |
"type": "dashboard" | |
} | |
] | |
}, | |
"editable": true, | |
"fiscalYearStartMonth": 0, | |
"graphTooltip": 0, | |
"id": 7, | |
"links": [], | |
"panels": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 15, | |
"w": 24, | |
"x": 0, | |
"y": 0 | |
}, | |
"id": 3, | |
"options": { | |
"colorMode": "value", | |
"graphMode": "area", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"percentChangeColorMode": "standard", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "", | |
"values": false | |
}, | |
"showPercentChange": false, | |
"textMode": "auto", | |
"wideLayout": true | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "code", | |
"expr": "sum by(dataset_id) (http_request_duration_seconds_count)", | |
"fullMetaSearch": false, | |
"includeNullMetadata": false, | |
"legendFormat": "__auto", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
} | |
], | |
"title": "Dataset ID Request Count", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"barWidthFactor": 0.6, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green" | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 12, | |
"w": 24, | |
"x": 0, | |
"y": 15 | |
}, | |
"id": 2, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"hideZeros": false, | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "11.6.0", | |
"targets": [ | |
{ | |
"disableTextWrap": false, | |
"editorMode": "builder", | |
"expr": "rate(http_request_duration_seconds_sum[$__rate_interval])", | |
"fullMetaSearch": false, | |
"includeNullMetadata": false, | |
"legendFormat": "{{dataset_id}} {{status_code}}", | |
"range": true, | |
"refId": "A", | |
"useBackend": false | |
} | |
], | |
"title": "Request Duration Seconds (rate of sum)", | |
"type": "timeseries" | |
} | |
], | |
"preload": false, | |
"schemaVersion": 41, | |
"tags": [], | |
"templating": { | |
"list": [] | |
}, | |
"time": { | |
"from": "now-6h", | |
"to": "now" | |
}, | |
"timepicker": {}, | |
"timezone": "browser", | |
"title": "Request Dashboard", | |
"uid": "eep5l9sbs72f4d", | |
"version": 4 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment