Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions components/schemas/common/Capability.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,6 @@ enum:
- servers-provision
- servers-manage
- servers-view
- san-manage
- san-view

# Monitor
- monitor-manage
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
type: object
title: ServerTelemetryDeviceStats
description: Network interface counters for a single device, as reported by the kernel (/proc/net/dev). All counters are cumulative since boot.
required:
- name
- rx_bytes
- rx_packets
- rx_errors
- rx_drop
- rx_fifo
- rx_frame
- rx_compressed
- rx_multicast
- tx_bytes
- tx_packets
- tx_errors
- tx_drop
- tx_fifo
- tx_colls
- tx_carrier
- tx_compressed
properties:
name:
type: string
description: The name of the network interface (e.g. "eth0").
rx_bytes:
type: integer
format: int64
minimum: 0
description: Total bytes received.
rx_packets:
type: integer
format: int64
minimum: 0
description: Total packets received.
rx_errors:
type: integer
format: int64
minimum: 0
description: Total receive errors.
rx_drop:
type: integer
format: int64
minimum: 0
description: Total received packets dropped.
rx_fifo:
type: integer
format: int64
minimum: 0
description: Total receive FIFO buffer errors.
rx_frame:
type: integer
format: int64
minimum: 0
description: Total receive framing errors.
rx_compressed:
type: integer
format: int64
minimum: 0
description: Total compressed packets received.
rx_multicast:
type: integer
format: int64
minimum: 0
description: Total multicast packets received.
tx_bytes:
type: integer
format: int64
minimum: 0
description: Total bytes transmitted.
tx_packets:
type: integer
format: int64
minimum: 0
description: Total packets transmitted.
tx_errors:
type: integer
format: int64
minimum: 0
description: Total transmit errors.
tx_drop:
type: integer
format: int64
minimum: 0
description: Total transmitted packets dropped.
tx_fifo:
type: integer
format: int64
minimum: 0
description: Total transmit FIFO buffer errors.
tx_colls:
type: integer
format: int64
minimum: 0
description: Total collisions detected on the interface.
tx_carrier:
type: integer
format: int64
minimum: 0
description: Total transmit carrier losses.
tx_compressed:
type: integer
format: int64
minimum: 0
description: Total compressed packets transmitted.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
type: object
title: ServerTelemetryDisk
description: Disk telemetry for the server.
required:
- devices
properties:
devices:
type:
- object
- "null"
description: Per-device disk telemetry, keyed by device name.
additionalProperties:
$ref: ./ServerTelemetryDiskDevice.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
type: object
title: ServerTelemetryDiskDevice
description: Telemetry for a single disk device on the server.
required:
- name
- io
- usage
properties:
name:
type: string
description: The name of the disk device (e.g. "vda").
mount:

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if mount is not required it must be nullable

type: string
description: The filesystem mount point for the device.
io:
$ref: ./ServerTelemetryDiskIo.yml
description: Block-device I/O counters for the device.
usage:
$ref: ./ServerTelemetryDiskUsage.yml
description: Filesystem usage for the device.
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
type: object
title: ServerTelemetryDiskIo
description: Block-device I/O counters for a single disk device, as reported by the kernel (/proc/diskstats). All counters are cumulative since boot.
required:
- read_requests
- read_sectors
- read_time_ms
- write_requests
- write_sectors
- write_time_ms
- io_in_progress
- io_time_ms
properties:
read_requests:
type: integer
format: int64
minimum: 0
description: Total number of completed read requests.
read_sectors:
type: integer
format: int64
minimum: 0
description: Total number of sectors read. Multiply by 512 for bytes.
read_time_ms:
type: integer
format: int64
minimum: 0
description: Total time spent servicing read requests, in milliseconds.
write_requests:
type: integer
format: int64
minimum: 0
description: Total number of completed write requests.
write_sectors:
type: integer
format: int64
minimum: 0
description: Total number of sectors written. Multiply by 512 for bytes.
write_time_ms:
type: integer
format: int64
minimum: 0
description: Total time spent servicing write requests, in milliseconds.
io_in_progress:
type: integer
format: int64
minimum: 0
description: Number of I/O requests currently in progress.
io_time_ms:
type: integer
format: int64
minimum: 0
description: Total time spent performing I/O, in milliseconds.
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
type: object
title: ServerTelemetryDiskUsage
description: Filesystem usage for a single disk device. Reported as zero for devices without a mounted filesystem.
required:
- total_bytes
- free_bytes
- available_bytes
- used_percent
properties:
total_bytes:
type: integer
format: int64
minimum: 0
description: Total size of the filesystem, in bytes.
free_bytes:
type: integer
format: int64
minimum: 0
description: Free space on the filesystem, in bytes.
available_bytes:
type: integer
format: int64
minimum: 0
description: Free space accessible to unprivileged users, in bytes.
used_percent:
type: number
format: double
minimum: 0
description: Percentage of the filesystem currently in use.
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
type: object
title: ServerTelemetryLoadAvg
description: System load averages over the last 1, 5, and 15 minutes.
required:
- last_1_min
- last_5_min
- last_15_min
properties:
last_1_min:
type: number
format: double
minimum: 0
description: The system load average over the last 1 minute.
last_5_min:
type: number
format: double
minimum: 0
description: The system load average over the last 5 minutes.
last_15_min:
type: number
format: double
minimum: 0
description: The system load average over the last 15 minutes.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
type: object
title: ServerTelemetryNetwork
description: Network telemetry for the server.
required:
- devices
properties:
devices:
type:
- object
- "null"
description: Per-interface network counters, keyed by interface name.
additionalProperties:
$ref: ./ServerTelemetryDeviceStats.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
type: object
title: ServerTelemetryProcess
description: Telemetry for a single running process on the server.
required:
- pid
- cmdline
- fds
- stat
- io
properties:
pid:
type: integer
format: int64
minimum: 0
description: The process ID.
cmdline:
type: string
description: The full command line the process was started with.
fds:
$ref: ./ServerTelemetryProcessFds.yml
description: A breakdown of the file descriptors the process holds open.
stat:
$ref: ./ServerTelemetryProcessStats.yml
description: Scheduling and memory statistics for the process.
io:
$ref: ./ServerTelemetryProcessIo.yml
description: I/O accounting for the process.
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
type: object
title: ServerTelemetryProcessFds
description: A breakdown of the file descriptors held open by a process.
required:
- total
- files
- sockets
- pipes
- other
properties:
total:
type: integer
format: int64
description: Total number of open file descriptors.
files:
type: integer
format: int64
description: Number of descriptors referring to regular files.
sockets:
type: integer
format: int64
description: Number of descriptors referring to sockets.
pipes:
type: integer
format: int64
description: Number of descriptors referring to pipes.
other:
type: integer
format: int64
description: Number of descriptors of other types (e.g. epoll, eventfd, anonymous inodes).
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
type: object
title: ServerTelemetryProcessIo
description: I/O accounting for a process, as reported by the kernel (/proc/[pid]/io). All counters are cumulative over the life of the process.
required:
- rchar
- wchar
- syscr
- syscw
- read_bytes
- write_bytes
- cancelled_write_bytes
properties:
rchar:
type: integer
format: int64
minimum: 0
description: Bytes read by the process via read-like syscalls, whether or not they hit storage.
wchar:
type: integer
format: int64
minimum: 0
description: Bytes written by the process via write-like syscalls, whether or not they hit storage.
syscr:
type: integer
format: int64
minimum: 0
description: Number of read syscalls issued.
syscw:
type: integer
format: int64
minimum: 0
description: Number of write syscalls issued.
read_bytes:
type: integer
format: int64
minimum: 0
description: Bytes actually fetched from the storage layer.
write_bytes:
type: integer
format: int64
minimum: 0
description: Bytes actually sent to the storage layer.
cancelled_write_bytes:
type: integer
format: int64
minimum: 0
description: Bytes written but later truncated or cancelled before reaching storage.
Loading
Loading