start of pipeline dashboard

This commit is contained in:
m0duspwnens
2021-11-03 08:33:20 -04:00
parent 677f62ebd1
commit 8e3b08a831
6 changed files with 1191 additions and 3 deletions

View File

@@ -2729,3 +2729,40 @@ grafana:
y: 214
h: 8
w: 24
pipeline_overview:
title: 'Pipeline Overview'
templating:
list:
servername:
text: All
value: "$__all"
role:
allValue: true
multi: true
hide: 0
text: All
value: "$__all"
panels:
logstash_estimated_eps_in_total_graph:
gridPos:
x: 0
y: 0
h: 8
w: 12
logstash_estimated_eps_in_out_manager_total_graph:
gridPos:
x: 12
y: 0
h: 8
w: 12
elasticsearch_index_performance_graph:
gridPos:
x: 12
y: 0
h: 8
w: 12

View File

@@ -17,6 +17,7 @@
{% if grains.role == 'so-eval' %}
{% do DASHBOARDS.append('eval') %}
{% else %}
{% do DASHBOARDS.append('pipeline_overview') %}
{# Grab a unique listing of nodetypes that exists so that we create only the needed dashboards #}
{% for dashboard in salt['cmd.shell']("ls /opt/so/saltstack/local/pillar/minions/|awk -F'_' {'print $2'}|awk -F'.' {'print $1'}").split() %}
{% if dashboard in ALLOWED_DASHBOARDS %}

View File

@@ -0,0 +1,805 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.elasticsearch_index_performance_graph.gridPos.x }},
"y": {{ PANELS.elasticsearch_index_performance_graph.gridPos.y }},
"w": {{ PANELS.elasticsearch_index_performance_graph.gridPos.w }},
"h": {{ PANELS.elasticsearch_index_performance_graph.gridPos.h }}
},
"id": 445548,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "community.id_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"ingest_processor_stats_community_id_time_in_millis"
]
},
{
"type": "last",
"params": []
},
{
"type": "non_negative_difference",
"params": []
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "conditionals_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "C",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_conditional_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "convert_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "D",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_convert_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "data.index.name_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "F",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_date_index_name_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "data_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "G",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_date_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "dissect_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "H",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"ingest_processor_stats_dissect_time_in_millis"
]
},
{
"type": "last",
"params": []
},
{
"type": "non_negative_difference",
"params": []
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "dot.expander_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "I",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_dot_expander_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "geoip_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "K",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_geoip_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "grok_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "L",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_grok_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "json_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "O",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_json_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "kv_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "P",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_kv_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "lowercase_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "Q",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_lowercase_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "remove_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "R",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_remove_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "rename_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "S",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"ingest_processor_stats_rename_time_in_millis"
]
},
{
"type": "last",
"params": []
},
{
"type": "non_negative_difference",
"params": []
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "script_time",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "T",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_script_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "url_decodes",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "elasticsearch_clusterstats_nodes",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_difference(mode(\"ingest_processor_stats_date_index_name_time_in_millis\")) FROM \"elasticsearch_clusterstats_nodes\" WHERE (\"role\" = 'manager') AND $timeFilter GROUP BY time($__interval) fill(linear)",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "U",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"ingest_processor_stats_user_agent_time_in_millis"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [],
"type": "non_negative_difference"
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
}
],
"thresholds": [],
"timeRegions": [],
"title": "Elastic Ingest Performance",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:1668",
"format": "dtdurationms",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:1669",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"description": "",
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"interval": "30s"
}

View File

@@ -0,0 +1,182 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"description": "Events from the grid to redis",
"fieldConfig": {
"defaults": {
"unit": "short"
},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.logstash_estimated_eps_in_out_manager_total_graph.gridPos.x }},
"y": {{ PANELS.logstash_estimated_eps_in_out_manager_total_graph.gridPos.y }},
"w": {{ PANELS.logstash_estimated_eps_in_out_manager_total_graph.gridPos.w }},
"h": {{ PANELS.logstash_estimated_eps_in_out_manager_total_graph.gridPos.h }}
},
"id": 77741,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "Logstash Events In",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"measurement": "logstash_events",
"orderByTime": "ASC",
"policy": "so_short_term",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"in"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
},
{
"alias": "Logstash Events Out",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
}
],
"hide": false,
"measurement": "logstash_events",
"orderByTime": "ASC",
"policy": "so_short_term",
"queryType": "randomWalk",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"out"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
}
]
],
"tags": [
{
"key": "role",
"operator": "=",
"value": "manager"
}
]
}
],
"thresholds": [],
"timeRegions": [],
"title": "Manager Logstash Events",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:1159",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:1160",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"timeFrom": null,
"timeShift": null,
"interval": "30s",
"bars": false,
"dashes": false,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false
}

View File

@@ -0,0 +1,156 @@
{
"id": 69001,
"gridPos": {
"x": {{ PANELS.logstash_estimated_eps_in_searchnode_total_graph.gridPos.x }},
"y": {{ PANELS.logstash_estimated_eps_in_searchnode_total_graph.gridPos.y }},
"w": {{ PANELS.logstash_estimated_eps_in_searchnode_total_graph.gridPos.w }},
"h": {{ PANELS.logstash_estimated_eps_in_searchnode_total_graph.gridPos.h }}
},
"type": "timeseries",
"title": "Estimated EPS In",
"transformations": [
{
"id": "calculateField",
"options": {
"mode": "reduceRow",
"reduce": {
"reducer": "sum"
},
"replaceFields": true,
"alias": "Total EPS"
}
}
],
"datasource": "InfluxDB",
"pluginVersion": "8.2.1",
"interval": "30s",
"fieldConfig": {
"defaults": {
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"barAlignment": 0,
"lineWidth": 1,
"fillOpacity": 10,
"gradientMode": "none",
"spanNulls": false,
"showPoints": "never",
"pointSize": 5,
"stacking": {
"mode": "none",
"group": "A"
},
"axisPlacement": "auto",
"axisLabel": "EPS",
"scaleDistribution": {
"type": "linear"
},
"hideFrom": {
"tooltip": false,
"viz": false,
"legend": false
},
"thresholdsStyle": {
"mode": "off"
}
},
"color": {
"mode": "palette-classic"
},
"thresholds": {
"mode": "absolute",
"steps": [
{
"value": null,
"color": "green"
},
{
"value": 80,
"color": "red"
}
]
},
"mappings": [],
"unit": "short",
"decimals": 1
},
"overrides": []
},
"options": {
"tooltip": {
"mode": "single"
},
"legend": {
"displayMode": "table",
"placement": "right",
"calcs": [
"max",
"mean",
"lastNotNull"
]
}
},
"targets": [
{
"refId": "A",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"value": "/^$servername$/",
"operator": "=~"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"host"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"in"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
}
]
],
"measurement": "logstash_events",
"query": "SELECT non_negative_derivative(mean(\"in\"), 1s) FROM \"logstash_events\" WHERE (\"role\" = \"searchnode\") AND $timeFilter GROUP BY time($__interval), \"host\" fill(null)",
"rawQuery": false
}
],
"maxDataPoints": null,
"description": "",
"timeFrom": null,
"timeShift": null
}

View File

@@ -644,7 +644,6 @@
insecure_skip_verify = true
{%- endif %}
#
# ## Timeout for HTTP requests to the elastic search server(s)
# http_timeout = "5s"
#
@@ -688,10 +687,18 @@
{% endif %}
{%- endif %}
{% if grains.role in ['so-eval','so-standalone','so-manager', 'so-managersearch', 'so-heavynode'] -%}
{# if grains.role in ['so-eval','so-standalone','so-manager', 'so-managersearch', 'so-heavynode'] -%}
[[inputs.redis]]
servers = ["tcp://localhost:6379"]
{%- endif %}
{%- endif #}
{% if grains.role == 'so-node' %}
[[inputs.beat]]
url = "http://127.0.0.1:5066"
include = ["libbeat"]
username = "{{ salt['pillar.get']('elasticsearch:auth:users:so_beats_user:user') }}"
password = "{{ salt['pillar.get']('elasticsearch:auth:users:so_beats_user:pass') }}"
{% endif %}
# # Read metrics from one or more commands that can output to stdout
[[inputs.exec]]