Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python.d PEP 8 cleanup, modules D-H #4287

Merged
merged 12 commits into from Sep 26, 2018
26 changes: 18 additions & 8 deletions python.d/dns_query_time.chart.py
Expand Up @@ -4,18 +4,22 @@
# SPDX-License-Identifier: GPL-3.0+

from random import choice
from threading import Thread
from socket import getaddrinfo, gaierror
from threading import Thread

try:
from time import monotonic as time
except ImportError:
from time import time

try:
import dns.message, dns.query, dns.name
import dns.message
import dns.query
import dns.name
DNS_PYTHON = True
except ImportError:
DNS_PYTHON = False

try:
from queue import Queue
except ImportError:
Expand Down Expand Up @@ -118,8 +122,12 @@ def check_ns(ns):
def create_charts(aggregate, server_list):
if aggregate:
order = ['dns_group']
definitions = {'dns_group': {'options': [None, 'DNS Response Time', 'ms', 'name servers',
'dns_query_time.response_time', 'line'], 'lines': []}}
definitions = {
'dns_group': {
'options': [None, 'DNS Response Time', 'ms', 'name servers', 'dns_query_time.response_time', 'line'],
'lines': []
}
}
for ns in server_list:
definitions['dns_group']['lines'].append(['_'.join(['ns', ns.replace('.', '_')]), ns, 'absolute'])

Expand All @@ -128,8 +136,10 @@ def create_charts(aggregate, server_list):
order = [''.join(['dns_', ns.replace('.', '_')]) for ns in server_list]
definitions = dict()
for ns in server_list:
definitions[''.join(['dns_', ns.replace('.', '_')])] = {'options': [None, 'DNS Response Time', 'ms', ns,
'dns_query_time.response_time', 'area'],
'lines': [['_'.join(['ns', ns.replace('.', '_')]),
ns, 'absolute']]}
definitions[''.join(['dns_', ns.replace('.', '_')])] = {
'options': [None, 'DNS Response Time', 'ms', ns, 'dns_query_time.response_time', 'area'],
'lines': [
['_'.join(['ns', ns.replace('.', '_')]), ns, 'absolute']
]
}
return order, definitions
213 changes: 122 additions & 91 deletions python.d/dnsdist.chart.py
@@ -1,102 +1,133 @@
# -*- coding: utf-8 -*-
# SPDX-License-Identifier: GPL-3.0+

from json import loads

from bases.FrameworkServices.UrlService import UrlService

ORDER = ['queries', 'queries_dropped', 'packets_dropped', 'answers', 'backend_responses', 'backend_commerrors', 'backend_errors', 'cache', 'servercpu', 'servermem', 'query_latency', 'query_latency_avg']

ORDER = [
'queries',
'queries_dropped',
'packets_dropped',
'answers',
'backend_responses',
'backend_commerrors',
'backend_errors',
'cache',
'servercpu',
'servermem',
'query_latency',
'query_latency_avg'
]


CHARTS = {
'queries': {
'options': [None, 'Client queries received', 'queries/s', 'queries', 'dnsdist.queries', 'line'],
'lines': [
['queries', 'all', 'incremental'],
['rdqueries', 'recursive', 'incremental'],
['empty-queries', 'empty', 'incremental']
]},
'queries_dropped': {
'options': [None, 'Client queries dropped', 'queries/s', 'queries', 'dnsdist.queries_dropped', 'line'],
'lines': [
['rule-drop', 'rule drop', 'incremental'],
['dyn-blocked', 'dynamic block', 'incremental'],
['no-policy', 'no policy', 'incremental'],
['noncompliant-queries', 'non compliant', 'incremental']
]},
'packets_dropped': {
'options': [None, 'Packets dropped', 'packets/s', 'packets', 'dnsdist.packets_dropped', 'line'],
'lines': [
['acl-drops', 'acl', 'incremental']
]},
'answers': {
'options': [None, 'Answers statistics', 'answers/s', 'answers', 'dnsdist.answers', 'line'],
'lines': [
['self-answered', 'self answered', 'incremental'],
['rule-nxdomain', 'nxdomain', 'incremental', -1],
['rule-refused', 'refused', 'incremental', -1],
['trunc-failures', 'trunc failures', 'incremental', -1]
]},
'backend_responses': {
'options': [None, 'Backend responses', 'responses/s', 'backends', 'dnsdist.backend_responses', 'line'],
'lines': [
['responses', 'responses', 'incremental']
]},
'backend_commerrors': {
'options': [None, 'Backend Communication Errors', 'errors/s', 'backends', 'dnsdist.backend_commerrors', 'line'],
'lines': [
['downstream-send-errors', 'send errors', 'incremental']
]},
'backend_errors': {
'options': [None, 'Backend error responses', 'responses/s', 'backends', 'dnsdist.backend_errors', 'line'],
'lines': [
['downstream-timeouts', 'timeout', 'incremental'],
['servfail-responses', 'servfail', 'incremental'],
['noncompliant-responses', 'non compliant', 'incremental']
]},
'cache': {
'options': [None, 'Cache performance', 'answers/s', 'cache', 'dnsdist.cache', 'area'],
'lines': [
['cache-hits', 'hits', 'incremental'],
['cache-misses', 'misses', 'incremental', -1]
]},
'servercpu': {
'options': [None, 'DNSDIST server CPU utilization', 'ms/s', 'server', 'dnsdist.servercpu', 'stacked'],
'lines': [
['cpu-sys-msec', 'system state', 'incremental'],
['cpu-user-msec', 'user state', 'incremental']
]},
'servermem': {
'options': [None, 'DNSDIST server memory utilization', 'MB', 'server', 'dnsdist.servermem', 'area'],
'lines': [
['real-memory-usage', 'memory usage', 'absolute', 1, 1048576]
]},
'query_latency': {
'options': [None, 'Query latency', 'queries/s', 'latency', 'dnsdist.query_latency', 'stacked'],
'lines': [
['latency0-1', '1ms', 'incremental'],
['latency1-10', '10ms', 'incremental'],
['latency10-50', '50ms', 'incremental'],
['latency50-100', '100ms', 'incremental'],
['latency100-1000', '1sec', 'incremental'],
['latency-slow', 'slow', 'incremental']
]},
'query_latency_avg': {
'options': [None, 'Average latency for the last N queries', 'ms/query', 'latency', 'dnsdist.query_latency_avg', 'line'],
'lines': [
['latency-avg100', '100', 'absolute'],
['latency-avg1000', '1k', 'absolute'],
['latency-avg10000', '10k', 'absolute'],
['latency-avg1000000', '1000k', 'absolute']
]}
'queries': {
'options': [None, 'Client queries received', 'queries/s', 'queries', 'dnsdist.queries', 'line'],
'lines': [
['queries', 'all', 'incremental'],
['rdqueries', 'recursive', 'incremental'],
['empty-queries', 'empty', 'incremental']
]
},
'queries_dropped': {
'options': [None, 'Client queries dropped', 'queries/s', 'queries', 'dnsdist.queries_dropped', 'line'],
'lines': [
['rule-drop', 'rule drop', 'incremental'],
['dyn-blocked', 'dynamic block', 'incremental'],
['no-policy', 'no policy', 'incremental'],
['noncompliant-queries', 'non compliant', 'incremental']
]
},
'packets_dropped': {
'options': [None, 'Packets dropped', 'packets/s', 'packets', 'dnsdist.packets_dropped', 'line'],
'lines': [
['acl-drops', 'acl', 'incremental']
]
},
'answers': {
'options': [None, 'Answers statistics', 'answers/s', 'answers', 'dnsdist.answers', 'line'],
'lines': [
['self-answered', 'self answered', 'incremental'],
['rule-nxdomain', 'nxdomain', 'incremental', -1],
['rule-refused', 'refused', 'incremental', -1],
['trunc-failures', 'trunc failures', 'incremental', -1]
]
},
'backend_responses': {
'options': [None, 'Backend responses', 'responses/s', 'backends', 'dnsdist.backend_responses', 'line'],
'lines': [
['responses', 'responses', 'incremental']
]
},
'backend_commerrors': {
'options': [None, 'Backend Communication Errors', 'errors/s', 'backends', 'dnsdist.backend_commerrors', 'line'],
'lines': [
['downstream-send-errors', 'send errors', 'incremental']
]
},
'backend_errors': {
'options': [None, 'Backend error responses', 'responses/s', 'backends', 'dnsdist.backend_errors', 'line'],
'lines': [
['downstream-timeouts', 'timeout', 'incremental'],
['servfail-responses', 'servfail', 'incremental'],
['noncompliant-responses', 'non compliant', 'incremental']
]
},
'cache': {
'options': [None, 'Cache performance', 'answers/s', 'cache', 'dnsdist.cache', 'area'],
'lines': [
['cache-hits', 'hits', 'incremental'],
['cache-misses', 'misses', 'incremental', -1]
]
},
'servercpu': {
'options': [None, 'DNSDIST server CPU utilization', 'ms/s', 'server', 'dnsdist.servercpu', 'stacked'],
'lines': [
['cpu-sys-msec', 'system state', 'incremental'],
['cpu-user-msec', 'user state', 'incremental']
]
},
'servermem': {
'options': [None, 'DNSDIST server memory utilization', 'MB', 'server', 'dnsdist.servermem', 'area'],
'lines': [
['real-memory-usage', 'memory usage', 'absolute', 1, 1048576]
]
},
'query_latency': {
'options': [None, 'Query latency', 'queries/s', 'latency', 'dnsdist.query_latency', 'stacked'],
'lines': [
['latency0-1', '1ms', 'incremental'],
['latency1-10', '10ms', 'incremental'],
['latency10-50', '50ms', 'incremental'],
['latency50-100', '100ms', 'incremental'],
['latency100-1000', '1sec', 'incremental'],
['latency-slow', 'slow', 'incremental']
]
},
'query_latency_avg': {
'options': [None, 'Average latency for the last N queries', 'ms/query', 'latency',
'dnsdist.query_latency_avg', 'line'],
'lines': [
['latency-avg100', '100', 'absolute'],
['latency-avg1000', '1k', 'absolute'],
['latency-avg10000', '10k', 'absolute'],
['latency-avg1000000', '1000k', 'absolute']
]
}
}

class Service(UrlService):
def __init__(self, configuration=None, name=None):
UrlService.__init__(self, configuration=configuration, name=name)
self.order = ORDER
self.definitions = CHARTS

def _get_data(self):
data = self._get_raw_data()
if not data:
return None
class Service(UrlService):
def __init__(self, configuration=None, name=None):
UrlService.__init__(self, configuration=configuration, name=name)
self.order = ORDER
self.definitions = CHARTS

return loads(data)
def _get_data(self):
data = self._get_raw_data()
if not data:
return None

return loads(data)
10 changes: 6 additions & 4 deletions python.d/dockerd.chart.py
Expand Up @@ -24,19 +24,22 @@

CHARTS = {
'running_containers': {
'options': [None, 'Number of running containers', 'running containers', 'running containers', 'docker.running_containers', 'line'],
'options': [None, 'Number of running containers', 'running containers', 'running containers',
'docker.running_containers', 'line'],
'lines': [
['running_containers', 'running']
]
},
'healthy_containers': {
'options': [None, 'Number of healthy containers', 'healthy containers', 'healthy containers', 'docker.healthy_containers', 'line'],
'options': [None, 'Number of healthy containers', 'healthy containers', 'healthy containers',
'docker.healthy_containers', 'line'],
'lines': [
['healthy_containers', 'healthy']
]
},
'unhealthy_containers': {
'options': [None, 'Number of unhealthy containers', 'unhealthy containers', 'unhealthy containers', 'docker.unhealthy_containers', 'line'],
'options': [None, 'Number of unhealthy containers', 'unhealthy containers', 'unhealthy containers',
'docker.unhealthy_containers', 'line'],
'lines': [
['unhealthy_containers', 'unhealthy']
]
Expand Down Expand Up @@ -72,4 +75,3 @@ def get_data(self):
data['unhealthy_containers'] = len(self.client.containers.list(filters={'health': 'unhealthy'}, sparse=True))

return data or None