Responses codes
This commit is contained in:
parent
659bbc5c83
commit
8990114eb3
52
knot_
Executable file
52
knot_
Executable file
@ -0,0 +1,52 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import yaml
|
||||||
|
from sys import argv
|
||||||
|
from os import getenv
|
||||||
|
|
||||||
|
|
||||||
|
def responses(stats, config):
|
||||||
|
'''
|
||||||
|
This will show what knot have responded.
|
||||||
|
'''
|
||||||
|
responses_stats = {}
|
||||||
|
if 'response-code' not in stats['mod-stats']:
|
||||||
|
responses_stats.update({'NOERROR': 0})
|
||||||
|
else:
|
||||||
|
for code in stats['mod-stats']['response-code']:
|
||||||
|
responses_stats.update(
|
||||||
|
{
|
||||||
|
code:
|
||||||
|
stats['mod-stats']['response-code'][code]
|
||||||
|
}
|
||||||
|
)
|
||||||
|
# Configure the plugin :
|
||||||
|
if config:
|
||||||
|
print("graph_title Knot responses")
|
||||||
|
print("graph_category dns")
|
||||||
|
print("graph_vlabel responses")
|
||||||
|
print("graph_args --base 1000 --lower-limit 0")
|
||||||
|
for code in responses_stats:
|
||||||
|
print(f"{code}.label {code}")
|
||||||
|
print(f"{code}.type DERIVE")
|
||||||
|
print(f"{code}.min 0")
|
||||||
|
else: # Send the values
|
||||||
|
for code in responses_stats:
|
||||||
|
print(f"{code}.value {responses_stats[code]}")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
# Retrieve datas :
|
||||||
|
file = getenv('stats_file_path')
|
||||||
|
with open(file, "r") as stats_file:
|
||||||
|
stats = yaml.safe_load(stats_file)
|
||||||
|
if len(argv) > 1 and argv[1] == "config":
|
||||||
|
config = True
|
||||||
|
else:
|
||||||
|
config = False
|
||||||
|
if "responses" in argv[0]:
|
||||||
|
responses(stats, config)
|
||||||
|
elif "proto" in argv[0]:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass # Nothing happens if no "munin underscore args"
|
1
knot_responses
Symbolic link
1
knot_responses
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
knot_
|
Loading…
Reference in New Issue
Block a user