1#!/usr/bin/env python
2
3from . import (
4 exposition, gc_collector, metrics, metrics_core, platform_collector,
5 process_collector, registry,
6)
7from .exposition import (
8 CONTENT_TYPE_LATEST, CONTENT_TYPE_PLAIN_0_0_4, CONTENT_TYPE_PLAIN_1_0_0,
9 delete_from_gateway, generate_latest, instance_ip_grouping_key,
10 make_asgi_app, make_wsgi_app, MetricsHandler, push_to_gateway,
11 pushadd_to_gateway, start_http_server, start_wsgi_server,
12 write_to_textfile,
13)
14from .gc_collector import GC_COLLECTOR, GCCollector
15from .metrics import (
16 Counter, disable_created_metrics, enable_created_metrics, Enum, Gauge,
17 Histogram, Info, Summary,
18)
19from .metrics_core import Metric
20from .platform_collector import PLATFORM_COLLECTOR, PlatformCollector
21from .process_collector import PROCESS_COLLECTOR, ProcessCollector
22from .registry import CollectorRegistry, REGISTRY
23
24__all__ = (
25 'CollectorRegistry',
26 'REGISTRY',
27 'Metric',
28 'Counter',
29 'Gauge',
30 'Summary',
31 'Histogram',
32 'Info',
33 'Enum',
34 'enable_created_metrics',
35 'disable_created_metrics',
36 'CONTENT_TYPE_LATEST',
37 'CONTENT_TYPE_PLAIN_0_0_4',
38 'CONTENT_TYPE_PLAIN_1_0_0',
39 'generate_latest',
40 'MetricsHandler',
41 'make_wsgi_app',
42 'make_asgi_app',
43 'start_http_server',
44 'start_wsgi_server',
45 'write_to_textfile',
46 'push_to_gateway',
47 'pushadd_to_gateway',
48 'delete_from_gateway',
49 'instance_ip_grouping_key',
50 'ProcessCollector',
51 'PROCESS_COLLECTOR',
52 'PlatformCollector',
53 'PLATFORM_COLLECTOR',
54 'GCCollector',
55 'GC_COLLECTOR',
56)
57
58if __name__ == '__main__':
59 c = Counter('cc', 'A counter')
60 c.inc()
61
62 g = Gauge('gg', 'A gauge')
63 g.set(17)
64
65 s = Summary('ss', 'A summary', ['a', 'b'])
66 s.labels('c', 'd').observe(17)
67
68 h = Histogram('hh', 'A histogram')
69 h.observe(.6)
70
71 start_http_server(8000)
72 import time
73
74 while True:
75 time.sleep(1)