{ "annotations": { "list": [ { "builtIn": 1, "datasource": "-- Grafana --", "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "target": { "limit": 100, "matchAny": false, "tags": [], "type": "dashboard" }, "type": "dashboard" }, { "datasource": "$datasource", "enable": true, "expr": "ghost_process_start_time_seconds{job=~\"$job\", instance=~\"$instance\"} * 1000", "hide": false, "iconColor": "#B877D9", "name": "Ghost Start", "showIn": 0, "textFormat": "{{instance}}", "titleFormat": "Ghost Start", "useValueForTime": true } ] }, "description": "An overview of the Ghost process metrics.", "editable": true, "fiscalYearStartMonth": 0, "gnetId": 14058, "graphTooltip": 0, "id": 1, "iteration": 1731634781920, "links": [], "liveNow": false, "panels": [ { "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 }, "id": 1, "title": "Overview", "type": "row" }, { "datasource": { "uid": "$datasource" }, "description": "The version of Node.js.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [ { "options": { "match": "null", "result": { "text": "N/A" } }, "type": "special" } ], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "none" }, "overrides": [] }, "gridPos": { "h": 2, "w": 3, "x": 0, "y": 1 }, "id": 2, "links": [], "maxDataPoints": 100, "options": { "colorMode": "none", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "reduceOptions": { "calcs": [ "first" ], "fields": "/^version$/", "values": false }, "text": {}, "textMode": "auto" }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_version_info{}", "format": "table", "instant": true, "interval": "", "legendFormat": "{{job}}", "refId": "A" } ], "title": "Node.js Version", "type": "stat" }, { "datasource": { "uid": "$datasource" }, "description": "The number of times Node.js restarted.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "none" }, "overrides": [] }, "gridPos": { "h": 2, "w": 3, "x": 3, "y": 1 }, "id": 3, "links": [], "maxDataPoints": 100, "options": { "colorMode": "none", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "auto" }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "sum(changes(ghost_process_start_time_seconds{job=~\"$job\"}[$__range]))", "instant": false, "interval": "", "legendFormat": "Node.js", "refId": "A" } ], "title": "Node.js Restarts", "type": "stat" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 3 }, "id": 4, "panels": [], "title": "Process", "type": "row" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "CPU usage.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "percent" }, "overrides": [] }, "gridPos": { "h": 9, "w": 8, "x": 0, "y": 4 }, "id": 5, "interval": "1", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "expr": "rate(ghost_process_cpu_user_seconds_total{job=~\"$job\"}[1m]) * 100", "interval": "", "legendFormat": "User CPU - {{job}}", "refId": "A" }, { "expr": "rate(ghost_process_cpu_system_seconds_total{job=~\"$job\"}[1m]) * 100", "interval": "", "legendFormat": "System CPU - {{job}}", "refId": "B" }, { "expr": "rate(ghost_process_cpu_seconds_total{job=~\"$job\"}[1m]) * 100", "interval": "", "legendFormat": "Total CPU - {{job}}", "refId": "C" } ], "title": "CPU Usage", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "CPU time spent.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 9, "w": 8, "x": 8, "y": 4 }, "id": 6, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "rate(ghost_process_cpu_seconds_total{job=~\"$job\"}[$interval])", "interval": "", "legendFormat": "Total - {{job}}", "refId": "A" }, { "exemplar": true, "expr": "rate(ghost_process_cpu_system_seconds_total{job=~\"$job\"}[$interval])", "hide": false, "interval": "", "legendFormat": "System - {{job}}", "refId": "B" }, { "exemplar": true, "expr": "rate(ghost_process_cpu_user_seconds_total{job=~\"$job\"}[$interval])", "hide": false, "interval": "", "legendFormat": "User - {{job}}", "refId": "C" } ], "title": "CPU Time Spent", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Memory usage.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "bytes" }, "overrides": [] }, "gridPos": { "h": 9, "w": 8, "x": 16, "y": 4 }, "id": 7, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "process_resident_memory_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "Process Memory - {{job}}", "refId": "A" }, { "exemplar": true, "expr": "ghost_nodejs_heap_size_total_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "Heap Total - {{job}}", "refId": "B" }, { "exemplar": true, "expr": "ghost_nodejs_heap_size_used_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "Heap Used - {{job}}", "refId": "C" }, { "exemplar": true, "expr": "ghost_nodejs_external_memory_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "External Memory - {{job}}", "refId": "D" } ], "title": "Memory Usage", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Number of active handle and active requests.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 9, "w": 8, "x": 0, "y": 13 }, "id": 8, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_active_handles_total{job=~\"$job\"}", "interval": "", "legendFormat": "Active Handler - {{job}}", "refId": "A" }, { "exemplar": true, "expr": "ghost_nodejs_active_requests_total{job=~\"$job\"}", "interval": "", "legendFormat": "Active Request - {{job}}", "refId": "B" } ], "title": "Active Handlers and Requests", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Latency of the event loop.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 9, "w": 8, "x": 8, "y": 13 }, "id": 9, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_eventloop_lag_seconds{job=~\"$job\"}", "hide": false, "instant": false, "interval": "", "legendFormat": "Last - {{job}}", "refId": "A" }, { "exemplar": true, "expr": "ghost_nodejs_eventloop_lag_p99_seconds{job=~\"$job\"}", "interval": "", "legendFormat": "P99 - {{job}}", "refId": "B" }, { "exemplar": true, "expr": "ghost_nodejs_eventloop_lag_p50_seconds{job=~\"$job\"}", "interval": "", "legendFormat": "P50 - {{job}}", "refId": "C" } ], "title": "Event Loop Latency", "type": "timeseries" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 22 }, "id": 18, "panels": [], "title": "Database: Connection Pool", "type": "row" }, { "description": "The number of active connections maintained with the database. These connections can be in use or idle.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 23 }, "id": 20, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_pool_max{job=\"$job\"}", "interval": "", "legendFormat": "Max - {{job}}", "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_pool_active{job=\"$job\"}", "hide": false, "interval": "", "legendFormat": "Active - {{job}}", "refId": "B" }, { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_pool_min{job=\"$job\"}", "hide": false, "interval": "", "legendFormat": "Min - {{job}}", "refId": "C" } ], "title": "Connections", "type": "timeseries" }, { "description": "The number of active connections as a percentage of the maximum allowed by the pool.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "percentunit" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 23 }, "id": 25, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_pool_active{job=~\"$job\"} / ghost_db_connection_pool_max{job=~\"$job\"}", "hide": false, "interval": "", "legendFormat": "Active - {{job}}", "refId": "B" } ], "title": "Pool Utilization", "type": "timeseries" }, { "description": "The elapsed time a transaction spends waiting for an available connection in the connection pool.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "dtdurations" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 16, "y": 23 }, "id": 32, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_acquire_duration_seconds{quantile=\"0.5\", job=~\"$job\"}", "interval": "", "legendFormat": "P50 - {{job}}", "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_acquire_duration_seconds{quantile=\"0.9\", job=~\"$job\"}", "hide": false, "interval": "", "legendFormat": "P90 - {{job}}", "refId": "B" }, { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_acquire_duration_seconds{quantile=\"0.99\", job=~\"$job\"}", "hide": false, "interval": "", "legendFormat": "P99 - {{job}}", "refId": "C" } ], "title": "Time to Acquire Connection", "type": "timeseries" }, { "description": "The number of transactions that are currently in the queue waiting to acquire a free connection", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 31 }, "id": 24, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_pool_pending_acquires{job=~\"$job\"}", "interval": "", "legendFormat": "{{job}}", "refId": "A" } ], "title": "Pending Acquires", "type": "timeseries" }, { "description": "The number of connections waiting to be established with the database.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 31 }, "id": 22, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_connection_pool_pending_creates{job=~\"$job\"}", "interval": "", "legendFormat": "{{job}}", "refId": "A" } ], "title": "Pending Creates", "type": "timeseries" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 39 }, "id": 27, "panels": [], "title": "Database: Queries", "type": "row" }, { "description": "", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "dtdurations" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 40 }, "id": 31, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_query_duration_seconds{quantile=\"0.5\", job=~\"$job\"}", "interval": "", "legendFormat": "P50 - {{job}}", "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_query_duration_seconds{quantile=\"0.9\", job=~\"$job\"}", "hide": false, "interval": "", "legendFormat": "P90 - {{job}}", "refId": "B" }, { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "ghost_db_query_duration_seconds{quantile=\"0.99\", job=~\"$job\"}", "hide": false, "interval": "", "legendFormat": "P99 - {{job}}", "refId": "C" } ], "title": "Query Duration", "type": "timeseries" }, { "description": "The number of queries executed in the trailing 60s.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "QPM" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 40 }, "id": 29, "interval": "1s", "options": { "legend": { "calcs": [], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "PBFA97CFB590B2093" }, "exemplar": true, "expr": "rate(ghost_db_query_duration_seconds_count{job=~\"$job\"}[1m])", "interval": "", "legendFormat": "{{job}}", "refId": "A" } ], "title": "Query Rate", "type": "timeseries" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 48 }, "id": 10, "panels": [], "title": "Garbage Collector", "type": "row" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Rate of garbage collection duration.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 49 }, "id": 11, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "rate(ghost_nodejs_gc_duration_seconds_sum{job=~\"$job\"}[$interval])", "interval": "", "legendFormat": "{{kind}} - {{job}}", "refId": "A" } ], "title": "GC Duration Rate", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Duration of garbage collection.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "log": 2, "type": "log" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 49 }, "id": 12, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_gc_duration_seconds_sum{job=~\"$job\"}", "interval": "", "legendFormat": "{{kind}} - {{job}}", "refId": "A" } ], "title": "GC Duration", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Usage of heap memory.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "bytes" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 16, "y": 49 }, "id": 13, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_heap_size_total_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "Total - {{job}}", "refId": "A" }, { "exemplar": true, "expr": "ghost_nodejs_heap_size_used_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "Used - {{job}}", "refId": "B" }, { "exemplar": true, "expr": "process_resident_memory_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "Resident - {{job}}", "refId": "C" }, { "exemplar": true, "expr": "ghost_nodejs_external_memory_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "External - {{job}}", "refId": "D" } ], "title": "Heap Memory Usage", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Rate of garbage collection.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 57 }, "id": 14, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "rate(ghost_nodejs_gc_duration_seconds_count{job=~\"$job\"}[$interval])", "interval": "", "legendFormat": "{{kind}} - {{job}}", "refId": "A" } ], "title": "GC Rate", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Count of garbage collection.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "log": 2, "type": "log" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 57 }, "id": 15, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_gc_duration_seconds_count{job=~\"$job\"}", "interval": "", "legendFormat": "{{kind}} - {{job}}", "refId": "A" } ], "title": "GC Count", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "$datasource" }, "description": "Usage of heap space.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "normal" }, "thresholdsStyle": { "mode": "off" } }, "links": [], "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "bytes" }, "overrides": [] }, "gridPos": { "h": 8, "w": 8, "x": 16, "y": 57 }, "id": 16, "interval": "1s", "options": { "legend": { "calcs": [ "mean", "lastNotNull", "max", "min" ], "displayMode": "table", "placement": "bottom" }, "tooltip": { "mode": "single" } }, "pluginVersion": "8.3.0", "targets": [ { "exemplar": true, "expr": "ghost_nodejs_heap_space_size_used_bytes{job=~\"$job\"}", "interval": "", "legendFormat": "{{space}} - {{job}}", "refId": "A" } ], "title": "Heap Space Used", "type": "timeseries" } ], "refresh": "5s", "schemaVersion": 33, "style": "dark", "tags": [ "node.js", "nodejs" ], "templating": { "list": [ { "current": { "selected": false, "text": "Prometheus", "value": "Prometheus" }, "hide": 0, "includeAll": false, "label": "Datasource", "multi": false, "name": "datasource", "options": [], "query": "prometheus", "queryValue": "", "refresh": 1, "regex": "", "skipUrlSync": false, "type": "datasource" }, { "current": { "selected": true, "text": [ "ghost-chris-local" ], "value": [ "ghost-chris-local" ] }, "datasource": { "uid": "$datasource" }, "definition": "label_values(ghost_nodejs_eventloop_lag_seconds, job)", "hide": 0, "includeAll": true, "label": "Job", "multi": true, "name": "job", "options": [], "query": { "query": "label_values(ghost_nodejs_eventloop_lag_seconds, job)", "refId": "Prometheus-job-Variable-Query" }, "refresh": 1, "regex": "", "skipUrlSync": false, "sort": 0, "tagValuesQuery": "", "tagsQuery": "", "type": "query", "useTags": false }, { "current": { "selected": true, "text": [ "All" ], "value": [ "$__all" ] }, "datasource": { "uid": "$datasource" }, "definition": "label_values(ghost_nodejs_eventloop_lag_seconds, instance)", "hide": 0, "includeAll": true, "label": "Instance", "multi": true, "name": "instance", "options": [], "query": { "query": "label_values(ghost_nodejs_eventloop_lag_seconds, instance)", "refId": "Prometheus-instance-Variable-Query" }, "refresh": 1, "regex": "", "skipUrlSync": false, "sort": 0, "tagValuesQuery": "", "tagsQuery": "", "type": "query", "useTags": false }, { "auto": false, "auto_count": 30, "auto_min": "10s", "current": { "selected": false, "text": "1m", "value": "1m" }, "hide": 0, "label": "Interval", "name": "interval", "options": [ { "selected": true, "text": "1m", "value": "1m" }, { "selected": false, "text": "10m", "value": "10m" }, { "selected": false, "text": "30m", "value": "30m" }, { "selected": false, "text": "1h", "value": "1h" }, { "selected": false, "text": "6h", "value": "6h" }, { "selected": false, "text": "12h", "value": "12h" }, { "selected": false, "text": "1d", "value": "1d" }, { "selected": false, "text": "7d", "value": "7d" }, { "selected": false, "text": "14d", "value": "14d" }, { "selected": false, "text": "30d", "value": "30d" } ], "query": "1m,10m,30m,1h,6h,12h,1d,7d,14d,30d", "queryValue": "", "refresh": 2, "skipUrlSync": false, "type": "interval" } ] }, "time": { "from": "now-5m", "to": "now" }, "timepicker": { "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ] }, "timezone": "", "title": "Ghost Dashboard", "uid": "yX2d7k1Gk", "version": 4, "weekStart": "" }