Merge pull request #5185 from Security-Onion-Solutions/dev

2.3.70
This commit is contained in:
Doug Burks
2021-08-19 06:22:57 -04:00
committed by GitHub
163 changed files with 16814 additions and 42973 deletions
+1 -1
View File
@@ -1 +1 @@
STENODOCKER MSEARCH
+2 -2
View File
@@ -1,6 +1,6 @@
## Security Onion 2.3.61
## Security Onion 2.3.70
Security Onion 2.3.61 is here!
Security Onion 2.3.70 is here!
## Screenshots
+11 -11
View File
@@ -1,18 +1,18 @@
### 2.3.61-MSEARCH ISO image built on 2021/07/28
### 2.3.70 ISO image built on 2021/08/17
### Download and Verify
2.3.61-MSEARCH ISO image:
https://download.securityonion.net/file/securityonion/securityonion-2.3.61-MSEARCH.iso
2.3.70 ISO image:
https://download.securityonion.net/file/securityonion/securityonion-2.3.70.iso
MD5: D38450A6609A1DFF0E19482517B24275
SHA1: DBCBD8F035FD875DC56307982A2480A62BCAB96D
SHA256: D7767AA10FE5D655E8502BDC9B8F963C5584DF8F72F26A5A997C1F2277D4F07E
MD5: F048FABC7FD2D0E1A8B02381F115D1E0
SHA1: DF6D20FEF13CDC1B19309D2A1178D6E5D25FDA6F
SHA256: B193FFD7EE69958A8E257117149DCFB2125C5772FBFA6003AD80FD1CC129E571
Signature for ISO image:
https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.61-MSEARCH.iso.sig
https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.70.iso.sig
Signing key:
https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/master/KEYS
@@ -26,22 +26,22 @@ wget https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/ma
Download the signature file for the ISO:
```
wget https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.61-MSEARCH.iso.sig
wget https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.70.iso.sig
```
Download the ISO image:
```
wget https://download.securityonion.net/file/securityonion/securityonion-2.3.61-MSEARCH.iso
wget https://download.securityonion.net/file/securityonion/securityonion-2.3.70.iso
```
Verify the downloaded ISO image using the signature file:
```
gpg --verify securityonion-2.3.61-MSEARCH.iso.sig securityonion-2.3.61-MSEARCH.iso
gpg --verify securityonion-2.3.70.iso.sig securityonion-2.3.70.iso
```
The output should show "Good signature" and the Primary key fingerprint should match what's shown below:
```
gpg: Signature made Wed 28 Jul 2021 05:27:35 PM EDT using RSA key ID FE507013
gpg: Signature made Tue 17 Aug 2021 10:52:17 PM EDT using RSA key ID FE507013
gpg: Good signature from "Security Onion Solutions, LLC <info@securityonionsolutions.com>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
+1 -1
View File
@@ -1 +1 @@
2.3.61
2.3.70
+1
View File
@@ -13,3 +13,4 @@ logstash:
- so/9500_output_beats.conf.jinja
- so/9600_output_ossec.conf.jinja
- so/9700_output_strelka.conf.jinja
- so/9800_output_logscan.conf.jinja
+12 -7
View File
@@ -45,7 +45,8 @@
'schedule',
'soctopus',
'tcpreplay',
'docker_clean'
'docker_clean',
'learn'
],
'so-heavynode': [
'ca',
@@ -108,7 +109,8 @@
'zeek',
'schedule',
'tcpreplay',
'docker_clean'
'docker_clean',
'learn'
],
'so-manager': [
'salt.master',
@@ -127,7 +129,8 @@
'utility',
'schedule',
'soctopus',
'docker_clean'
'docker_clean',
'learn'
],
'so-managersearch': [
'salt.master',
@@ -146,7 +149,8 @@
'utility',
'schedule',
'soctopus',
'docker_clean'
'docker_clean',
'learn'
],
'so-node': [
'ca',
@@ -178,7 +182,8 @@
'schedule',
'soctopus',
'tcpreplay',
'docker_clean'
'docker_clean',
'learn'
],
'so-sensor': [
'ca',
@@ -237,7 +242,7 @@
{% do allowed_states.append('kibana') %}
{% endif %}
{% if CURATOR and grains.role in ['so-eval', 'so-standalone', 'so-node', 'so-managersearch', 'so-heavynode'] %}
{% if grains.role in ['so-eval', 'so-standalone', 'so-node', 'so-managersearch', 'so-heavynode', 'so-manager'] %}
{% do allowed_states.append('curator') %}
{% endif %}
@@ -296,4 +301,4 @@
{% endif %}
{# all nodes can always run salt.minion state #}
{% do allowed_states.append('salt.minion') %}
{% do allowed_states.append('salt.minion') %}
+1
View File
@@ -22,6 +22,7 @@
/opt/so/log/salt/so-salt-minion-check
/opt/so/log/salt/minion
/opt/so/log/salt/master
/opt/so/log/logscan/*.log
{
{{ logrotate_conf | indent(width=4) }}
}
+10
View File
@@ -326,6 +326,16 @@ dockerreserveports:
- name: /etc/sysctl.d/99-reserved-ports.conf
{% if salt['grains.get']('sosmodel', '') %}
{% if grains['os'] == 'CentOS' %}
# Install Raid tools
raidpkgs:
pkg.installed:
- skip_suggestions: True
- pkgs:
- securityonion-raidtools
- securityonion-megactl
{% endif %}
# Install raid check cron
/usr/sbin/so-raid-status > /dev/null 2>&1:
cron.present:
+8
View File
@@ -372,6 +372,14 @@ set_version() {
fi
}
has_uppercase() {
local string=$1
echo "$string" | grep -qP '[A-Z]' \
&& return 0 \
|| return 1
}
valid_cidr() {
# Verify there is a backslash in the string
echo "$1" | grep -qP "^[^/]+/[^/]+$" || return 1
+5 -3
View File
@@ -35,6 +35,7 @@ def showUsage(options, args):
print('')
print(' General commands:')
print(' help - Prints this usage information.')
print(' apply - Apply the firewall state.')
print('')
print(' Host commands:')
print(' listhostgroups - Lists the known host groups.')
@@ -66,7 +67,7 @@ def checkDefaultPortsOption(options):
def checkApplyOption(options):
if "--apply" in options:
return apply()
return apply(None, None)
def loadYaml(filename):
file = open(filename, "r")
@@ -328,7 +329,7 @@ def removehost(options, args):
code = checkApplyOption(options)
return code
def apply():
def apply(options, args):
proc = subprocess.run(['salt-call', 'state.apply', 'firewall', 'queue=True'])
return proc.returncode
@@ -356,7 +357,8 @@ def main():
"addport": addport,
"removeport": removeport,
"addhostgroup": addhostgroup,
"addportgroup": addportgroup
"addportgroup": addportgroup,
"apply": apply
}
code=1
+75
View File
@@ -0,0 +1,75 @@
#!/bin/bash
#
# Copyright 2014,2015,2016,2017,2018,2019,2020,2021 Security Onion Solutions, LLC
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
. /usr/sbin/so-common
usage() {
echo "Usage: $0 <user-name>"
echo ""
echo "Update password for an existing Fleet user. The new password will be read from STDIN."
exit 1
}
if [ $# -ne 1 ]; then
usage
fi
USER=$1
MYSQL_PASS=$(lookup_pillar_secret mysql)
FLEET_IP=$(lookup_pillar fleet_ip)
FLEET_USER=$USER
# test existence of user
MYSQL_OUTPUT=$(docker exec so-mysql mysql -u root --password=$MYSQL_PASS fleet -e \
"SELECT count(1) FROM users WHERE username='$FLEET_USER'" 2>/dev/null | tail -1)
if [[ $? -ne 0 ]] || [[ $MYSQL_OUTPUT -ne 1 ]] ; then
echo "Test for username [${FLEET_USER}] failed"
echo " expect 1 hit in users database, return $MYSQL_OUTPUT hit(s)."
echo "Unable to update Fleet user password."
exit 2
fi
# Read password for new user from stdin
test -t 0
if [[ $? == 0 ]]; then
echo "Enter new password:"
fi
read -rs FLEET_PASS
if ! check_password "$FLEET_PASS"; then
echo "Password is invalid. Please exclude single quotes, double quotes and backslashes from the password."
exit 2
fi
FLEET_HASH=$(docker exec so-soctopus python -c "import bcrypt; print(bcrypt.hashpw('$FLEET_PASS'.encode('utf-8'), bcrypt.gensalt()).decode('utf-8'));" 2>&1)
if [[ $? -ne 0 ]]; then
echo "Failed to generate Fleet password hash"
exit 2
fi
MYSQL_OUTPUT=$(docker exec so-mysql mysql -u root --password=$MYSQL_PASS fleet -e \
"UPDATE users SET password='$FLEET_HASH', salt='' where username='$FLEET_USER'" 2>&1)
if [[ $? -eq 0 ]]; then
echo "Successfully updated Fleet user password"
else
echo "Unable to update Fleet user password"
echo "$MYSQL_OUTPUT"
exit 2
fi
+17
View File
@@ -0,0 +1,17 @@
# this script is used to delete the default Grafana dashboard folders that existed prior to Grafana dashboard and Salt management changes in 2.3.70
folders=$(curl -X GET http://admin:{{salt['pillar.get']('secrets:grafana_admin')}}@localhost:3000/api/folders | jq -r '.[] | @base64')
delfolder=("Manager" "Manager Search" "Sensor Nodes" "Search Nodes" "Standalone" "Eval Mode")
for row in $folders; do
title=$(echo ${row} | base64 --decode | jq -r '.title')
uid=$(echo ${row} | base64 --decode | jq -r '.uid')
if [[ " ${delfolder[@]} " =~ " ${title} " ]]; then
curl -X DELETE http://admin:{{salt['pillar.get']('secrets:grafana_admin')}}@localhost:3000/api/folders/$uid
fi
done
echo "so-grafana-dashboard-folder-delete has been run to delete default Grafana dashboard folders that existed prior to 2.3.70" > /opt/so/state/so-grafana-dashboard-folder-delete-complete
exit 0
+58
View File
@@ -0,0 +1,58 @@
#!/bin/bash
#
# Copyright 2014,2015,2016,2017,2018,2019,2020,2021 Security Onion Solutions, LLC
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
. /usr/sbin/so-common
. /usr/sbin/so-image-common
usage() {
read -r -d '' message <<- EOM
usage: so-image-pull [-h] IMAGE [IMAGE ...]
positional arguments:
IMAGE One or more 'so-' prefixed images to download and verify.
optional arguments:
-h, --help Show this help message and exit.
EOM
echo "$message"
exit 1
}
for arg; do
shift
[[ "$arg" = "--quiet" || "$arg" = "-q" ]] && quiet=true && continue
set -- "$@" "$arg"
done
if [[ $# -eq 0 || $# -gt 1 ]] || [[ $1 == '-h' || $1 == '--help' ]]; then
usage
fi
TRUSTED_CONTAINERS=("$@")
set_version
for image in "${TRUSTED_CONTAINERS[@]}"; do
if ! docker images | grep "$image" | grep ":5000" | grep -q "$VERSION"; then
if [[ $quiet == true ]]; then
update_docker_containers "$image" "" "" "/dev/null"
else
update_docker_containers "$image" "" "" ""
fi
else
echo "$image:$VERSION image exists."
fi
done
View File
+303
View File
@@ -0,0 +1,303 @@
#!/usr/bin/env python3
# Copyright 2014,2015,2016,2017,2018,2019,2020,2021 Security Onion Solutions, LLC
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from itertools import chain
from typing import List
import signal
import sys
import os
import re
import subprocess
import argparse
import textwrap
import yaml
import multiprocessing
import docker
import pty
minion_pillar_dir = '/opt/so/saltstack/local/pillar/minions'
so_status_conf = '/opt/so/conf/so-status/so-status.conf'
proc: subprocess.CompletedProcess = None
# Temp store of modules, will likely be broken out into salt
def get_learn_modules():
return {
'logscan': { 'cpu_period': get_cpu_period(fraction=0.25), 'enabled': False, 'description': 'Scan log files against pre-trained models to alert on anomalies.' }
}
def get_cpu_period(fraction: float):
multiplier = 10000
num_cores = multiprocessing.cpu_count()
if num_cores <= 2:
fraction = 1.
num_used_cores = int(num_cores * fraction)
cpu_period = num_used_cores * multiplier
return cpu_period
def sigint_handler(*_):
print('Exiting gracefully on Ctrl-C')
if proc is not None: proc.send_signal(signal.SIGINT)
sys.exit(1)
def find_minion_pillar() -> str:
regex = '^.*_(manager|managersearch|standalone|import|eval)\.sls$'
result = []
for root, _, files in os.walk(minion_pillar_dir):
for f_minion_id in files:
if re.search(regex, f_minion_id):
result.append(os.path.join(root, f_minion_id))
if len(result) == 0:
print('Could not find manager-type pillar (eval, standalone, manager, managersearch, import). Are you running this script on the manager?', file=sys.stderr)
sys.exit(3)
elif len(result) > 1:
res_str = ', '.join(f'\"{result}\"')
print('(This should not happen, the system is in an error state if you see this message.)\n', file=sys.stderr)
print('More than one manager-type pillar exists, minion id\'s listed below:', file=sys.stderr)
print(f' {res_str}', file=sys.stderr)
sys.exit(3)
else:
return result[0]
def read_pillar(pillar: str):
try:
with open(pillar, 'r') as pillar_file:
loaded_yaml = yaml.safe_load(pillar_file.read())
if loaded_yaml is None:
print(f'Could not parse {pillar}', file=sys.stderr)
sys.exit(3)
return loaded_yaml
except:
print(f'Could not open {pillar}', file=sys.stderr)
sys.exit(3)
def write_pillar(pillar: str, content: dict):
try:
with open(pillar, 'w') as pillar_file:
yaml.dump(content, pillar_file, default_flow_style=False)
except:
print(f'Could not open {pillar}', file=sys.stderr)
sys.exit(3)
def mod_so_status(action: str, item: str):
with open(so_status_conf, 'a+') as conf:
conf.seek(0)
containers = conf.readlines()
if f'so-{item}\n' in containers:
if action == 'remove': containers.remove(f'so-{item}\n')
if action == 'add': pass
else:
if action == 'remove': pass
if action == 'add': containers.append(f'so-{item}\n')
[containers.remove(c_name) for c_name in containers if c_name == '\n'] # remove extra newlines
conf.seek(0)
conf.truncate(0)
conf.writelines(containers)
def create_pillar_if_not_exist(pillar:str, content: dict):
pillar_dict = content
if pillar_dict.get('learn', {}).get('modules') is None:
pillar_dict['learn'] = {}
pillar_dict['learn']['modules'] = get_learn_modules()
content.update()
write_pillar(pillar, content)
return content
def salt_call(module: str):
salt_cmd = ['salt-call', 'state.apply', '-l', 'quiet', f'learn.{module}', 'queue=True']
print(f' Applying salt state for {module} module...')
proc = subprocess.run(salt_cmd, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
return_code = proc.returncode
if return_code != 0:
print(f' [ERROR] Failed to apply salt state for {module} module.')
return return_code
def pull_image(module: str):
container_basename = f'so-{module}'
client = docker.from_env()
image_list = client.images.list(filters={ 'dangling': False })
tag_list = list(chain.from_iterable(list(map(lambda x: x.attrs.get('RepoTags'), image_list))))
basename_match = list(filter(lambda x: f'{container_basename}' in x, tag_list))
local_registry_match = list(filter(lambda x: ':5000' in x, basename_match))
if len(local_registry_match) == 0:
print(f'Pulling and verifying missing image for {module} (may take several minutes) ...')
pull_command = ['so-image-pull', '--quiet', container_basename]
proc = subprocess.run(pull_command, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
return_code = proc.returncode
if return_code != 0:
print(f'[ERROR] Failed to pull image so-{module}, skipping state.')
else:
return_code = 0
return return_code
def apply(module_list: List):
return_code = 0
for module in module_list:
salt_ret = salt_call(module)
# Only update return_code if the command returned a non-zero return
if salt_ret != 0:
return_code = salt_ret
return return_code
def check_apply(args: dict):
if args.apply:
print('Configuration updated. Applying changes:')
return apply(args.modules)
else:
message = 'Configuration updated. Would you like to apply your changes now? (y/N) '
answer = input(message)
while answer.lower() not in [ 'y', 'n', '' ]:
answer = input(message)
if answer.lower() in [ 'n', '' ]:
return 0
else:
print('Applying changes:')
return apply(args.modules)
def enable_disable_modules(args, enable: bool):
pillar_modules = args.pillar_dict.get('learn', {}).get('modules')
pillar_mod_names = args.pillar_dict.get('learn', {}).get('modules').keys()
action_str = 'add' if enable else 'remove'
if 'all' in args.modules:
for module, details in pillar_modules.items():
details['enabled'] = enable
mod_so_status(action_str, module)
if enable: pull_image(module)
args.pillar_dict.update()
write_pillar(args.pillar, args.pillar_dict)
else:
write_needed = False
for module in args.modules:
if module in pillar_mod_names:
if pillar_modules[module]['enabled'] == enable:
state_str = 'enabled' if enable else 'disabled'
print(f'{module} module already {state_str}.', file=sys.stderr)
else:
if enable and pull_image(module) != 0:
continue
pillar_modules[module]['enabled'] = enable
mod_so_status(action_str, module)
write_needed = True
if write_needed:
args.pillar_dict.update()
write_pillar(args.pillar, args.pillar_dict)
cmd_ret = check_apply(args)
return cmd_ret
def enable_modules(args):
enable_disable_modules(args, enable=True)
def disable_modules(args):
enable_disable_modules(args, enable=False)
def list_modules(*_):
print('Available ML modules:')
for module, details in get_learn_modules().items():
print(f' - { module } : {details["description"]}')
return 0
def main():
beta_str = 'BETA - SUBJECT TO CHANGE\n'
apply_help='After ACTION the chosen modules, apply any necessary salt states.'
enable_apply_help = apply_help.replace('ACTION', 'enabling')
disable_apply_help = apply_help.replace('ACTION', 'disabling')
signal.signal(signal.SIGINT, sigint_handler)
if os.geteuid() != 0:
print('You must run this script as root', file=sys.stderr)
sys.exit(1)
main_parser = argparse.ArgumentParser(formatter_class=argparse.RawDescriptionHelpFormatter)
subcommand_desc = textwrap.dedent(
"""\
enable Enable one or more ML modules.
disable Disable one or more ML modules.
list List all available ML modules.
"""
)
subparsers = main_parser.add_subparsers(title='commands', description=subcommand_desc, metavar='', dest='command')
module_help_str = 'One or more ML modules, which can be listed using \'so-learn list\'. Use the keyword \'all\' to apply the action to all available modules.'
enable = subparsers.add_parser('enable')
enable.set_defaults(func=enable_modules)
enable.add_argument('modules', metavar='ML_MODULE', nargs='+', help=module_help_str)
enable.add_argument('--apply', action='store_const', const=True, required=False, help=enable_apply_help)
disable = subparsers.add_parser('disable')
disable.set_defaults(func=disable_modules)
disable.add_argument('modules', metavar='ML_MODULE', nargs='+', help=module_help_str)
disable.add_argument('--apply', action='store_const', const=True, required=False, help=disable_apply_help)
list = subparsers.add_parser('list')
list.set_defaults(func=list_modules)
args = main_parser.parse_args(sys.argv[1:])
args.pillar = find_minion_pillar()
args.pillar_dict = create_pillar_if_not_exist(args.pillar, read_pillar(args.pillar))
if hasattr(args, 'func'):
exit_code = args.func(args)
else:
if args.command is None:
print(beta_str)
main_parser.print_help()
sys.exit(0)
sys.exit(exit_code)
if __name__ == '__main__':
main()
+70 -25
View File
@@ -17,53 +17,98 @@
. /usr/sbin/so-common
check_lsi_raid() {
# For use for LSI on Ubuntu
#MEGA=/opt/MegaRAID/MegeCli/MegaCli64
#LSIRC=$($MEGA -LDInfo -Lall -aALL | grep Optimal)
# Open Source Centos
MEGA=/opt/mega/megasasctl
LSIRC=$($MEGA | grep optimal)
appliance_check() {
{%- if salt['grains.get']('sosmodel', '') %}
APPLIANCE=1
DUDEYOUGOTADELL=$(dmidecode |grep Dell)
if [[ -n $DUDEYOUGOTADELL ]]; then
APPTYPE=dell
else
APPTYPE=sm
fi
mkdir -p /opt/so/log/raid
if [[ $LSIRC ]]; then
# Raid is good
LSIRAID=0
{%- else %}
echo "This is not an appliance"
exit 0
{%- endif %}
}
check_nsm_raid() {
PERCCLI=$(/opt/raidtools/perccli/perccli64 /c0/v0 show|grep RAID|grep Optl)
MEGACTL=$(/opt/raidtools/megasasctl |grep optimal)
if [[ $APPLIANCE == '1' ]]; then
if [[ -n $PERCCLI ]]; then
HWRAID=0
elif [[ -n $MEGACTL ]]; then
HWRAID=0
else
LSIRAID=1
HWRAID=1
fi
fi
}
check_boss_raid() {
MVCLI=$(/usr/local/bin/mvcli info -o vd |grep status |grep functional)
if [[ -n $DUDEYOUGOTADELL ]]; then
if [[ -n $MVCLI ]]; then
BOSSRAID=0
else
BOSSRAID=1
fi
fi
}
check_software_raid() {
if [[ -n $DUDEYOUGOTADELL ]]; then
SWRC=$(grep "_" /proc/mdstat)
if [[ $SWRC ]]; then
if [[ -n $SWRC ]]; then
# RAID is failed in some way
SWRAID=1
else
SWRAID=0
fi
fi
}
# This script checks raid status if you use SO appliances
# See if this is an appliance
appliance_check
check_nsm_raid
check_boss_raid
{%- if salt['grains.get']('sosmodel', '') %}
mkdir -p /opt/so/log/raid
{%- if grains['sosmodel'] in ['SOSMN', 'SOSSNNV'] %}
#check_boss_raid
{%- if grains['sosmodel'] in ['SOSMN', 'SOSSNNV'] %}
check_software_raid
echo "nsmraid=$SWRAID" > /opt/so/log/raid/status.log
{%- elif grains['sosmodel'] in ['SOS1000F', 'SOS1000', 'SOSSN7200', 'SOS10K', 'SOS4000'] %}
#check_boss_raid
check_lsi_raid
echo "nsmraid=$LSIRAID" > /opt/so/log/raid/status.log
{%- else %}
exit 0
{%- endif %}
{%- else %}
exit 0
{%- endif %}
{%- endif %}
if [[ -n $SWRAID ]]; then
if [[ $SWRAID == '0' && BOSSRAID == '0' ]]; then
RAIDSTATUS=0
else
RAIDSTATUS=1
fi
elif [[ -n $DUDEYOUGOTADELL ]]; then
if [[ $BOSSRAID == '0' && $HWRAID == '0' ]]; then
RAIDSTATUS=0
else
RAIDSTATUS=1
fi
elif [[ "$APPTYPE" == 'sm' ]]; then
if [[ -n "$HWRAID" ]]; then
RAIDSTATUS=0
else
RAIDSTATUS=1
fi
fi
echo "nsmraid=$RAIDSTATUS" > /opt/so/log/raid/status.log
+1 -1
View File
@@ -31,7 +31,7 @@ if [[ $# -lt 1 ]]; then
echo "Usage: $0 <pcap-sample(s)>"
echo
echo "All PCAPs must be placed in the /opt/so/samples directory unless replaying"
echo "a sample pcap that is included in the so-tcpreplay image. Those PCAP sampes"
echo "a sample pcap that is included in the so-tcpreplay image. Those PCAP samples"
echo "are located in the /opt/samples directory inside of the image."
echo
echo "Customer provided PCAP example:"
+57
View File
@@ -0,0 +1,57 @@
#!/bin/bash
#
# Copyright 2014,2015,2016,2017,2018,2019,2020,2021 Security Onion Solutions, LLC
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
. /usr/sbin/so-common
usage() {
echo "Usage: $0 <user-name>"
echo ""
echo "Update password for an existing TheHive user. The new password will be read from STDIN."
exit 1
}
if [ $# -ne 1 ]; then
usage
fi
USER=$1
THEHIVE_KEY=$(lookup_pillar hivekey)
THEHVIE_API_URL="$(lookup_pillar url_base)/thehive/api"
THEHIVE_USER=$USER
# Read password for new user from stdin
test -t 0
if [[ $? == 0 ]]; then
echo "Enter new password:"
fi
read -rs THEHIVE_PASS
if ! check_password "$THEHIVE_PASS"; then
echo "Password is invalid. Please exclude single quotes, double quotes and backslashes from the password."
exit 2
fi
# Change password for user in TheHive
resp=$(curl -sk -XPOST -H "Authorization: Bearer $THEHIVE_KEY" -H "Content-Type: application/json" -L "https://$THEHVIE_API_URL/user/${THEHIVE_USER}/password/set" -d "{\"password\" : \"$THEHIVE_PASS\"}")
if [[ -z "$resp" ]]; then
echo "Successfully updated TheHive user password"
else
echo "Unable to update TheHive user password"
echo $resp
exit 2
fi
+1 -1
View File
@@ -306,7 +306,7 @@ function updateStatus() {
[[ $? != 0 ]] && fail "Unable to unlock credential record"
fi
updatedJson=$(echo "$response" | jq ".traits.status = \"$status\" | del(.verifiable_addresses) | del(.id) | del(.schema_url)")
updatedJson=$(echo "$response" | jq ".traits.status = \"$status\" | del(.verifiable_addresses) | del(.id) | del(.schema_url) | del(.created_at) | del(.updated_at)")
response=$(curl -Ss -XPUT -L ${kratosUrl}/identities/$identityId -d "$updatedJson")
[[ $? != 0 ]] && fail "Unable to mark user as locked"
+33
View File
@@ -182,6 +182,37 @@ check_airgap() {
fi
}
# {% raw %}
check_local_mods() {
local salt_local=/opt/so/saltstack/local
local_mod_arr=()
while IFS= read -r -d '' local_file; do
stripped_path=${local_file#"$salt_local"}
default_file="${DEFAULT_SALT_DIR}${stripped_path}"
if [[ -f $default_file ]]; then
file_diff=$(diff "$default_file" "$local_file" )
if [[ $(echo "$file_diff" | grep -c "^<") -gt 0 ]]; then
local_mod_arr+=( "$local_file" )
fi
fi
done< <(find $salt_local -type f -print0)
if [[ ${#local_mod_arr} -gt 0 ]]; then
echo "Potentially breaking changes found in the following files (check ${DEFAULT_SALT_DIR} for original copy):"
for file_str in "${local_mod_arr[@]}"; do
echo " $file_str"
done
echo ""
echo "To reference this list later, check $SOUP_LOG"
sleep 10
fi
}
# {% endraw %}
check_sudoers() {
if grep -q "so-setup" /etc/sudoers; then
echo "There is an entry for so-setup in the sudoers file, this can be safely deleted using \"visudo\"."
@@ -956,6 +987,8 @@ main() {
fi
fi
check_local_mods
check_sudoers
if [[ -n $lsl_msg ]]; then
@@ -4,7 +4,7 @@
{%- if grains['role'] in ['so-node', 'so-heavynode'] %}
{%- set ELASTICSEARCH_HOST = salt['pillar.get']('elasticsearch:mainip', '') -%}
{%- set ELASTICSEARCH_PORT = salt['pillar.get']('elasticsearch:es_port', '') -%}
{%- elif grains['role'] in ['so-eval', 'so-managersearch', 'so-standalone'] %}
{%- elif grains['role'] in ['so-eval', 'so-managersearch', 'so-standalone', 'so-manager'] %}
{%- set ELASTICSEARCH_HOST = salt['pillar.get']('manager:mainip', '') -%}
{%- set ELASTICSEARCH_PORT = salt['pillar.get']('manager:es_port', '') -%}
{%- endif -%}
+1 -1
View File
@@ -1,6 +1,6 @@
{% if grains['role'] in ['so-node', 'so-heavynode'] %}
{%- set elasticsearch = salt['pillar.get']('elasticsearch:mainip', '') -%}
{% elif grains['role'] in ['so-eval', 'so-managersearch', 'so-standalone'] %}
{% elif grains['role'] in ['so-eval', 'so-managersearch', 'so-standalone', 'so-manager'] %}
{%- set elasticsearch = salt['pillar.get']('manager:mainip', '') -%}
{%- endif %}
{%- if salt['pillar.get']('elasticsearch:auth:enabled') is sameas true %}
+27 -2
View File
@@ -4,8 +4,9 @@
{% set VERSION = salt['pillar.get']('global:soversion', 'HH1.2.2') %}
{% set IMAGEREPO = salt['pillar.get']('global:imagerepo') %}
{% set MANAGER = salt['grains.get']('master') %}
{% if grains['role'] in ['so-eval', 'so-node', 'so-managersearch', 'so-heavynode', 'so-standalone'] %}
{% if grains['role'] in ['so-eval', 'so-node', 'so-managersearch', 'so-heavynode', 'so-standalone', 'so-manager'] %}
{% from 'elasticsearch/auth.map.jinja' import ELASTICAUTH with context %}
{% from "curator/map.jinja" import CURATOROPTIONS with context %}
# Curator
# Create the group
curatorgroup:
@@ -118,8 +119,10 @@ so-curatordeletecron:
- dayweek: '*'
so-curator:
docker_container.running:
docker_container.{{ CURATOROPTIONS.status }}:
{% if CURATOROPTIONS.status == 'running' %}
- image: {{ MANAGER }}:5000/{{ IMAGEREPO }}/so-curator:{{ VERSION }}
- start: {{ CURATOROPTIONS.start }}
- hostname: curator
- name: so-curator
- user: curator
@@ -129,11 +132,33 @@ so-curator:
- /opt/so/conf/curator/curator.yml:/etc/curator/config/curator.yml:ro
- /opt/so/conf/curator/action/:/etc/curator/action:ro
- /opt/so/log/curator:/var/log/curator:rw
- require:
- file: actionconfs
- file: curconf
- file: curlogdir
{% else %}
- force: True
{% endif %}
{% if CURATOROPTIONS.manage_sostatus %}
append_so-curator_so-status.conf:
file.append:
- name: /opt/so/conf/so-status/so-status.conf
- text: so-curator
- unless: grep -q so-curator /opt/so/conf/so-status/so-status.conf
{% if not CURATOROPTIONS.start %}
so-curator_so-status.disabled:
file.comment:
- name: /opt/so/conf/so-status/so-status.conf
- regex: ^so-curator$
{% else %}
delete_so-curator_so-status.disabled:
file.uncomment:
- name: /opt/so/conf/so-status/so-status.conf
- regex: ^so-curator$
{% endif %}
{% endif %}
# Begin Curator Cron Jobs
+16
View File
@@ -0,0 +1,16 @@
{% set CURATOROPTIONS = {} %}
{% set ENABLED = salt['pillar.get']('curator:enabled', True) %}
{% set TRUECLUSTER = salt['pillar.get']('elasticsearch:true_cluster', False) %}
{% do CURATOROPTIONS.update({'manage_sostatus': True}) %}
# don't start the docker container if searchnode and true clustering is enabled or curator disabled via pillar or true cluster not enabled and manager
{% if not ENABLED or (TRUECLUSTER and grains.id.split('_')|last == 'searchnode') or (not TRUECLUSTER and grains.id.split('_')|last == 'manager') %}
{% do CURATOROPTIONS.update({'start': False}) %}
{% do CURATOROPTIONS.update({'status': 'absent'}) %}
{% if (TRUECLUSTER and grains.id.split('_')|last == 'searchnode') or (not TRUECLUSTER and grains.id.split('_')|last == 'manager') %}
{% do CURATOROPTIONS.update({'manage_sostatus': False}) %}
{% endif %}%}
{% else %}
{% do CURATOROPTIONS.update({'start': True}) %}
{% do CURATOROPTIONS.update({'status': 'running'}) %}
{% endif %}
@@ -0,0 +1,29 @@
{
"description": "logscan",
"processors": [
{ "set": { "field": "event.severity", "value": 2 } },
{ "json": { "field": "message", "add_to_root": true, "ignore_failure": true } },
{ "rename": { "field": "@timestamp", "target_field": "event.ingested", "ignore_missing": true } },
{ "date": { "field": "timestamp", "target_field": "event.created", "formats": [ "ISO8601", "UNIX" ], "ignore_failure": true } },
{ "date": { "field": "start_time", "target_field": "@timestamp", "formats": [ "ISO8601", "UNIX" ], "ignore_failure": true } },
{ "date": { "field": "start_time", "target_field": "event.start", "formats": [ "ISO8601", "UNIX" ], "ignore_failure": true } },
{ "date": { "field": "end_time", "target_field": "event.end", "formats": [ "ISO8601", "UNIX" ], "ignore_failure": true } },
{ "remove": { "field": "start_time", "ignore_missing": true } },
{ "remove": { "field": "end_time", "ignore_missing": true } },
{ "rename": { "field": "source_ip", "target_field": "source.ip", "ignore_missing": true } },
{ "rename": { "field": "top_source_ips", "target_field": "logscan.source.ips", "ignore_missing": true } },
{ "append": { "if": "ctx.source != null", "field": "logscan.source.ips", "value": "{{{source.ip}}}", "ignore_failure": true } },
{ "set": { "if": "ctx.model == 'k1'", "field": "rule.name", "value": "LOGSCAN K1 MODEL THRESHOLD" } },
{ "set": { "if": "ctx.model == 'k1'", "field": "rule.description", "value": "High number of logins from single IP in 1 minute window" } },
{ "set": { "if": "ctx.model == 'k5'", "field": "rule.name", "value": "LOGSCAN K5 MODEL THRESHOLD" } },
{ "set": { "if": "ctx.model == 'k5'", "field": "rule.description", "value": "High ratio of login failures from single IP in 5 minute window" } },
{ "set": { "if": "ctx.model == 'k60'", "field": "rule.name", "value": "LOGSCAN K60 MODEL THRESHOLD" } },
{ "set": { "if": "ctx.model == 'k60'", "field": "rule.description", "value": "Large number of login failures in 1 hour window" } },
{ "rename": { "field": "model", "target_field": "logscan.model" } },
{ "rename": { "field": "num_attempts", "target_field": "logscan.attempts.total.amount", "ignore_missing": true } },
{ "rename": { "field": "num_failed", "target_field": "logscan.attempts.failed.amount", "ignore_missing": true } },
{ "script": { "lang": "painless", "source": "ctx.logscan.attempts.succeeded.amount = ctx.logscan.attempts.total.amount - ctx.logscan.attempts.failed.amount" , "ignore_failure": true} },
{ "rename": { "field": "avg_failure_interval", "target_field": "logscan.attempts.failed.avg_interval", "ignore_missing": true } },
{ "pipeline": { "name": "common" } }
]
}
+1
View File
@@ -33,6 +33,7 @@
{ "rename": { "field": "data.win.eventdata.user", "target_field": "user.name", "ignore_missing": true } },
{ "rename": { "field": "data.win.system", "target_field": "winlog", "ignore_missing": true } },
{ "rename": { "field": "data.win.eventdata", "target_field": "winlog.event_data", "ignore_missing": true } },
{ "rename": { "field": "data", "target_field": "wazuh.data", "ignore_missing": true } },
{ "rename": { "field": "winlog.eventID", "target_field": "winlog.event_id", "ignore_missing": true } },
{ "rename": { "field": "predecoder.program_name", "target_field": "process.name", "ignore_missing": true } },
{ "rename": { "field": "decoder.name", "target_field": "event.dataset", "ignore_missing": true } },
@@ -8,6 +8,7 @@
{ "rename": { "field": "scan.hash", "target_field": "hash", "ignore_missing": true } },
{ "rename": { "field": "scan.exiftool", "target_field": "exiftool", "ignore_missing": true } },
{ "grok": { "if": "ctx.request?.attributes?.filename != null", "field": "request.attributes.filename", "patterns": ["-%{WORD:log.id.fuid}-"], "ignore_failure": true } },
{ "gsub": { "if": "ctx.request?.attributes?.filename != null", "field": "request.attributes.filename", "pattern": "\/nsm\/strelka\/staging", "replacement": "\/nsm\/strelka\/processed" } },
{ "foreach":
{
"if": "ctx.exiftool?.keys !=null",
@@ -13,6 +13,7 @@
{ "rename": { "field": "message2.fileinfo.size", "target_field": "file.size", "ignore_missing": true } },
{ "rename": { "field": "message2.fileinfo.state", "target_field": "file.state", "ignore_missing": true } },
{ "rename": { "field": "message2.fileinfo.stored", "target_field": "file.saved", "ignore_missing": true } },
{ "rename": { "field": "message2.fileinfo.sha256", "target_field": "hash.sha256", "ignore_missing": true } },
{ "set": { "if": "ctx.network?.protocol != null", "field": "file.source", "value": "{{network.protocol}}" } },
{ "pipeline": { "name": "common" } }
]
@@ -65,7 +65,8 @@
{
"port": {
"path_match": "*.port",
"mapping": {
"path_unmatch": "*.data.port",
"mapping": {
"type": "integer",
"fields" : {
"keyword" : {
@@ -312,6 +313,10 @@
"type":"object",
"dynamic": true
},
"logscan": {
"type": "object",
"dynamic": true
},
"manager":{
"type":"object",
"dynamic": true
@@ -680,6 +685,10 @@
"redis":{
"type":"object",
"dynamic": true
},
"wazuh":{
"type":"object",
"dynamic": true
}
}
}
+20 -1
View File
@@ -16,6 +16,7 @@
{%- set FBMEMFLUSHMINEVENTS = salt['pillar.get']('filebeat:mem_flush_min_events', 2048) -%}
{%- set FBLSWORKERS = salt['pillar.get']('filebeat:ls_workers', 1) -%}
{%- set FBLSBULKMAXSIZE = salt['pillar.get']('filebeat:ls_bulk_max_size', 2048) -%}
{%- set FBLOGGINGLEVEL = salt['pillar.get']('filebeat:logging:level', 'warning') -%}
name: {{ HOSTNAME }}
@@ -25,7 +26,7 @@ name: {{ HOSTNAME }}
# Sets log level. The default log level is info.
# Available log levels are: error, warning, info, debug
logging.level: warning
logging.level: {{ FBLOGGINGLEVEL }}
# Enable debug output for selected components. To enable all selectors use ["*"]
# Other available selectors are "beat", "publish", "service"
@@ -111,6 +112,21 @@ filebeat.inputs:
fields: ["source", "prospector", "input", "offset", "beat"]
fields_under_root: true
{%- if grains['role'] in ['so-eval', 'so-standalone', 'so-manager', 'so-managersearch', 'so-import'] %}
- type: log
paths:
- /logs/logscan/alerts.log
fields:
module: logscan
dataset: alert
processors:
- drop_fields:
fields: ["source", "prospector", "input", "offset", "beat"]
fields_under_root: true
clean_removed: true
close_removed: false
{%- endif %}
{%- if grains['role'] in ['so-eval', 'so-standalone', 'so-sensor', 'so-helix', 'so-heavynode', 'so-import'] %}
{%- if ZEEKVER != 'SURICATA' %}
{%- for LOGNAME in salt['pillar.get']('zeeklogs:enabled', '') %}
@@ -293,6 +309,9 @@ output.elasticsearch:
- index: "so-strelka"
when.contains:
module: "strelka"
- index: "so-logscan"
when.contains:
module: "logscan"
setup.template.enabled: false
{%- else %}
@@ -0,0 +1,62 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"description": "{{TITLE}}",
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": {{ ID }},
"iteration": 1625757047565,
"links": [],
"panels": [
{% for panel in PANELS -%}
{%- import_json "grafana/panels/" ~ panel ~ ".json.jinja" as panel %}
{{ panel | json }} {% if not loop.last %},{% endif %}
{% endfor -%}
],
"refresh": "5m",
"schemaVersion": 27,
"style": "dark",
"tags": [],
"templating": {
"list": [
{% for template in TEMPLATES.keys() -%}
{%- import_json "grafana/templates/" ~ template ~ ".json" as template %}
{{ template | json }} {% if not loop.last %},{% endif %}
{% endfor -%}
]
},
"time": {
"from": "now-3h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
]
},
"timezone": "browser",
"title": "{{ TITLE }}",
{% if TITLE | lower == 'security onion grid overview' %}
"uid": "so_overview",
{% endif %}
"version": 1
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+8 -51
View File
@@ -1,55 +1,12 @@
apiVersion: 1
providers:
- name: 'Dashboards'
folder: 'Dashboards'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/
{%- if grains['role'] != 'so-eval' %}
- name: 'Manager'
folder: 'Manager'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/manager
- name: 'Manager Search'
folder: 'Manager Search'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/managersearch
- name: 'Sensor Nodes'
folder: 'Sensor Nodes'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/sensor_nodes
- name: 'Search Nodes'
folder: 'Search Nodes'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/search_nodes
- name: 'Standalone'
folder: 'Standalone'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/standalone
{%- else %}
- name: 'Security Onion'
folder: 'Eval Mode'
type: file
disableDeletion: false
editable: true
allowUiUpdates: true
options:
path: /etc/grafana/grafana_dashboards/eval
{% endif %}
+30 -172
View File
@@ -10,9 +10,18 @@
{% import_yaml 'grafana/defaults.yaml' as default_settings %}
{% set GRAFANA_SETTINGS = salt['grains.filter_by'](default_settings, default='grafana', merge=salt['pillar.get']('grafana', {})) %}
{% if grains['role'] in ['so-manager', 'so-managersearch', 'so-standalone'] or (grains.role == 'so-eval' and GRAFANA == 1) %}
{% set DASHBOARDS = ['overview'] %}
{% if grains.role == 'so-eval' %}
{% do DASHBOARDS.append('eval') %}
{% else %}
{# 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() %}
{% do DASHBOARDS.append(dashboard) %}
{% endfor %}
{% endif %}
# Grafana all the things
grafanadir:
file.directory:
@@ -35,47 +44,11 @@ grafanadashdir:
- group: 939
- makedirs: True
grafanadashmdir:
file.directory:
- name: /opt/so/conf/grafana/grafana_dashboards/manager
- user: 939
- group: 939
- makedirs: True
grafanadashmsdir:
file.directory:
- name: /opt/so/conf/grafana/grafana_dashboards/managersearch
- user: 939
- group: 939
- makedirs: True
grafanadashsadir:
file.directory:
- name: /opt/so/conf/grafana/grafana_dashboards/standalone
- user: 939
- group: 939
- makedirs: True
grafanadashevaldir:
file.directory:
- name: /opt/so/conf/grafana/grafana_dashboards/eval
- user: 939
- group: 939
- makedirs: True
grafanadashfndir:
file.directory:
- name: /opt/so/conf/grafana/grafana_dashboards/sensor_nodes
- user: 939
- group: 939
- makedirs: True
grafanadashsndir:
file.directory:
- name: /opt/so/conf/grafana/grafana_dashboards/search_nodes
- user: 939
- group: 939
- makedirs: True
{% for type in ['eval','manager','managersearch','search_nodes','sensor_nodes','standalone'] %}
remove_dashboard_dir_{{type}}:
file.absent:
- name: /opt/so/conf/grafana/grafana_dashboards/{{type}}
{% endfor %}
grafana-dashboard-config:
file.managed:
@@ -114,142 +87,27 @@ grafana-config-files:
- group: 939
- source: salt://grafana/etc/files
- makedirs: True
{% if salt['pillar.get']('managertab', False) %}
{% for SN, SNDATA in salt['pillar.get']('managertab', {}).items() %}
{% set NODETYPE = SN.split('_')|last %}
{% set SN = SN | regex_replace('_' ~ NODETYPE, '') %}
dashboard-manager:
so-grafana-dashboard-folder-delete:
cmd.run:
- name: /usr/sbin/so-grafana-dashboard-folder-delete
- unless: ls /opt/so/state/so-grafana-dashboard-folder-delete-complete
{% for dashboard in DASHBOARDS | unique %}
{{dashboard}}-dashboard:
file.managed:
- name: /opt/so/conf/grafana/grafana_dashboards/manager/{{ SN }}-Manager.json
- name: /opt/so/conf/grafana/grafana_dashboards/{{dashboard}}.json
- user: 939
- group: 939
- template: jinja
- source: salt://grafana/dashboards/manager/manager.json
- source: salt://grafana/dashboards/common_template.json.jinja
- defaults:
SERVERNAME: {{ SN }}
MANINT: {{ SNDATA.manint }}
CPUS: {{ SNDATA.totalcpus }}
UID: so_overview
ROOTFS: {{ SNDATA.rootfs }}
NSMFS: {{ SNDATA.nsmfs }}
DASHBOARD: {{ dashboard }}
PANELS: {{GRAFANA_SETTINGS.dashboards[dashboard].panels}}
TEMPLATES: {{GRAFANA_SETTINGS.dashboards[dashboard].templating.list}}
TITLE: {{ GRAFANA_SETTINGS.dashboards[dashboard].get('title', dashboard| capitalize) }}
ID: {{ loop.index }}
{% endfor %}
{% endif %}
{% if salt['pillar.get']('managersearchtab', False) %}
{% for SN, SNDATA in salt['pillar.get']('managersearchtab', {}).items() %}
{% set NODETYPE = SN.split('_')|last %}
{% set SN = SN | regex_replace('_' ~ NODETYPE, '') %}
dashboard-managersearch:
file.managed:
- name: /opt/so/conf/grafana/grafana_dashboards/managersearch/{{ SN }}-ManagerSearch.json
- user: 939
- group: 939
- template: jinja
- source: salt://grafana/dashboards/managersearch/managersearch.json
- defaults:
SERVERNAME: {{ SN }}
MANINT: {{ SNDATA.manint }}
CPUS: {{ SNDATA.totalcpus }}
UID: so_overview
ROOTFS: {{ SNDATA.rootfs }}
NSMFS: {{ SNDATA.nsmfs }}
{% endfor %}
{% endif %}
{% if salt['pillar.get']('standalonetab', False) %}
{% for SN, SNDATA in salt['pillar.get']('standalonetab', {}).items() %}
{% set NODETYPE = SN.split('_')|last %}
{% set SN = SN | regex_replace('_' ~ NODETYPE, '') %}
dashboard-standalone:
file.managed:
- name: /opt/so/conf/grafana/grafana_dashboards/standalone/{{ SN }}-Standalone.json
- user: 939
- group: 939
- template: jinja
- source: salt://grafana/dashboards/standalone/standalone.json
- defaults:
SERVERNAME: {{ SN }}
MANINT: {{ SNDATA.manint }}
MONINT: {{ SNDATA.monint }}
CPUS: {{ SNDATA.totalcpus }}
UID: so_overview
ROOTFS: {{ SNDATA.rootfs }}
NSMFS: {{ SNDATA.nsmfs }}
{% endfor %}
{% endif %}
{% if salt['pillar.get']('sensorstab', False) %}
{% for SN, SNDATA in salt['pillar.get']('sensorstab', {}).items() %}
{% set NODETYPE = SN.split('_')|last %}
{% set SN = SN | regex_replace('_' ~ NODETYPE, '') %}
dashboard-{{ SN }}:
file.managed:
- name: /opt/so/conf/grafana/grafana_dashboards/sensor_nodes/{{ SN }}-Sensor.json
- user: 939
- group: 939
- template: jinja
- source: salt://grafana/dashboards/sensor_nodes/sensor.json
- defaults:
SERVERNAME: {{ SN }}
MANINT: {{ SNDATA.manint }}
MONINT: {{ SNDATA.monint }}
CPUS: {{ SNDATA.totalcpus }}
UID: {{ SNDATA.guid }}
ROOTFS: {{ SNDATA.rootfs }}
NSMFS: {{ SNDATA.nsmfs }}
{% endfor %}
{% endif %}
{% if salt['pillar.get']('nodestab', False) %}
{% for SN, SNDATA in salt['pillar.get']('nodestab', {}).items() %}
{% set NODETYPE = SN.split('_')|last %}
{% set SN = SN | regex_replace('_' ~ NODETYPE, '') %}
dashboardsearch-{{ SN }}:
file.managed:
- name: /opt/so/conf/grafana/grafana_dashboards/search_nodes/{{ SN }}-Node.json
- user: 939
- group: 939
- template: jinja
- source: salt://grafana/dashboards/search_nodes/searchnode.json
- defaults:
SERVERNAME: {{ SN }}
MANINT: {{ SNDATA.manint }}
CPUS: {{ SNDATA.totalcpus }}
UID: {{ SNDATA.guid }}
ROOTFS: {{ SNDATA.rootfs }}
NSMFS: {{ SNDATA.nsmfs }}
{% endfor %}
{% endif %}
{% if salt['pillar.get']('evaltab', False) %}
{% for SN, SNDATA in salt['pillar.get']('evaltab', {}).items() %}
{% set NODETYPE = SN.split('_')|last %}
{% set SN = SN | regex_replace('_' ~ NODETYPE, '') %}
dashboard-{{ SN }}:
file.managed:
- name: /opt/so/conf/grafana/grafana_dashboards/eval/{{ SN }}-Node.json
- user: 939
- group: 939
- template: jinja
- source: salt://grafana/dashboards/eval/eval.json
- defaults:
SERVERNAME: {{ SN }}
MANINT: {{ SNDATA.manint }}
MONINT: {{ SNDATA.monint }}
CPUS: {{ SNDATA.totalcpus }}
UID: so_overview
ROOTFS: {{ SNDATA.rootfs }}
NSMFS: {{ SNDATA.nsmfs }}
{% endfor %}
{% endif %}
so-grafana:
docker_container.running:
@@ -283,4 +141,4 @@ append_so-grafana_so-status.conf:
test.fail_without_changes:
- name: {{sls}}_state_not_allowed
{% endif %}
{% endif %}
@@ -0,0 +1,157 @@
{
"type": "graph",
"title": "Container CPU Usage Current",
"gridPos": {
"x": {{ PANELS.cpu_docker_combined_current_graph.gridPos.x }},
"y": {{ PANELS.cpu_docker_combined_current_graph.gridPos.y }},
"w": {{ PANELS.cpu_docker_combined_current_graph.gridPos.w }},
"h": {{ PANELS.cpu_docker_combined_current_graph.gridPos.h }}
},
"id": 100,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"container_name"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"usage_percent"
]
},
{
"type": "mean",
"params": []
},
{
"type": "math",
"params": [
" / $cpucount"
]
}
]
],
"measurement": "docker_container_cpu",
"alias": "$tag_container_name"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "percent",
"$$hashKey": "object:315"
},
{
"label": null,
"show": false,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:316"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": false,
"min": false,
"max": false,
"current": false,
"total": false,
"avg": false,
"alignAsTable": false,
"rightSide": false,
"hideZero": false
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"decimals": null,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,158 @@
{
"type": "graph",
"title": "Container CPU Usage Trend",
"gridPos": {
"x": {{ PANELS.cpu_docker_combined_trend_graph.gridPos.x }},
"y": {{ PANELS.cpu_docker_combined_trend_graph.gridPos.y }},
"w": {{ PANELS.cpu_docker_combined_trend_graph.gridPos.w }},
"h": {{ PANELS.cpu_docker_combined_trend_graph.gridPos.h }}
},
"id": 101,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "so_long_term",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"container_name"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"mean_usage_percent"
]
},
{
"type": "mean",
"params": []
},
{
"type": "math",
"params": [
" / $cpucount"
]
}
]
],
"measurement": "docker_container_cpu",
"alias": "$tag_container_name"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "percent",
"$$hashKey": "object:315"
},
{
"label": null,
"show": false,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:316"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": false,
"current": false,
"total": false,
"avg": true,
"alignAsTable": false,
"rightSide": false,
"hideZero": false
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"decimals": 1,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"description": "",
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,166 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"decimals": 1,
"fieldConfig": {
"defaults": {
"unit": "percent"
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.cpu_usage_current_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_current_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_current_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_current_graph.gridPos.h }}
},
"id": 69001,
"interval": "30",
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host $tag_role",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"host"
],
"type": "tag"
},
{
"type": "tag",
"params": [
"role"
]
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "cpu",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"usage_idle"
]
},
{
"type": "mean",
"params": []
},
{
"type": "math",
"params": [
"*-1 + 100"
]
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "cpu",
"operator": "=",
"value": "cpu-total"
}
]
}
],
"thresholds": [],
"timeRegions": [],
"title": "CPU Usage",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:933",
"format": "percent",
"label": null,
"logBase": 1,
"max": null,
"min": "0",
"show": true
},
{
"$$hashKey": "object:934",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"fill": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,135 @@
{
"cacheTimeout": null,
"colorBackground": false,
"colorValue": true,
"colors": [
"rgba(50, 172, 45, 0.97)",
"rgba(237, 129, 40, 0.89)",
"rgba(245, 54, 54, 0.9)"
],
"datasource": "InfluxDB",
"editable": true,
"error": false,
"format": "percent",
"gauge": {
"maxValue": 100,
"minValue": 0,
"show": true,
"thresholdLabels": false,
"thresholdMarkers": true
},
"gridPos": {
"x": {{ PANELS.cpu_usage_guage.gridPos.x }},
"y": {{ PANELS.cpu_usage_guage.gridPos.y }},
"w": {{ PANELS.cpu_usage_guage.gridPos.w }},
"h": {{ PANELS.cpu_usage_guage.gridPos.h }}
},
"height": "150",
"id": 9,
"interval": null,
"links": [],
"mappingType": 1,
"mappingTypes": [
{
"name": "value to text",
"value": 1
},
{
"name": "range to text",
"value": 2
}
],
"maxDataPoints": 100,
"nullPointMode": "connected",
"nullText": null,
"postfix": "",
"postfixFontSize": "50%",
"prefix": "",
"prefixFontSize": "50%",
"rangeMaps": [
{
"from": "null",
"text": "N/A",
"to": "null"
}
],
"sparkline": {
"fillColor": "rgba(31, 118, 189, 0.18)",
"full": false,
"lineColor": "rgb(31, 120, 193)",
"show": false
},
"tableColumn": "",
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "cpu",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"usage_idle"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"* -1 + 100"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "cpu",
"operator": "=",
"value": "cpu-total"
}
]
}
],
"thresholds": "70,80,90",
"title": "CPU usage",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
{
"op": "=",
"text": "N/A",
"value": "null"
}
],
"valueName": "current",
"fieldConfig": {
"defaults": {},
"overrides": []
}
}
@@ -0,0 +1,183 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_all_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_all_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_all_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_all_graph.gridPos.h }}
},
"id": 61871,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"hideZero": true,
"max": true,
"min": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:266",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(usage_user) as \"user\", mean(usage_system) as \"system\", mean(usage_softirq) as \"softirq\", mean(usage_steal) as \"steal\", mean(usage_nice) as \"nice\", mean(usage_irq) as \"irq\", mean(usage_iowait) as \"iowait\", mean(usage_guest) as \"guest\", mean(usage_guest_nice) as \"guest_nice\" FROM \"cpu\" WHERE \"host\" =~ /^$servername$/ and cpu = 'cpu-total' AND $timeFilter GROUP BY time($__interval), *",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "$tag_host: $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(mean_usage_user) as \"trend_user\", mean(mean_usage_system) as \"trend_system\", mean(mean_usage_softirq) as \"trend_softirq\", mean(mean_usage_steal) as \"trend_steal\", mean(mean_usage_nice) as \"trend_nice\", mean(mean_usage_irq) as \"trend_irq\", mean(mean_usage_iowait) as \"trend_iowait\", mean(mean_usage_guest) as \"trend_guest\", mean(mean_usage_guest_nice) as \"trend_guest_nice\" FROM \"so_long_term\".\"cpu\" WHERE \"host\" =~ /^$servername$/ and cpu = 'cpu-total' AND $timeFilter GROUP BY time($__interval), *",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [],
"hide": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "CPU Usage",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:202",
"decimals": null,
"format": "percent",
"label": null,
"logBase": 1,
"max": "100",
"min": "0",
"show": true
},
{
"$$hashKey": "object:203",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Blocked",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_blocked_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_blocked_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_blocked_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_blocked_graph.gridPos.h }}
},
"id": 69005,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(blocked) as blocked FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Paging",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_paging_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_paging_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_paging_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_paging_graph.gridPos.h }}
},
"id": 69008,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(paging) as paging FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Running",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_running_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_running_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_running_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_running_graph.gridPos.h }}
},
"id": 69003,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(running) as running FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Sleeping",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_sleeping_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_sleeping_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_sleeping_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_sleeping_graph.gridPos.h }}
},
"id": 69006,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(sleeping) as sleeping FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Stopped",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_stopped_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_stopped_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_stopped_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_stopped_graph.gridPos.h }}
},
"id": 69007,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(stopped) as stopped FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Unknown",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_unknown_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_unknown_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_unknown_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_unknown_graph.gridPos.h }}
},
"id": 69009,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(unknown) as unknown FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"type": "graph",
"title": "CPU Tasks Zombies",
"gridPos": {
"x": {{ PANELS.cpu_usage_tasks_zombies_graph.gridPos.x }},
"y": {{ PANELS.cpu_usage_tasks_zombies_graph.gridPos.y }},
"w": {{ PANELS.cpu_usage_tasks_zombies_graph.gridPos.w }},
"h": {{ PANELS.cpu_usage_tasks_zombies_graph.gridPos.h }}
},
"id": 69004,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(zombies) as zombies FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host, role ORDER BY asc",
"rawQuery": true,
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "short",
"$$hashKey": "object:412"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:413"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,194 @@
{
"aliasColors": {},
"maxDataPoints": 750,
"interval": "30s",
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"x": {{ PANELS.disk_io_bytes_graph.gridPos.x }},
"y": {{ PANELS.disk_io_bytes_graph.gridPos.y }},
"w": {{ PANELS.disk_io_bytes_graph.gridPos.w }},
"h": {{ PANELS.disk_io_bytes_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 60200,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"links": [],
"maxPerRow": 6,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 5,
"points": false,
"renderer": "flot",
"repeat": null,
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [{
"alias": "$tag_host: $tag_name: $col",
"dsType": "influxdb",
"function": "mean",
"groupBy": [{
"interval": "auto",
"params": [
"auto"
],
"type": "time"
},
{
"key": "host",
"params": [
"tag"
],
"type": "tag"
},
{
"key": "path",
"params": [
"tag"
],
"type": "tag"
}
],
"measurement": "io_reads",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE \"host\" =~ /$servername$/ AND \"name\" =~ /$disk$/ AND $timeFilter GROUP BY time($__interval), *",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "$tag_host: $tag_name: $col",
"dsType": "influxdb",
"function": "mean",
"groupBy": [{
"interval": "auto",
"params": [
"auto"
],
"type": "time"
},
{
"key": "host",
"params": [
"tag"
],
"type": "tag"
},
{
"key": "path",
"params": [
"tag"
],
"type": "tag"
}
],
"measurement": "io_reads",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE \"host\" =~ /$servername$/ AND \"name\" =~ /$disk$/ AND $timeFilter GROUP BY time($__interval), *",
"rawQuery": true,
"refId": "C",
"resultFormat": "time_series",
"select": [
[{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Disk I/O bytes for /dev/$disk",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [{
"format": "bytes",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,193 @@
{
"aliasColors": {},
"maxDataPoints": 750,
"interval": "30s",
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"x": {{ PANELS.disk_io_requests_graph.gridPos.x }},
"y": {{ PANELS.disk_io_requests_graph.gridPos.y }},
"w": {{ PANELS.disk_io_requests_graph.gridPos.w }},
"h": {{ PANELS.disk_io_requests_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 13782,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"links": [],
"maxPerRow": 6,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 5,
"points": false,
"renderer": "flot",
"repeat": null,
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [{
"alias": "$tag_host: $tag_name: $col",
"dsType": "influxdb",
"function": "mean",
"groupBy": [{
"interval": "auto",
"params": [
"auto"
],
"type": "time"
},
{
"key": "host",
"params": [
"tag"
],
"type": "tag"
},
{
"key": "path",
"params": [
"tag"
],
"type": "tag"
}
],
"measurement": "io_reads",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(reads),1s) as \"read\" FROM \"diskio\" WHERE \"host\" =~ /$servername$/ AND \"name\" =~ /$disk$/ AND $timeFilter GROUP BY time($__interval), *",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "$tag_host: $tag_name: $col",
"dsType": "influxdb",
"function": "mean",
"groupBy": [{
"interval": "auto",
"params": [
"auto"
],
"type": "time"
},
{
"key": "host",
"params": [
"tag"
],
"type": "tag"
},
{
"key": "path",
"params": [
"tag"
],
"type": "tag"
}
],
"measurement": "io_reads",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(writes),1s) as \"write\" FROM \"diskio\" WHERE \"host\" =~ /$servername$/ AND \"name\" =~ /$disk$/ AND $timeFilter GROUP BY time($__interval), *",
"rawQuery": true,
"refId": "C",
"resultFormat": "time_series",
"select": [
[{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Disk I/O requests for /dev/$disk",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [{
"format": "iops",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,193 @@
{
"aliasColors": {},
"maxDataPoints": 750,
"interval": "30s",
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"x": {{ PANELS.disk_io_time_graph.gridPos.x }},
"y": {{ PANELS.disk_io_time_graph.gridPos.y }},
"w": {{ PANELS.disk_io_time_graph.gridPos.w }},
"h": {{ PANELS.disk_io_time_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 56720,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"links": [],
"maxPerRow": 6,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 5,
"points": false,
"renderer": "flot",
"repeat": null,
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [{
"alias": "$tag_host: $tag_name: $col",
"dsType": "influxdb",
"function": "mean",
"groupBy": [{
"interval": "auto",
"params": [
"auto"
],
"type": "time"
},
{
"key": "host",
"params": [
"tag"
],
"type": "tag"
},
{
"key": "path",
"params": [
"tag"
],
"type": "tag"
}
],
"measurement": "io_reads",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(read_time),1s) as \"read\" FROM \"diskio\" WHERE \"host\" =~ /$servername$/ AND \"name\" =~ /$disk$/ AND $timeFilter GROUP BY time($__interval), *",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "$tag_host: $tag_name: $col",
"dsType": "influxdb",
"function": "mean",
"groupBy": [{
"interval": "auto",
"params": [
"auto"
],
"type": "time"
},
{
"key": "host",
"params": [
"tag"
],
"type": "tag"
},
{
"key": "path",
"params": [
"tag"
],
"type": "tag"
}
],
"measurement": "io_reads",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(write_time),1s) as \"write\" FROM \"diskio\" WHERE \"host\" =~ /$servername$/ AND \"name\" =~ /$disk$/ AND $timeFilter GROUP BY time($__interval), *",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Disk I/O time for /dev/$disk",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [{
"format": "ms",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,186 @@
{
"type": "graph",
"title": "Disk Usage /nsm",
"gridPos": {
"x": {{ PANELS.disk_usage_nsm_graph.gridPos.x }},
"y": {{ PANELS.disk_usage_nsm_graph.gridPos.y }},
"w": {{ PANELS.disk_usage_nsm_graph.gridPos.w }},
"h": {{ PANELS.disk_usage_nsm_graph.gridPos.h }}
},
"id": 68888,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(total) AS \"total\", mean(used) as \"used\" FROM \"disk\" WHERE \"host\" =~ /$servername$/ AND \"path\" = '/nsm' AND $timeFilter GROUP BY time($__interval), \"host\", \"path\"",
"rawQuery": true,
"alias": "$tag_host: mountpoint $tag_path - $col"
},
{
"refId": "B",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(mean_total) AS \"trend_total\", mean(mean_used) as \"trend_used\" FROM \"so_long_term\".\"disk\" WHERE \"host\" =~ /$servername$/ AND \"path\" = '/nsm' AND $timeFilter GROUP BY time($__interval), \"host\", \"path\"",
"rawQuery": true,
"alias": "$tag_host: mountpoint $tag_path - $col",
"hide": false
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": "0",
"max": null,
"format": "bytes",
"$$hashKey": "object:235"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:236"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": true,
"current": true,
"total": false,
"avg": true,
"alignAsTable": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:486",
"alias": "/total/",
"fill": 0,
"linewidth": 2,
"color": "#C4162A",
"zindex": 3
},
{
"$$hashKey": "object:829",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"thresholds": [],
"timeRegions": [],
"steppedLine": true,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,161 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.disk_usage_nsm_percent_graph.gridPos.x }},
"y": {{ PANELS.disk_usage_nsm_percent_graph.gridPos.y }},
"w": {{ PANELS.disk_usage_nsm_percent_graph.gridPos.w }},
"h": {{ PANELS.disk_usage_nsm_percent_graph.gridPos.h }}
},
"id": 47230,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"steppedLine": true,
"targets": [
{
"alias": "$tag_host $tag_role",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"type": "tag",
"params": [
"host"
]
},
{
"type": "tag",
"params": [
"role"
]
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(total) AS \"total\", mean(used) as \"used\" FROM \"disk\" WHERE \"host\" =~ /$servername$/ AND \"path\" = '/nsm' AND $timeFilter GROUP BY time($__interval), \"host\", \"path\"",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"used_percent"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "path",
"operator": "=",
"value": "/nsm"
}
],
"measurement": "disk"
}
],
"thresholds": [],
"timeRegions": [],
"title": "Disk Usage /nsm",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:235",
"format": "percent",
"label": "",
"logBase": 1,
"max": "100",
"min": "0",
"show": true,
"decimals": 1
},
{
"$$hashKey": "object:236",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"fill": 0,
"bars": false,
"dashes": false,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"timeFrom": null,
"timeShift": null,
"decimals": 1
}
@@ -0,0 +1,186 @@
{
"type": "graph",
"title": "Disk Usage /",
"gridPos": {
"x": {{ PANELS.disk_usage_root_graph.gridPos.x }},
"y": {{ PANELS.disk_usage_root_graph.gridPos.y }},
"w": {{ PANELS.disk_usage_root_graph.gridPos.w }},
"h": {{ PANELS.disk_usage_root_graph.gridPos.h }}
},
"id": 61880,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(total) AS \"total\", mean(used) as \"used\" FROM \"disk\" WHERE \"host\" =~ /$servername$/ AND \"path\" = '/' AND $timeFilter GROUP BY time($__interval), \"host\", \"path\"",
"rawQuery": true,
"alias": "$tag_host: mountpoint $tag_path - $col"
},
{
"refId": "B",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT mean(mean_total) AS \"trend_total\", mean(mean_used) as \"trend_used\" FROM \"so_long_term\".\"disk\" WHERE \"host\" =~ /$servername$/ AND \"path\" = '/' AND $timeFilter GROUP BY time($__interval), \"host\", \"path\"",
"rawQuery": true,
"alias": "$tag_host: mountpoint $tag_path - $col",
"hide": false
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": "0",
"max": null,
"format": "bytes",
"$$hashKey": "object:235"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:236"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": true,
"current": true,
"total": false,
"avg": true,
"alignAsTable": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:486",
"alias": "/total/",
"fill": 0,
"linewidth": 2,
"color": "#C4162A",
"zindex": 3
},
{
"$$hashKey": "object:829",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"thresholds": [],
"timeRegions": [],
"steppedLine": true,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,161 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.disk_usage_root_percent_graph.gridPos.x }},
"y": {{ PANELS.disk_usage_root_percent_graph.gridPos.y }},
"w": {{ PANELS.disk_usage_root_percent_graph.gridPos.w }},
"h": {{ PANELS.disk_usage_root_percent_graph.gridPos.h }}
},
"id": 67830,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"steppedLine": true,
"targets": [
{
"alias": "$tag_host $tag_role",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"type": "tag",
"params": [
"host"
]
},
{
"type": "tag",
"params": [
"role"
]
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(total) AS \"total\", mean(used) as \"used\" FROM \"disk\" WHERE \"host\" =~ /$servername$/ AND \"path\" = '/' AND $timeFilter GROUP BY time($__interval), \"host\", \"path\"",
"queryType": "randomWalk",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"used_percent"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "path",
"operator": "=",
"value": "/"
}
],
"measurement": "disk"
}
],
"thresholds": [],
"timeRegions": [],
"title": "Disk Usage /",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:235",
"format": "percent",
"label": "",
"logBase": 1,
"max": "100",
"min": "0",
"show": true,
"decimals": 1
},
{
"$$hashKey": "object:236",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"fill": 0,
"bars": false,
"dashes": false,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"timeFrom": null,
"timeShift": null,
"decimals": 1
}
@@ -0,0 +1,193 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.elasticsearch_document_count_graph.gridPos.x }},
"y": {{ PANELS.elasticsearch_document_count_graph.gridPos.y }},
"w": {{ PANELS.elasticsearch_document_count_graph.gridPos.w }},
"h": {{ PANELS.elasticsearch_document_count_graph.gridPos.h }}
},
"id": 33,
"links": [],
"maxDataPoints": 750,
"nullPointMode": "connected",
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "elasticsearch_indices",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"docs_count"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
],
"alias": "Document Count Current"
},
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "elasticsearch_indices",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_docs_count"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
],
"alias": "Document Count Trend",
"hide": false
}
],
"thresholds": [],
"title": "Document Count",
"type": "graph",
"options": {
"alertThreshold": true
},
"interval": "30s",
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:678"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:679"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": false,
"current": true,
"total": false,
"avg": false,
"alignAsTable": true,
"rightSide": false
},
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:1050",
"alias": "/Trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"timeRegions": [],
"cacheTimeout": null,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,191 @@
{
"aliasColors": {},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.elasticsearch_field_data_cache_size_graph.gridPos.x }},
"y": {{ PANELS.elasticsearch_field_data_cache_size_graph.gridPos.y }},
"w": {{ PANELS.elasticsearch_field_data_cache_size_graph.gridPos.w }},
"h": {{ PANELS.elasticsearch_field_data_cache_size_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 6363,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Size Current",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "elasticsearch_indices",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"fielddata_memory_size_in_bytes"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
},
{
"alias": "Size Trend",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "elasticsearch_indices",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_fielddata_memory_size_in_bytes"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Fielddata Cache Size",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "decbytes",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,195 @@
{
"aliasColors": {},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"cacheTimeout": null,
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.elasticsearch_store_size_graph.gridPos.x }},
"y": {{ PANELS.elasticsearch_store_size_graph.gridPos.y }},
"w": {{ PANELS.elasticsearch_store_size_graph.gridPos.w }},
"h": {{ PANELS.elasticsearch_store_size_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 63442,
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"hideEmpty": true,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"links": [],
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Size Current",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "elasticsearch_indices",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"store_size_in_bytes"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
},
{
"alias": "Size Trend",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "elasticsearch_indices",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_store_size_in_bytes"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Store Size",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "decbytes",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,192 @@
{
"aliasColors": {},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.elasticsearch_thread_count_graph.gridPos.x }},
"y": {{ PANELS.elasticsearch_thread_count_graph.gridPos.y }},
"w": {{ PANELS.elasticsearch_thread_count_graph.gridPos.w }},
"h": {{ PANELS.elasticsearch_thread_count_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 56565,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Count Current",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "elasticsearch_jvm",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"threads_count"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
},
{
"alias": "Count Trend",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "elasticsearch_jvm",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_threads_count"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Thread Count",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"decimals": 0,
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,191 @@
{
"aliasColors": {},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.influxdb_db_size_graph.gridPos.x }},
"y": {{ PANELS.influxdb_db_size_graph.gridPos.y }},
"w": {{ PANELS.influxdb_db_size_graph.gridPos.w }},
"h": {{ PANELS.influxdb_db_size_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 69,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Size Current",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "influxsize",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"kbytes"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
},
{
"alias": "Size Trend",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "influxsize",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_kbytes"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "InfluxDB Database Size",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "deckbytes",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,155 @@
{
"type": "graph",
"title": "IO Wait",
"gridPos": {
"x": {{ PANELS.io_wait_graph.gridPos.x }},
"y": {{ PANELS.io_wait_graph.gridPos.y }},
"w": {{ PANELS.io_wait_graph.gridPos.w }},
"h": {{ PANELS.io_wait_graph.gridPos.h }}
},
"id": 69011,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "cpu",
"operator": "=",
"value": "cpu-total"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"host"
]
},
{
"type": "tag",
"params": [
"role"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"usage_iowait"
]
},
{
"type": "mean",
"params": []
}
]
],
"measurement": "cpu",
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": "0",
"max": null,
"format": "percent",
"$$hashKey": "object:1740"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:1741"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"decimals": 1,
"description": ""
}
+122
View File
@@ -0,0 +1,122 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-green",
"value": null
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": 40
},
{
"color": "dark-red",
"value": 50
}
]
},
"mappings": [
{
"op": "=",
"text": "N/A",
"value": "null",
"$$hashKey": "object:1217",
"id": 0,
"type": 1
}
],
"unit": "percent",
"decimals": 2,
"color": {
"mode": "thresholds"
}
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.io_wait_stat.gridPos.x }},
"y": {{ PANELS.io_wait_stat.gridPos.y }},
"w": {{ PANELS.io_wait_stat.gridPos.w }},
"h": {{ PANELS.io_wait_stat.gridPos.h }}
},
"id": 61867,
"links": [],
"maxDataPoints": 100,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "cpu",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(\"usage_iowait\"), 1s) FROM \"cpu\" WHERE (host =~ /$servername$/ AND \"cpu\" = 'cpu-total') AND $timeFilter GROUP BY time($interval) fill(null)",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"usage_iowait"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "cpu",
"operator": "=",
"value": "cpu-total"
}
],
"orderByTime": "ASC"
}
],
"title": "IOWait",
"type": "stat",
"options": {
"reduceOptions": {
"values": false,
"calcs": [
"lastNotNull"
],
"fields": ""
},
"orientation": "horizontal",
"text": {},
"textMode": "auto",
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto"
},
"cacheTimeout": null,
"interval": null,
"pluginVersion": "7.5.4"
}
@@ -0,0 +1,113 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(50, 172, 45, 0.97)",
"value": "$cpucount / 2"
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": "$cpucount / 1.5"
},
{
"color": "rgba(245, 54, 54, 0.9)",
"value": "$cpucount"
}
]
},
"mappings": [
{
"op": "=",
"text": "N/A",
"value": "null",
"id": 0,
"type": 2
}
],
"unit": "none",
"decimals": 1,
"color": {
"mode": "thresholds"
}
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.load_average_5_minute_stat.gridPos.x }},
"y": {{ PANELS.load_average_5_minute_stat.gridPos.y }},
"w": {{ PANELS.load_average_5_minute_stat.gridPos.w }},
"h": {{ PANELS.load_average_5_minute_stat.gridPos.h }}
},
"id": 61859,
"links": [],
"maxDataPoints": 100,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "system",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"load5"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
}
]
}
],
"title": "5 Minute Load Average - $cpucount Cores",
"type": "stat",
"options": {
"reduceOptions": {
"values": false,
"calcs": [
"lastNotNull"
],
"fields": ""
},
"orientation": "horizontal",
"text": {},
"textMode": "auto",
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto"
},
"pluginVersion": "7.5.4",
"cacheTimeout": null,
"interval": null
}
@@ -0,0 +1,180 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.load_averages_graph.gridPos.x }},
"y": {{ PANELS.load_averages_graph.gridPos.y }},
"w": {{ PANELS.load_averages_graph.gridPos.w }},
"h": {{ PANELS.load_averages_graph.gridPos.h }}
},
"id": 61869,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:364",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(load1) as \"1 minute\", mean(load5) as \"5 minutes\", mean(load15) as \"15 minutes\" FROM \"system\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), * ORDER BY asc",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "$tag_host: $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(mean_load1) as \"trend_1 minute\", mean(mean_load5) as \"trend_5 minutes\", mean(mean_load15) as \"trend_15 minutes\" FROM \"so_long_term\".\"system\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), * ORDER BY asc",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [],
"hide": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "Load Averages - $cpucount Cores",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:287",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:288",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"fill": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,192 @@
{
"aliasColors": {},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"description": "",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.logstash_estimated_eps_graph.gridPos.x }},
"y": {{ PANELS.logstash_estimated_eps_graph.gridPos.y }},
"w": {{ PANELS.logstash_estimated_eps_graph.gridPos.w }},
"h": {{ PANELS.logstash_estimated_eps_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 76,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "EPS Current",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "consumptioneps",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"eps"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
},
{
"alias": "EPS Trend",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "consumptioneps",
"orderByTime": "ASC",
"policy": "so_long_term",
"queryType": "randomWalk",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_eps"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Estimated EPS",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": "EPS",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,112 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-red",
"value": null
},
{
"value": 1,
"color": "dark-green"
}
]
},
"mappings": [
{
"op": "=",
"text": "N/A",
"value": "null",
"$$hashKey": "object:730",
"id": 0,
"type": 1
}
],
"unit": "short",
"decimals": 0,
"color": {
"mode": "thresholds"
}
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.logstash_estimated_eps_stat.gridPos.x }},
"y": {{ PANELS.logstash_estimated_eps_stat.gridPos.y }},
"w": {{ PANELS.logstash_estimated_eps_stat.gridPos.w }},
"h": {{ PANELS.logstash_estimated_eps_stat.gridPos.h }}
},
"id": 23,
"interval": "30s",
"links": [],
"maxDataPoints": 750,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "consumptioneps",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"eps"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"title": "Estimated EPS",
"type": "stat",
"options": {
"reduceOptions": {
"values": false,
"calcs": [
"lastNotNull"
],
"fields": ""
},
"orientation": "horizontal",
"text": {},
"textMode": "value",
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto"
},
"cacheTimeout": null,
"pluginVersion": "7.5.4",
"timeFrom": null
}
@@ -0,0 +1,263 @@
{
"type": "graph",
"title": "Management Interface Drops",
"gridPos": {
"x": {{ PANELS.management_interface_drops_graph.gridPos.x }},
"y": {{ PANELS.management_interface_drops_graph.gridPos.y }},
"w": {{ PANELS.management_interface_drops_graph.gridPos.w }},
"h": {{ PANELS.management_interface_drops_graph.gridPos.h }}
},
"id": 61877,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(drop_in), 1s) as \"in\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "B",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(drop_out), 1s) as \"out\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "C",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_drop_in), 1s) as \"trend_in\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col",
"hide": false
},
{
"refId": "D",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_drop_out), 1s) as \"trend_out\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": "Drops per second",
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "pps",
"$$hashKey": "object:500"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:501"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": true,
"current": true,
"total": false,
"avg": true,
"alignAsTable": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:592",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
},
{
"$$hashKey": "object:621",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"thresholds": [],
"timeRegions": [],
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"decimals": 0,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,143 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.management_interface_drops_inbound_graph.gridPos.x }},
"y": {{ PANELS.management_interface_drops_inbound_graph.gridPos.y }},
"w": {{ PANELS.management_interface_drops_inbound_graph.gridPos.w }},
"h": {{ PANELS.management_interface_drops_inbound_graph.gridPos.h }}
},
"id": 61877,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:592",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $tag_role",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(drop_in), 1s) as \"in\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), host,role fill(none)",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeRegions": [],
"title": "Management Interface Drops - Inbound",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:500",
"format": "pps",
"label": "Drops per second",
"logBase": 1,
"max": null,
"min": 0,
"show": true
},
{
"$$hashKey": "object:501",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true,
"decimals": 0
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"fill": 0,
"bars": false,
"dashes": false,
"decimals": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,143 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.management_interface_drops_outbound_graph.gridPos.x }},
"y": {{ PANELS.management_interface_drops_outbound_graph.gridPos.y }},
"w": {{ PANELS.management_interface_drops_outbound_graph.gridPos.w }},
"h": {{ PANELS.management_interface_drops_outbound_graph.gridPos.h }}
},
"id": 188189,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:592",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $tag_role",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(drop_out), 1s) as \"out\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), host,role fill(none)",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeRegions": [],
"title": "Management Interface Drops - Outbound",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:500",
"format": "pps",
"label": "Drops per second",
"logBase": 1,
"max": null,
"min": 0,
"show": true
},
{
"$$hashKey": "object:501",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true,
"decimals": 0
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"fill": 0,
"bars": false,
"dashes": false,
"decimals": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,262 @@
{
"type": "graph",
"title": "Management Interface Packets",
"gridPos": {
"x": {{ PANELS.management_interface_packets_graph.gridPos.x }},
"y": {{ PANELS.management_interface_packets_graph.gridPos.y }},
"w": {{ PANELS.management_interface_packets_graph.gridPos.w }},
"h": {{ PANELS.management_interface_packets_graph.gridPos.h }}
},
"id": 61875,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(packets_recv), 1s) as \"in\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "B",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(packets_sent), 1s) as \"out\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "C",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_packets_recv), 1s) as \"trend_in\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col",
"hide": false
},
{
"refId": "D",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_packets_sent), 1s) as \"trend_out\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$manint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": "Packets per second",
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "pps",
"$$hashKey": "object:241"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:242"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": true,
"current": true,
"total": false,
"avg": true,
"alignAsTable": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:413",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
},
{
"$$hashKey": "object:442",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"thresholds": [],
"timeRegions": [],
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,357 @@
{
"aliasColors": {
"InBound": "#629E51",
"OutBound": "#5195CE",
"net.non_negative_derivative": "super-light-blue"
},
"maxDataPoints": 750,
"interval": "30s",
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.management_interface_traffic_both_graph.gridPos.x }},
"y": {{ PANELS.management_interface_traffic_both_graph.gridPos.y }},
"w": {{ PANELS.management_interface_traffic_both_graph.gridPos.w }},
"h": {{ PANELS.management_interface_traffic_both_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 18,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Inbound Current",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$manint"
}
]
},
{
"alias": "Outbound Current",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_sent"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$manint"
}
]
},
{
"alias": "Inbound Trend",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "net",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "C",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$manint"
}
]
},
{
"alias": "Outbound Trend",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "net",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "D",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_bytes_sent"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$manint"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Management Interface Traffic - $manint",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "bps",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,182 @@
{
"aliasColors": {
"InBound": "#629E51",
"OutBound": "#5195CE",
"net.non_negative_derivative": "super-light-blue"
},
"dashLength": 10,
"datasource": "InfluxDB",
"decimals": 1,
"editable": true,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.management_interface_traffic_inbound_graph.gridPos.x }},
"y": {{ PANELS.management_interface_traffic_inbound_graph.gridPos.y }},
"w": {{ PANELS.management_interface_traffic_inbound_graph.gridPos.w }},
"h": {{ PANELS.management_interface_traffic_inbound_graph.gridPos.h }}
},
"id": 18,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 2,
"links": [],
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 5,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host $tag_role",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"host"
],
"type": "tag"
},
{
"params": [
"role"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(\"bytes_recv\"), 1s) *8 FROM \"net\" WHERE (\"host\" = '$servername' AND \"interface\" = '$manint') AND $timeFilter GROUP BY time($__interval) fill(null)",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "interface",
"operator": "=~",
"value": "/^$manint$/"
}
]
}
],
"thresholds": [],
"timeRegions": [],
"title": "Management Interface Traffic - Inbound",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 2,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:353",
"decimals": 1,
"format": "bps",
"logBase": 1,
"max": null,
"min": 0,
"show": true
},
{
"$$hashKey": "object:354",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"error": false,
"fill": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,180 @@
{
"aliasColors": {
"InBound": "#629E51",
"OutBound": "#5195CE",
"net.non_negative_derivative": "super-light-blue"
},
"dashLength": 10,
"datasource": "InfluxDB",
"decimals": 1,
"editable": true,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.management_interface_traffic_outbound_graph.gridPos.x }},
"y": {{ PANELS.management_interface_traffic_outbound_graph.gridPos.y }},
"w": {{ PANELS.management_interface_traffic_outbound_graph.gridPos.w }},
"h": {{ PANELS.management_interface_traffic_outbound_graph.gridPos.h }}
},
"id": 69014,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 2,
"links": [],
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 5,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host $tag_role",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"host"
],
"type": "tag"
},
{
"params": [
"role"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_sent"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "interface",
"operator": "=~",
"value": "/^$manint$/"
}
]
}
],
"thresholds": [],
"timeRegions": [],
"title": "Management Interface Traffic - Outbound",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 2,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:353",
"decimals": 1,
"format": "bps",
"logBase": 1,
"max": null,
"min": 0,
"show": true
},
{
"$$hashKey": "object:354",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"error": false,
"fill": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,187 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.memory_usage_graph.gridPos.x }},
"y": {{ PANELS.memory_usage_graph.gridPos.y }},
"w": {{ PANELS.memory_usage_graph.gridPos.w }},
"h": {{ PANELS.memory_usage_graph.gridPos.h }}
},
"id": 61873,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:295",
"alias": "/total/",
"color": "#C4162A",
"fill": 0
},
{
"$$hashKey": "object:164",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(total) as total, mean(used) as used, mean(cached) as cached, mean(free) as free, mean(buffered) as buffered FROM \"mem\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host ORDER BY asc",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "$tag_host: $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(mean_total) as trend_total, mean(mean_used) as trend_used, mean(mean_cached) as trend_cached, mean(mean_free) as trend_free, mean(mean_buffered) as trend_buffered FROM \"so_long_term\".\"mem\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host ORDER BY asc",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [],
"hide": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "Memory Usage",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:235",
"format": "bytes",
"label": null,
"logBase": 1,
"max": null,
"min": "0",
"show": true
},
{
"$$hashKey": "object:236",
"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,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,149 @@
{
"type": "graph",
"title": "Memory Usage",
"gridPos": {
"x": {{ PANELS.memory_usage_percent_graph.gridPos.x }},
"y": {{ PANELS.memory_usage_percent_graph.gridPos.y }},
"w": {{ PANELS.memory_usage_percent_graph.gridPos.w }},
"h": {{ PANELS.memory_usage_percent_graph.gridPos.h }}
},
"id": 69013,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"host"
]
},
{
"type": "tag",
"params": [
"role"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"used_percent"
]
},
{
"type": "mean",
"params": []
}
]
],
"measurement": "mem",
"alias": "$tag_host $tag_role"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": "0",
"max": null,
"format": "percent",
"$$hashKey": "object:504"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:505"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"decimals": 1,
"fill": 0,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"description": ""
}
@@ -0,0 +1,151 @@
{
"type": "graph",
"title": "Container Memory Usage Current",
"gridPos": {
"x": {{ PANELS.memory_used_docker_combined_current_graph.gridPos.x }},
"y": {{ PANELS.memory_used_docker_combined_current_graph.gridPos.y }},
"w": {{ PANELS.memory_used_docker_combined_current_graph.gridPos.w }},
"h": {{ PANELS.memory_used_docker_combined_current_graph.gridPos.h }}
},
"id": 102,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"container_name"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"usage_percent"
]
},
{
"type": "mean",
"params": []
}
]
],
"measurement": "docker_container_mem",
"alias": "$tag_container_name"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "percent",
"$$hashKey": "object:315"
},
{
"label": null,
"show": false,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:316"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": false,
"min": false,
"max": false,
"current": false,
"total": false,
"avg": false,
"alignAsTable": false,
"rightSide": false,
"hideZero": false
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"decimals": null,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,151 @@
{
"type": "graph",
"title": "Container Memory Usage Trend",
"gridPos": {
"x": {{ PANELS.memory_used_docker_combined_trend_graph.gridPos.x }},
"y": {{ PANELS.memory_used_docker_combined_trend_graph.gridPos.y }},
"w": {{ PANELS.memory_used_docker_combined_trend_graph.gridPos.w }},
"h": {{ PANELS.memory_used_docker_combined_trend_graph.gridPos.h }}
},
"id": 103,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "so_long_term",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "tag",
"params": [
"container_name"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"mean_usage_percent"
]
},
{
"type": "mean",
"params": []
}
]
],
"measurement": "docker_container_mem",
"alias": "$tag_container_name"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "percent",
"$$hashKey": "object:315"
},
{
"label": null,
"show": false,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:316"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": false,
"current": false,
"total": false,
"avg": true,
"alignAsTable": false,
"rightSide": false,
"hideZero": false
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 2
},
"aliasColors": {},
"seriesOverrides": [],
"thresholds": [],
"timeRegions": [],
"decimals": 1,
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,263 @@
{
"type": "graph",
"title": "Monitor Interface Drops",
"gridPos": {
"x": {{ PANELS.monitor_interface_drops_graph.gridPos.x }},
"y": {{ PANELS.monitor_interface_drops_graph.gridPos.y }},
"w": {{ PANELS.monitor_interface_drops_graph.gridPos.w }},
"h": {{ PANELS.monitor_interface_drops_graph.gridPos.h }}
},
"id": 61387,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(drop_in), 1s) as \"in\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "B",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(drop_out), 1s) as \"out\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "C",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_drop_in), 1s) as \"trend_in\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col",
"hide": false
},
{
"refId": "D",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_drop_out), 1s) as \"trend_out\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), host,interface fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": "Drops per second",
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "pps",
"$$hashKey": "object:500"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:501"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": true,
"current": true,
"total": false,
"avg": true,
"alignAsTable": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:592",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
},
{
"$$hashKey": "object:621",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"thresholds": [],
"timeRegions": [],
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"decimals": 0,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,141 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.monitor_interface_drops_inbound_graph.gridPos.x }},
"y": {{ PANELS.monitor_interface_drops_inbound_graph.gridPos.y }},
"w": {{ PANELS.monitor_interface_drops_inbound_graph.gridPos.w }},
"h": {{ PANELS.monitor_interface_drops_inbound_graph.gridPos.h }}
},
"id": 188190,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": false,
"min": false,
"show": true,
"total": false,
"values": true,
"rightSide": true
},
"lines": true,
"linewidth": 1,
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:592",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $tag_role",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(drop_in), 1s) as \"in\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), host,role fill(none)",
"queryType": "randomWalk",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeRegions": [],
"title": "Monitor Interface Drops - Inbound",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:500",
"format": "pps",
"label": "Drops per second",
"logBase": 1,
"max": null,
"min": 0,
"show": true
},
{
"$$hashKey": "object:501",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true,
"decimals": 0
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"fill": 0,
"bars": false,
"dashes": false,
"decimals": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,262 @@
{
"type": "graph",
"title": "Monitor Interface Packets",
"gridPos": {
"x": {{ PANELS.monitor_interface_packets_graph.gridPos.x }},
"y": {{ PANELS.monitor_interface_packets_graph.gridPos.y }},
"w": {{ PANELS.monitor_interface_packets_graph.gridPos.w }},
"h": {{ PANELS.monitor_interface_packets_graph.gridPos.h }}
},
"id": 61878,
"targets": [
{
"refId": "A",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(packets_recv), 1s) as \"in\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "B",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(packets_sent), 1s) as \"out\" FROM \"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
},
{
"refId": "C",
"queryType": "randomWalk",
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_packets_recv), 1s) as \"trend_in\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col",
"hide": false
},
{
"refId": "D",
"hide": false,
"policy": "default",
"resultFormat": "time_series",
"orderByTime": "ASC",
"tags": [],
"groupBy": [
{
"type": "time",
"params": [
"$__interval"
]
},
{
"type": "fill",
"params": [
"null"
]
}
],
"select": [
[
{
"type": "field",
"params": [
"value"
]
},
{
"type": "mean",
"params": []
}
]
],
"query": "SELECT non_negative_derivative(mean(mean_packets_sent), 1s) as \"trend_out\" FROM \"so_long_term\".\"net\" WHERE host =~ /$servername/ AND interface =~ /$monint/ AND $timeFilter GROUP BY time($__interval), * fill(none)",
"rawQuery": true,
"alias": "$tag_host: $tag_interface: $col"
}
],
"options": {
"alertThreshold": true
},
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"pluginVersion": "7.5.4",
"renderer": "flot",
"yaxes": [
{
"label": "Packets per second",
"show": true,
"logBase": 1,
"min": 0,
"max": null,
"format": "pps",
"$$hashKey": "object:241"
},
{
"label": null,
"show": true,
"logBase": 1,
"min": null,
"max": null,
"format": "short",
"$$hashKey": "object:242"
}
],
"xaxis": {
"show": true,
"mode": "time",
"name": null,
"values": [],
"buckets": null
},
"yaxis": {
"align": false,
"alignLevel": null
},
"lines": true,
"fill": 1,
"linewidth": 1,
"dashLength": 10,
"spaceLength": 10,
"pointradius": 2,
"legend": {
"show": true,
"values": true,
"min": false,
"max": true,
"current": true,
"total": false,
"avg": true,
"alignAsTable": true
},
"nullPointMode": "connected",
"tooltip": {
"value_type": "individual",
"shared": true,
"sort": 0
},
"aliasColors": {},
"seriesOverrides": [
{
"$$hashKey": "object:413",
"alias": "/veth/",
"hiddenSeries": true,
"legend": false
},
{
"$$hashKey": "object:442",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"thresholds": [],
"timeRegions": [],
"fillGradient": 0,
"dashes": false,
"hiddenSeries": false,
"points": false,
"bars": false,
"stack": false,
"percentage": false,
"steppedLine": false,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,232 @@
{
"aliasColors": {
"InBound": "#629E51",
"OutBound": "#5195CE",
"net.non_negative_derivative": "light-orange"
},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.monitor_interface_traffic_both_graph.gridPos.x }},
"y": {{ PANELS.monitor_interface_traffic_both_graph.gridPos.y }},
"w": {{ PANELS.monitor_interface_traffic_both_graph.gridPos.w }},
"h": {{ PANELS.monitor_interface_traffic_both_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 10,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Inbound Current",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$monint"
}
]
},
{
"alias": "Inbound Trend",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "net",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$monint"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Monitor Interface Traffic - $monint",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "bps",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,182 @@
{
"aliasColors": {
"InBound": "#629E51",
"OutBound": "#5195CE",
"net.non_negative_derivative": "super-light-blue"
},
"dashLength": 10,
"datasource": "InfluxDB",
"decimals": 1,
"editable": true,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.monitor_interface_traffic_inbound_graph.gridPos.x }},
"y": {{ PANELS.monitor_interface_traffic_inbound_graph.gridPos.y }},
"w": {{ PANELS.monitor_interface_traffic_inbound_graph.gridPos.w }},
"h": {{ PANELS.monitor_interface_traffic_inbound_graph.gridPos.h }}
},
"id": 188188,
"interval": "30s",
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 2,
"links": [],
"maxDataPoints": 750,
"nullPointMode": "connected",
"options": {
"alertThreshold": false
},
"pluginVersion": "7.5.4",
"pointradius": 5,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host $tag_role",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"host"
],
"type": "tag"
},
{
"params": [
"role"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT non_negative_derivative(mean(\"bytes_recv\"), 1s) *8 FROM \"net\" WHERE (\"host\" = '$servername' AND \"interface\" = '$monint') AND $timeFilter GROUP BY time($__interval) fill(null)",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "mean"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "interface",
"operator": "=~",
"value": "/^$monint$/"
}
]
}
],
"thresholds": [],
"timeRegions": [],
"title": "Monitor Interface Traffic - Inbound",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 2,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:353",
"decimals": 1,
"format": "bps",
"logBase": 1,
"max": null,
"min": 0,
"show": true
},
{
"$$hashKey": "object:354",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"error": false,
"fill": 0,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null
}
@@ -0,0 +1,132 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(245, 54, 54, 0.9)",
"value": null
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": 0.5
},
{
"color": "rgba(50, 172, 45, 0.97)",
"value": 3
}
]
},
"mappings": [
{
"op": "=",
"text": "N/A",
"value": "null",
"$$hashKey": "object:645",
"id": 0,
"type": 1
}
],
"unit": "bps",
"decimals": 2,
"color": {
"mode": "thresholds"
}
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.monitor_interface_traffic_stat.gridPos.x }},
"y": {{ PANELS.monitor_interface_traffic_stat.gridPos.y }},
"w": {{ PANELS.monitor_interface_traffic_stat.gridPos.w }},
"h": {{ PANELS.monitor_interface_traffic_stat.gridPos.h }}
},
"id": 24,
"links": [],
"maxDataPoints": 100,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "net",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"bytes_recv"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"*8"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
},
{
"condition": "AND",
"key": "interface",
"operator": "=",
"value": "$monint"
}
]
}
],
"title": "Monitor Traffic - $monint",
"type": "stat",
"options": {
"reduceOptions": {
"values": false,
"calcs": [
"lastNotNull"
],
"fields": ""
},
"orientation": "horizontal",
"text": {},
"textMode": "value",
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto"
},
"cacheTimeout": null,
"interval": null,
"pluginVersion": "7.5.4"
}
@@ -0,0 +1,233 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.network_usage_docker_combined_current_graph.gridPos.x }},
"y": {{ PANELS.network_usage_docker_combined_current_graph.gridPos.y }},
"w": {{ PANELS.network_usage_docker_combined_current_graph.gridPos.w }},
"h": {{ PANELS.network_usage_docker_combined_current_graph.gridPos.h }}
},
"id": 61868,
"legend": {
"alignAsTable": false,
"avg": false,
"current": false,
"hideZero": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_container_name RX",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"container_name"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "docker_container_net",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"rx_bytes"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
},
{
"type": "math",
"params": [
"*8"
]
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
]
},
{
"alias": "$tag_container_name TX",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"container_name"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "docker_container_net",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"tx_bytes"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
},
{
"type": "math",
"params": [
"*8"
]
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
],
"hide": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "Container Network Usage Current",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:315",
"format": "bps",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:316",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"decimals": null,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"description": "",
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,233 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.network_usage_docker_combined_trend_graph.gridPos.x }},
"y": {{ PANELS.network_usage_docker_combined_trend_graph.gridPos.y }},
"w": {{ PANELS.network_usage_docker_combined_trend_graph.gridPos.w }},
"h": {{ PANELS.network_usage_docker_combined_trend_graph.gridPos.h }}
},
"id": 61461,
"legend": {
"alignAsTable": false,
"avg": false,
"current": false,
"hideZero": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 2,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_container_name RX",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"container_name"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "docker_container_net",
"orderByTime": "ASC",
"policy": "so_long_term",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"mean_rx_bytes"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
},
{
"type": "math",
"params": [
"*8"
]
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
]
},
{
"alias": "$tag_container_name TX",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"container_name"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "docker_container_net",
"orderByTime": "ASC",
"policy": "so_long_term",
"queryType": "randomWalk",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"mean_tx_bytes"
]
},
{
"type": "mean",
"params": []
},
{
"type": "non_negative_derivative",
"params": [
"1s"
]
},
{
"type": "math",
"params": [
"*8"
]
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "container_name",
"operator": "=~",
"value": "/^$containers$/"
}
],
"hide": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "Container Network Usage Trend",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:315",
"format": "bps",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:316",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"decimals": null,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"description": "",
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,131 @@
{
"colorValue": true,
"colors": [
"rgba(50, 172, 45, 0.97)",
"rgba(237, 129, 40, 0.89)",
"rgba(245, 54, 54, 0.9)"
],
"datasource": "InfluxDB",
"editable": true,
"format": "percent",
"gauge": {
"maxValue": 100,
"minValue": 0,
"show": true,
"thresholdLabels": false,
"thresholdMarkers": true
},
"gridPos": {
"x": {{ PANELS.nsm_used_guage.gridPos.x }},
"y": {{ PANELS.nsm_used_guage.gridPos.y }},
"w": {{ PANELS.nsm_used_guage.gridPos.w }},
"h": {{ PANELS.nsm_used_guage.gridPos.h }}
},
"height": "150",
"id": 12,
"links": [],
"mappingType": 1,
"mappingTypes": [
{
"name": "value to text",
"value": 1
},
{
"name": "range to text",
"value": 2
}
],
"maxDataPoints": 100,
"nullPointMode": "connected",
"postfixFontSize": "50%",
"prefixFontSize": "50%",
"rangeMaps": [
{
"from": "null",
"text": "N/A",
"to": "null"
}
],
"sparkline": {
"fillColor": "rgba(31, 118, 189, 0.18)",
"full": false,
"lineColor": "rgb(31, 120, 193)",
"show": false
},
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "disk",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"used_percent"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "path",
"operator": "=",
"value": "/nsm"
}
],
"orderByTime": "ASC"
}
],
"thresholds": "85,95,100",
"title": "NSM used",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
{
"op": "=",
"text": "N/A",
"value": "null"
}
],
"valueName": "current",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"cacheTimeout": null,
"colorBackground": false,
"decimals": 0,
"error": false,
"interval": null,
"nullText": null,
"postfix": "",
"prefix": "",
"tableColumn": ""
}
@@ -0,0 +1,112 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
}
]
},
"mappings": [
{
"op": "=",
"text": "N/A",
"value": "null",
"$$hashKey": "object:1382",
"id": 0,
"type": 1
}
],
"unit": "d",
"decimals": 2,
"color": {
"mode": "thresholds"
}
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.pcap_retention_stat.gridPos.x }},
"y": {{ PANELS.pcap_retention_stat.gridPos.y }},
"w": {{ PANELS.pcap_retention_stat.gridPos.w }},
"h": {{ PANELS.pcap_retention_stat.gridPos.h }}
},
"id": 26,
"links": [],
"maxDataPoints": 100,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "pcapage",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"seconds"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"/86400"
],
"type": "math"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"title": "PCAP Retention",
"type": "stat",
"options": {
"reduceOptions": {
"values": false,
"calcs": [
"lastNotNull"
],
"fields": ""
},
"orientation": "horizontal",
"text": {},
"textMode": "value",
"colorMode": "value",
"graphMode": "none",
"justifyMode": "auto"
},
"cacheTimeout": null,
"interval": null,
"pluginVersion": "7.5.4"
}
@@ -0,0 +1,204 @@
{
"aliasColors": {},
"dashLength": 10,
"datasource": "InfluxDB",
"editable": true,
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"gridPos": {
"x": {{ PANELS.process_status_graph.gridPos.x }},
"y": {{ PANELS.process_status_graph.gridPos.y }},
"w": {{ PANELS.process_status_graph.gridPos.w }},
"h": {{ PANELS.process_status_graph.gridPos.h }}
},
"height": "350",
"id": 61852,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"hideZero": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"links": [],
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"pluginVersion": "7.5.4",
"pointradius": 5,
"renderer": "flot",
"seriesOverrides": [
{
"$$hashKey": "object:549",
"alias": "/trend/",
"fill": 0,
"linewidth": 4,
"dashes": true,
"dashLength": 4
}
],
"spaceLength": 10,
"targets": [
{
"alias": "$tag_host: $col",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "processes",
"policy": "default",
"query": "SELECT mean(running) as running, mean(blocked) as blocked, mean(sleeping) as sleeping, mean(stopped) as stopped, mean(zombies) as zombies, mean(paging) as paging, mean(unknown) as unknown FROM \"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host ORDER BY asc",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"blocked"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$server$/"
}
],
"orderByTime": "ASC"
},
{
"alias": "$tag_host: $col",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "processes",
"policy": "default",
"query": "SELECT mean(mean_running) as trend_running, mean(mean_blocked) as trend_blocked, mean(mean_sleeping) as trend_sleeping, mean(mean_stopped) as trend_stopped, mean(mean_zombies) as trend_zombies, mean(mean_paging) as trend_paging, mean(mean_unknown) as trend_unknown FROM \"so_long_term\".\"processes\" WHERE host =~ /$servername$/ AND $timeFilter GROUP BY time($__interval), host ORDER BY asc",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"blocked"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$server$/"
}
],
"orderByTime": "ASC",
"hide": false
}
],
"thresholds": [],
"timeRegions": [],
"title": "Process Status",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true,
"$$hashKey": "object:512"
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true,
"$$hashKey": "object:513"
}
],
"yaxis": {
"align": false,
"alignLevel": null
},
"bars": false,
"dashes": false,
"error": false,
"fillGradient": 0,
"hiddenSeries": false,
"percentage": false,
"points": false,
"stack": false,
"steppedLine": false,
"timeFrom": null,
"timeShift": null,
"maxDataPoints": 750,
"interval": "30s"
}
@@ -0,0 +1,123 @@
{
"cacheTimeout": null,
"colorBackground": false,
"colorValue": true,
"colors": [
"rgba(50, 172, 45, 0.97)",
"rgba(237, 129, 40, 0.89)",
"rgba(245, 54, 54, 0.9)"
],
"datasource": "InfluxDB",
"editable": true,
"error": false,
"format": "percent",
"gauge": {
"maxValue": 100,
"minValue": 0,
"show": true,
"thresholdLabels": false,
"thresholdMarkers": true
},
"gridPos": {
"x": {{ PANELS.ram_usage_guage.gridPos.x }},
"y": {{ PANELS.ram_usage_guage.gridPos.y }},
"w": {{ PANELS.ram_usage_guage.gridPos.w }},
"h": {{ PANELS.ram_usage_guage.gridPos.h }}
},
"height": "150",
"id": 61860,
"interval": null,
"links": [],
"mappingType": 1,
"mappingTypes": [
{
"name": "value to text",
"value": 1
},
{
"name": "range to text",
"value": 2
}
],
"maxDataPoints": 100,
"nullPointMode": "connected",
"nullText": null,
"postfix": "",
"postfixFontSize": "50%",
"prefix": "",
"prefixFontSize": "50%",
"rangeMaps": [
{
"from": "null",
"text": "N/A",
"to": "null"
}
],
"sparkline": {
"fillColor": "rgba(31, 118, 189, 0.18)",
"full": false,
"lineColor": "rgb(31, 120, 193)",
"show": false
},
"tableColumn": "",
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "mem",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"used_percent"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
}
]
}
],
"thresholds": "70,80,90",
"title": "RAM usage",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
{
"op": "=",
"text": "N/A",
"value": "null"
}
],
"valueName": "current",
"fieldConfig": {
"defaults": {},
"overrides": []
}
}
@@ -0,0 +1,192 @@
{
"aliasColors": {},
"bars": false,
"maxDataPoints": 750,
"interval": "30s",
"dashLength": 10,
"dashes": false,
"datasource": "InfluxDB",
"description": "",
"fieldConfig": {
"defaults": {
"links": []
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"x": {{ PANELS.redis_queue_graph.gridPos.x }},
"y": {{ PANELS.redis_queue_graph.gridPos.y }},
"w": {{ PANELS.redis_queue_graph.gridPos.w }},
"h": {{ PANELS.redis_queue_graph.gridPos.h }}
},
"hiddenSeries": false,
"id": 55,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"hideEmpty": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "connected",
"options": {
"alertThreshold": true
},
"percentage": false,
"pluginVersion": "7.5.4",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "/Trend/",
"dashLength": 4,
"dashes": true,
"fill": 0,
"linewidth": 4
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "Queue Current",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "redisqueue",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"unparsed"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
},
{
"alias": "Queue Trend",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "redisqueue",
"orderByTime": "ASC",
"policy": "so_long_term",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"mean_unparsed"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=",
"value": "$servername"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Redis Queue",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
@@ -0,0 +1,95 @@
{
"datasource": "InfluxDB",
"fieldConfig": {
"defaults": {
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
}
]
},
"mappings": [],
"color": {
"mode": "thresholds"
},
"unit": "short"
},
"overrides": []
},
"gridPos": {
"x": {{ PANELS.redis_queue_stat.gridPos.x }},
"y": {{ PANELS.redis_queue_stat.gridPos.y }},
"w": {{ PANELS.redis_queue_stat.gridPos.w }},
"h": {{ PANELS.redis_queue_stat.gridPos.h }}
},
"id": 68894,
"options": {
"reduceOptions": {
"values": false,
"calcs": [
"lastNotNull"
],
"fields": ""
},
"orientation": "auto",
"text": {},
"textMode": "auto",
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto"
},
"pluginVersion": "7.5.4",
"targets": [
{
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "redisqueue",
"orderByTime": "ASC",
"policy": "default",
"queryType": "randomWalk",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"type": "field",
"params": [
"unparsed"
]
},
{
"type": "last",
"params": []
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
}
]
}
],
"title": "Redis Unparsed Queue",
"type": "stat",
"timeFrom": null,
"timeShift": null,
"interval": "30s"
}
@@ -0,0 +1,131 @@
{
"colorValue": true,
"colors": [
"rgba(50, 172, 45, 0.97)",
"rgba(237, 129, 40, 0.89)",
"rgba(245, 54, 54, 0.9)"
],
"datasource": "InfluxDB",
"editable": true,
"format": "percent",
"gauge": {
"maxValue": 100,
"minValue": 0,
"show": true,
"thresholdLabels": false,
"thresholdMarkers": true
},
"gridPos": {
"x": {{ PANELS.rootfs_used_guage.gridPos.x }},
"y": {{ PANELS.rootfs_used_guage.gridPos.y }},
"w": {{ PANELS.rootfs_used_guage.gridPos.w }},
"h": {{ PANELS.rootfs_used_guage.gridPos.h }}
},
"height": "150",
"id": 61866,
"links": [],
"mappingType": 1,
"mappingTypes": [
{
"name": "value to text",
"value": 1
},
{
"name": "range to text",
"value": 2
}
],
"maxDataPoints": 100,
"nullPointMode": "connected",
"postfixFontSize": "50%",
"prefixFontSize": "50%",
"rangeMaps": [
{
"from": "null",
"text": "N/A",
"to": "null"
}
],
"sparkline": {
"fillColor": "rgba(31, 118, 189, 0.18)",
"full": false,
"lineColor": "rgb(31, 120, 193)",
"show": false
},
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "disk",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"used_percent"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$servername$/"
},
{
"condition": "AND",
"key": "path",
"operator": "=",
"value": "/"
}
],
"orderByTime": "ASC"
}
],
"thresholds": "70,80,90",
"title": "RootFS used",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
{
"op": "=",
"text": "N/A",
"value": "null"
}
],
"valueName": "current",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"cacheTimeout": null,
"colorBackground": false,
"decimals": 0,
"error": false,
"interval": null,
"nullText": null,
"postfix": "",
"prefix": "",
"tableColumn": ""
}
+15
View File
@@ -0,0 +1,15 @@
{
"collapsed": false,
"datasource": null,
"gridPos": {
"x": {{ PANELS.row_cpu.gridPos.x }},
"y": {{ PANELS.row_cpu.gridPos.y }},
"w": {{ PANELS.row_cpu.gridPos.w }},
"h": {{ PANELS.row_cpu.gridPos.h }}
},
"id": 2,
"panels": [],
"repeat": null,
"title": "CPU",
"type": "row"
}
@@ -0,0 +1,22 @@
{
"collapsed": false,
"datasource": null,
"gridPos": {
"x": {{ PANELS.row_disk_iops.gridPos.x }},
"y": {{ PANELS.row_disk_iops.gridPos.y }},
"w": {{ PANELS.row_disk_iops.gridPos.w }},
"h": {{ PANELS.row_disk_iops.gridPos.h }}
},
"id": 62055,
"panels": [],
"repeat": "disk",
"scopedVars": {
"disk": {
"selected": false,
"text": "sda",
"value": "sda"
}
},
"title": "Disk IOPS for /dev/$disk",
"type": "row"
}
@@ -0,0 +1,15 @@
{
"collapsed": false,
"datasource": null,
"gridPos": {
"x": {{ PANELS.row_disk_usage.gridPos.x }},
"y": {{ PANELS.row_disk_usage.gridPos.y }},
"w": {{ PANELS.row_disk_usage.gridPos.w }},
"h": {{ PANELS.row_disk_usage.gridPos.h }}
},
"id": 3333,
"panels": [],
"repeat": null,
"title": "Disk Usage",
"type": "row"
}
@@ -0,0 +1,15 @@
{
"collapsed": false,
"datasource": null,
"gridPos": {
"x": {{ PANELS.row_docker_details.gridPos.x }},
"y": {{ PANELS.row_docker_details.gridPos.y }},
"w": {{ PANELS.row_docker_details.gridPos.w }},
"h": {{ PANELS.row_docker_details.gridPos.h }}
},
"id": 4,
"panels": [],
"repeat": null,
"title": "Docker Details",
"type": "row"
}

Some files were not shown because too many files have changed in this diff Show More