|
13 | 13 | # limitations under the License.
|
14 | 14 |
|
15 | 15 |
|
16 |
| -from typing import Callable, Final, Sequence |
| 16 | +from typing import ( |
| 17 | + Callable, |
| 18 | + Final, |
| 19 | + Generator, |
| 20 | + Iterable, |
| 21 | + Optional, |
| 22 | + Sequence, |
| 23 | + Union, |
| 24 | +) |
17 | 25 |
|
18 | 26 | from opentelemetry.metrics import (
|
| 27 | + CallbackOptions, |
19 | 28 | Counter,
|
20 | 29 | Meter,
|
21 | 30 | ObservableGauge,
|
| 31 | + Observation, |
22 | 32 | UpDownCounter,
|
23 | 33 | )
|
24 | 34 |
|
| 35 | +CallbackT = Union[ |
| 36 | + Callable[[CallbackOptions], Iterable[Observation]], |
| 37 | + Generator[Iterable[Observation], CallbackOptions, None], |
| 38 | +] |
25 | 39 | SYSTEM_CPU_FREQUENCY: Final = "system.cpu.frequency"
|
26 | 40 | """
|
27 | 41 | Reports the current frequency of the CPU in Hz
|
|
31 | 45 |
|
32 | 46 |
|
33 | 47 | def create_system_cpu_frequency(
|
34 |
| - meter: Meter, callback: Sequence[Callable] |
| 48 | + meter: Meter, callbacks: Optional[Sequence[CallbackT]] |
35 | 49 | ) -> ObservableGauge:
|
36 | 50 | """Reports the current frequency of the CPU in Hz"""
|
37 | 51 | return meter.create_observable_gauge(
|
38 | 52 | name="system.cpu.frequency",
|
39 |
| - callback=callback, |
| 53 | + callbacks=callbacks, |
40 | 54 | description="Reports the current frequency of the CPU in Hz",
|
41 | 55 | unit="{Hz}",
|
42 | 56 | )
|
@@ -102,12 +116,12 @@ def create_system_cpu_time(meter: Meter) -> Counter:
|
102 | 116 |
|
103 | 117 |
|
104 | 118 | def create_system_cpu_utilization(
|
105 |
| - meter: Meter, callback: Sequence[Callable] |
| 119 | + meter: Meter, callbacks: Optional[Sequence[CallbackT]] |
106 | 120 | ) -> ObservableGauge:
|
107 | 121 | """Difference in system.cpu.time since the last measurement, divided by the elapsed time and number of logical CPUs"""
|
108 | 122 | return meter.create_observable_gauge(
|
109 | 123 | name="system.cpu.utilization",
|
110 |
| - callback=callback, |
| 124 | + callbacks=callbacks, |
111 | 125 | description="Difference in system.cpu.time since the last measurement, divided by the elapsed time and number of logical CPUs",
|
112 | 126 | unit="1",
|
113 | 127 | )
|
@@ -225,11 +239,11 @@ def create_system_filesystem_usage(meter: Meter) -> UpDownCounter:
|
225 | 239 |
|
226 | 240 |
|
227 | 241 | def create_system_filesystem_utilization(
|
228 |
| - meter: Meter, callback: Sequence[Callable] |
| 242 | + meter: Meter, callbacks: Optional[Sequence[CallbackT]] |
229 | 243 | ) -> ObservableGauge:
|
230 | 244 | return meter.create_observable_gauge(
|
231 | 245 | name="system.filesystem.utilization",
|
232 |
| - callback=callback, |
| 246 | + callbacks=callbacks, |
233 | 247 | description="",
|
234 | 248 | unit="1",
|
235 | 249 | )
|
@@ -302,11 +316,11 @@ def create_system_memory_usage(meter: Meter) -> UpDownCounter:
|
302 | 316 |
|
303 | 317 |
|
304 | 318 | def create_system_memory_utilization(
|
305 |
| - meter: Meter, callback: Sequence[Callable] |
| 319 | + meter: Meter, callbacks: Optional[Sequence[CallbackT]] |
306 | 320 | ) -> ObservableGauge:
|
307 | 321 | return meter.create_observable_gauge(
|
308 | 322 | name="system.memory.utilization",
|
309 |
| - callback=callback, |
| 323 | + callbacks=callbacks, |
310 | 324 | description="",
|
311 | 325 | unit="1",
|
312 | 326 | )
|
@@ -456,11 +470,11 @@ def create_system_paging_usage(meter: Meter) -> UpDownCounter:
|
456 | 470 |
|
457 | 471 |
|
458 | 472 | def create_system_paging_utilization(
|
459 |
| - meter: Meter, callback: Sequence[Callable] |
| 473 | + meter: Meter, callbacks: Optional[Sequence[CallbackT]] |
460 | 474 | ) -> ObservableGauge:
|
461 | 475 | return meter.create_observable_gauge(
|
462 | 476 | name="system.paging.utilization",
|
463 |
| - callback=callback, |
| 477 | + callbacks=callbacks, |
464 | 478 | description="",
|
465 | 479 | unit="1",
|
466 | 480 | )
|
|
0 commit comments