1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
# -*- coding: utf-8 -*-
# Description: example netdata python.d module
# Author: Put your name here (your github login)
# SPDX-License-Identifier: GPL-3.0-or-later
from random import SystemRandom
from bases.FrameworkServices.SimpleService import SimpleService
priority = 90000
ORDER = [
'random',
]
CHARTS = {
'random': {
'options': [None, 'A random number', 'random number', 'random', 'random', 'line'],
'lines': [
['random1']
]
}
}
class Service(SimpleService):
def __init__(self, configuration=None, name=None):
SimpleService.__init__(self, configuration=configuration, name=name)
self.order = ORDER
self.definitions = CHARTS
self.random = SystemRandom()
self.num_lines = self.configuration.get('num_lines', 4)
self.lower = self.configuration.get('lower', 0)
self.upper = self.configuration.get('upper', 100)
@staticmethod
def check():
return True
def get_data(self):
data = dict()
for i in range(0, self.num_lines):
dimension_id = ''.join(['random', str(i)])
if dimension_id not in self.charts['random']:
self.charts['random'].add_dimension([dimension_id])
data[dimension_id] = self.random.randint(self.lower, self.upper)
return data
|