orangeqs.juice.telegraf.schemas#

Pydantic schemas for Telegraf-written InfluxDB measurements.

These schemas mirror the measurements configured in orangeqs/juice/orchestration/templates/telegraf.conf.j2.

They are intended for querying Telegraf data via orangeqs.juice.database.Event. Only a stable subset of common Telegraf fields/tags is modeled; InfluxDB columns not present in a schema are dropped automatically by Event.query() / query_async().

Module Contents#

Classes#

TelegrafCpuEvent

Telegraf inputs.cpu measurement.

TelegrafDiskEvent

Telegraf inputs.disk measurement.

TelegrafDiskIoEvent

Telegraf inputs.diskio measurement.

TelegrafMemEvent

Telegraf inputs.mem measurement.

TelegrafProcessesEvent

Telegraf inputs.processes measurement.

TelegrafSwapEvent

Telegraf inputs.swap measurement.

TelegrafSystemEvent

Telegraf inputs.system measurement.

TelegrafSystemdUnitsEvent

Telegraf inputs.systemd_units measurement (units matching pattern).

PodmanStatsEvent

Telegraf inputs.exec (podman stats) measurement.

Data#

API#

class orangeqs.juice.telegraf.schemas.TelegrafCpuEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.cpu measurement.

measurement: ClassVar[str]#

‘cpu’

cpu: Annotated[str, tag] = <Multiline-String>#
usage_idle: float#

0.0

usage_user: float#

0.0

usage_system: float#

0.0

usage_iowait: float#

0.0

usage_irq: float#

0.0

usage_softirq: float#

0.0

usage_nice: float#

0.0

usage_guest: float#

0.0

usage_steal: float#

0.0

topic() str#

Return the topic cpu.

class orangeqs.juice.telegraf.schemas.TelegrafDiskEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.disk measurement.

measurement: ClassVar[str]#

‘disk’

path: Annotated[str, tag] = <Multiline-String>#
total: int#

0

free: int#

0

used: int#

0

used_percent: float#

0.0

inodes_total: int#

0

inodes_free: int#

0

inodes_used: int#

0

topic() str#

Return the topic disk.

class orangeqs.juice.telegraf.schemas.TelegrafDiskIoEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.diskio measurement.

measurement: ClassVar[str]#

‘diskio’

reads: int#

0

writes: int#

0

read_bytes: int#

0

write_bytes: int#

0

read_time: int#

0

write_time: int#

0

io_time: int#

0

weighted_io_time: int#

0

iops_in_progress: int#

0

topic() str#

Return the topic diskio.

class orangeqs.juice.telegraf.schemas.TelegrafMemEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.mem measurement.

measurement: ClassVar[str]#

‘mem’

total: int#

0

free: int#

0

used: int#

0

used_percent: float#

0.0

available: int#

0

available_percent: float#

0.0

buffers: int#

0

cached: int#

0

shared: int#

0

swap_total: int#

0

swap_free: int#

0

topic() str#

Return the topic mem.

class orangeqs.juice.telegraf.schemas.TelegrafProcessesEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.processes measurement.

measurement: ClassVar[str]#

‘processes’

total: int#

0

running: int#

0

sleeping: int#

0

stopped: int#

0

zombies: int#

0

dead: int#

0

paging: int#

0

blocked: int#

0

unknown: int#

0

topic() str#

Return the topic processes.

class orangeqs.juice.telegraf.schemas.TelegrafSwapEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.swap measurement.

measurement: ClassVar[str]#

‘swap’

total: int#

0

used: int#

0

free: int#

0

used_percent: float#

0.0

free_percent: float#

0.0

topic() str#

Return the topic swap.

class orangeqs.juice.telegraf.schemas.TelegrafSystemEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.system measurement.

measurement: ClassVar[str]#

‘system’

load1: float#

0.0

load5: float#

0.0

load15: float#

0.0

n_users: int#

0

n_cpus: int#

0

uptime: int#

0

host: str = <Multiline-String>#
topic() str#

Return the topic system.

class orangeqs.juice.telegraf.schemas.TelegrafSystemdUnitsEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.systemd_units measurement (units matching pattern).

measurement: ClassVar[str]#

‘systemd_units’

load: str = <Multiline-String>#
active: str = <Multiline-String>#
sub: str = <Multiline-String>#
topic() str#

Return the topic systemd_units.

class orangeqs.juice.telegraf.schemas.PodmanStatsEvent(/, **data: Any)#

Bases: orangeqs.juice.messaging.protocol.Event

Telegraf inputs.exec (podman stats) measurement.

measurement: ClassVar[str]#

‘podman_stats’

cpu_percent: float#

0.0

mem_percent: float#

0.0

mem_usage: str = <Multiline-String>#
block_io: str = <Multiline-String>#
cpu_time: str = <Multiline-String>#
id: str = <Multiline-String>#
net_io: str = <Multiline-String>#
pids: int#

0

db_name: Annotated[str, tag]#

‘Field(…)’

topic() str#

Return the topic podman_stats.

orangeqs.juice.telegraf.schemas.model_fn#

None