9
9
from . import exceptions
10
10
11
11
_LOGGER = logging .getLogger (__name__ )
12
- _INSTANCE = 'http://{host}:{port}/api/v{api}/'
13
- _DATA_ENDPOINT = 'data?chart={resource}&before=0&after=-1&options=seconds'
14
- _ALARMS_ENDPOINT = 'alarms?all&format=json'
15
- _ALL_METRIC_ENDPOINT = ('allmetrics?format=json&help=no&types=no&'
16
- 'timestamps=yes&names=yes&data=average' )
12
+ _INSTANCE = "http://{host}:{port}/api/v{api}/"
13
+ _DATA_ENDPOINT = "data?chart={resource}&before=0&after=-1&options=seconds"
14
+ _ALARMS_ENDPOINT = "alarms?all&format=json"
15
+ _ALL_METRIC_ENDPOINT = (
16
+ "allmetrics?format=json&help=no&types=no&" "timestamps=yes&names=yes&data=average"
17
+ )
17
18
18
19
API_VERSION = 1
19
20
@@ -31,41 +32,37 @@ def __init__(self, host, loop, session, port=19999, data=None):
31
32
self .base_url = _INSTANCE .format (host = host , port = port , api = API_VERSION )
32
33
if data is None :
33
34
self .endpoint = _ALL_METRIC_ENDPOINT
34
- if data == ' alarms' :
35
+ if data == " alarms" :
35
36
self .endpoint = _ALARMS_ENDPOINT
36
- if data == ' data' :
37
+ if data == " data" :
37
38
self .endpoint = _DATA_ENDPOINT
38
39
39
40
async def get_data (self , resource ):
40
41
"""Get detail for a resource from the data endpoint."""
41
- url = '{}{}' .format (
42
- self .base_url , self .endpoint .format (resource = resource ))
42
+ url = "{}{}" .format (self .base_url , self .endpoint .format (resource = resource ))
43
43
44
44
try :
45
45
with async_timeout .timeout (5 , loop = self ._loop ):
46
46
response = await self ._session .get (url )
47
47
48
- _LOGGER .info (
49
- "Response from Netdata: %s" , response .status )
48
+ _LOGGER .info ("Response from Netdata: %s" , response .status )
50
49
data = await response .json ()
51
50
_LOGGER .debug (data )
52
- self .values = {k : v for k , v in zip (
53
- data ['labels' ], data ['data' ][0 ])}
51
+ self .values = {k : v for k , v in zip (data ["labels" ], data ["data" ][0 ])}
54
52
55
53
except (asyncio .TimeoutError , aiohttp .ClientError , socket .gaierror ):
56
54
_LOGGER .error ("Can not load data from Netdata" )
57
55
raise exceptions .NetdataConnectionError ()
58
56
59
57
async def get_alarms (self ):
60
58
"""Get alarms for a Netdata instance."""
61
- url = ' {}{}' .format (self .base_url , self .endpoint )
59
+ url = " {}{}" .format (self .base_url , self .endpoint )
62
60
63
61
try :
64
62
with async_timeout .timeout (5 , loop = self ._loop ):
65
63
response = await self ._session .get (url )
66
64
67
- _LOGGER .debug (
68
- "Response from Netdata: %s" , response .status )
65
+ _LOGGER .debug ("Response from Netdata: %s" , response .status )
69
66
data = await response .text ()
70
67
_LOGGER .debug (data )
71
68
self .alarms = data
@@ -76,14 +73,13 @@ async def get_alarms(self):
76
73
77
74
async def get_allmetrics (self ):
78
75
"""Get all available metrics from a Netdata instance."""
79
- url = ' {}{}' .format (self .base_url , self .endpoint )
76
+ url = " {}{}" .format (self .base_url , self .endpoint )
80
77
81
78
try :
82
79
with async_timeout .timeout (5 , loop = self ._loop ):
83
80
response = await self ._session .get (url )
84
81
85
- _LOGGER .debug (
86
- "Response from Netdata: %s" , response .status )
82
+ _LOGGER .debug ("Response from Netdata: %s" , response .status )
87
83
data = await response .json ()
88
84
_LOGGER .debug (data )
89
85
self .metrics = data
0 commit comments