Status
  • 03 Dec 2024
  • 2 Minutes to read
  • Dark
    Light

Status

  • Dark
    Light

Article summary

To retrieve the set of all subsystems with current status use the API below

GET /1/status
Host: http://<gateway ip address or hostname>:8000

The response will be a list of subsystems that are reporting status. An example of the types of subsystems is show below

["netcam_AAKKnwSh_connectivity", "sensors", "devices", "media_upload", "media_storage_purge", "netcam_5G8r9Fyj_connectivity", "netcam_FPVMPQY_connectivity", "event", "netcam_QLWilnFM_connectivity", "gpus", "cpu", "media_storage_upload", "netcam_OFGHHZM_connectivity", "memory", "ifconfig", "netcam_triggers_t98D6t6C", "media_storage", "net", "upload", "software_versions", "post_urls", "netcam_NVFGXZT_connectivity", "netcam_9w3zTtp6_connectivity", "model_detections", "netcam_JNOPRQD_connectivity", "software_upgrade", "disk_smartctl", "netcam_rWj4C7MP_connectivity", "disk"]

GPU Status

To retrieve the status of a specific subsystem specify the system in the URL.

GET /1/status/gpus

An example response is shown below:

{"gateway_id": "quXmedVKp","subsystem": "gpus", "status": {"0": {"mem_total": 15109.0, "mem_used": 10674.0, "percent_used": 71, "temperature": 47.0, "utilization": 0.0}}, "timestamp": 1604363031.660875}

The status values of key subsystems are shown below:

GPU

Parameter

Value

Description

gateway_id
string

quXmedVKp

gateway identifier

subsystem
string

gpus

subsystem name

status
dict

Dictionary of GPU Ids, whose key is the GPU index (starting from 0) Each item in the dictionary has the following key-value pairs.

Subkey

mem_total

float

total amount of GPU memory for this GPU id

mem_used

float

memory currently used

percent_used

float

Percentage of memory currently used

temperature

float

degrees celcius

timestamp
float

Epoch timestamp of last repo

CPU Status

GET /1/status/cpu
{"gateway_id": "quXmedVKp", "subsystem": "cpu", "status": {"cpu_times_percent": {"softirq": 0.2, "iowait": 0.0, "system": 1.3, "idle": 88.6, "user": 9.9, "guest_nice": 0.0, "irq": 0.0, "nice": 0.0, "steal": 0.0, "guest": 0.0}, "cpu_freq": [4300.099, 4299.898, 2896.914, 898.407, 899.393, 956.451, 1176.516, 900.681, 900.006, 900.081, 900.074, 894.506], "cpu_percent": [7.8, 16.0, 3.8, 2.6, 9.1, 2.6, 68.8, 3.8, 2.6, 2.6, 9.1, 6.4], "cpu_stats": {"interrupts": 2892806226, "soft_interrupts": 1854672603, "ctx_switches": 8907428635, "syscalls": 0}}, "timestamp": 1604363452.347293}

System Memory

The status of available memory can be retrieved using:

GET /1/status/memory

The resultant output values are described below:

Parameter

Value

Description/Subkey

gateway_id

string

quXmedVKp - Gateway identifier

subsystem

string

memory - Subsystem name

status

dict

Dictionary containing memory details with the following key-value pairs:

virtual_memory

dict

Details of virtual memory:

- available

int

Memory used

- used

int

Memory not being used at all (zeroed) that is readily available

- cached

int

Memory previously allocated but recently released and available

- percent

float

Percentage of memory used

- free

int

Memory not being used at all (zeroed) that is readily available

- active

int

Memory currently in use or very recently used

swap_memory

dict

Details of swap memory:

- used

int

Used swap memory in bytes

- percent

float

Percentage of usage calculated as (total - available) / total * 100

- free

int

Free swap memory in bytes

- sin

int

Number of bytes the system has swapped in from disk (cumulative)

- sout

int

Number of bytes the system has swapped out from disk (cumulative)

timestamp

float

Epoch timestamp of reported status

Network Camera Capture (Netcams)

The status of all network cameras can be retrieved via a wildcard command:

  • Endpoint

GET /1/status/netcam*

The command returns a list of statuses per camera capture application. To retrieve an individual network camera's status:

  • Endpoint

GET /1/status/netcam_<app_id>_connectivity

An explanation of the status values:

Software Update

The status of the last software upgrade can be retrieved using:

Parameter

Value

Description/Subkey

gateway_id

quXmedVKp

Identifier of the gateway

subsystem

netcam_<camera_capture_app_id>_connectivity

status

dict

num_frames

int

Number of frames received by the network camera

corrupt_frames

int

Number of frames that cannot be decoded

camera_capture_id

string

Parent camera capture application ID

connected

bool

Is the camera connected to the Edgeflow?

camera_id

string

Network camera ID

lastrx_frame_time

float

Timestamp of the last frame received by this Edgeflow

timestamp

float

Timestamp of reported status

GET /1/status/software_upgrade

An explanation of the status values:

Parameter

Value

Description/Subkey

gatewayid

quXmedVKp

Identifier of the gateway

subsystem

software_upgrade

status

dict

message

"EF-20-10-21 installed"

A string containing release installed

timestamp

float

Timestamp of reported status

Software versions

To retrieve a list of all software versions installed on the Gateway including the current running version.

GET /1/status/software_versions

An explanation of the status values:

Parameter

Value

Description/Subkey

gateway_id

quXmedVKp

Identifier of the gateway

subsystem

software_versions

status

dict

current

EFVersion (string)

Current running version

available

list

Currently downloaded and available versions

"EF-20-07-06", "EF-20-08-11f"

reboot

"EF-20-10-21"

Version to use on next reboot

timestamp

float

EDIO Trigger

EDIO trigger status can be retrieved using:

GET /1/status/edio24-trigger

An explanation of status values:

Parameter

Value

Description/Subkey

gateway_id

quXmedVKp

subsystem

edio24-trigger

Identifier of the subsystem

status

dict

edio_24_trigger_count

int

Number of triggers

edio_24_initialized_at

float

Last time that the EDIO was initialized

timestamp

float

Timestamp of reported

Model Detections

The number of detections reported for an application can be retrieved using:

GET /1/status/model_detections

An explanation of status values: If a model changes for an application, the model detection values start from 1.

Parameter

Value

Description/Subkey

gateway_id

string

subsystem

string

status

list

application_id

dict

Application ID

model_id

string

Model being used

modeld_etections

int

Number of detections

timestamp

float

Timestamp of reported status


Was this article helpful?

What's Next