ConstReader.poll()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 1
Metric Value
c 2
b 0
f 1
dl 0
loc 4
rs 10
cc 1
1
# -*- coding: utf-8 -*-
2
"""Reader plugins for testing."""
3
import os
4
import random
5
6
import plumd
7
8
__author__ = 'Kenny Freeman'
9
__email__ = '[email protected]'
10
__license__ = "ISCL"
11
__docformat__ = 'reStructuredText'
12
13
14
class RandReader(plumd.Reader):
15
    """Generates random measurements. For testing."""
16
17
    defaults = {
18
        'poll.interval': 10,
19
    }
20
21
    def poll(self):
22
        """Return random metrics."""
23
        metrics = [plumd.Int("N", random.randrange(2048))]
24
        return plumd.ResultSet([plumd.Result("const", metrics)])
25
26
27
class ConstReader(plumd.Reader):
28
    """Generates a constant value metric. For testing."""
29
30
    pid = os.getpid()
31
32
    def poll(self):
33
        """Return a const metric"""
34
        metrics = [plumd.Int("N", self.pid)]
35
        return plumd.ResultSet([plumd.Result("const_pid", metrics)])
36