Simple configuration project showing an example Dockerized ERDDAP deployment with logs and monitoring (prometheus/grafana).
Last active
November 3, 2025 11:37
-
-
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