Status
Query status Gateway subsystems.
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 subystems are shown below:
GPU
Parameter | Value | Description/SubKey | |
---|---|---|---|
gatewayid _string | quXmedVKp | Identifier of the gateway | |
subsystem string | gpus | ||
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. | mem_total | |
memtotal _float | total amount of GPU memory for this GPU) | ||
memused _float | memory currently used | ||
percentused _float | memory currently used | ||
temperature float | degrees Celcius | ||
timestamp _float__ | timestamp of last report | epoch time. | |
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}
An explanation of the status values:
Parameter | Value | Description/SubKey | |
---|---|---|---|
gatewayid _string | quXmedVKp | Identifier of the gateway | |
subystem string | cpu | ||
status dict | cputimes_percemt _float | ||
softirq float | time spent for servicing software interrupts | ||
iowait float | time spent waiting for I/O to complete | ||
system float | time spent by processes executing in kernel mode | ||
idle float | time spent doing nothing | ||
user float | time spent by normal processes executing in user mode | ||
nice float | time spent by niced (prioritized) processes executing in user mode | ||
irq float | time spent for servicing hardware interrupts | ||
cpufreq _list | list of CPU frequencies in MHz. | ||
cpupercent _list | utilization percentages for each specific CPU time | ||
cpu_stats | |||
interrupts int | number of interrupts since boot | ||
softinterrupts _int | number of software interrupts since boot. | ||
ctxswitches _int | number of context switches (voluntary + involuntary) since boot. | ||
syscalls int | number of system calls since boot. 0 on Linux | ||
timestamp float | timestamp of reported status |
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 | |
---|---|---|---|
gatewayid _string | quXmedVKp | Identifier of the gateway | |
subystem string | memory | ||
status dict | |||
virtualmemory _dict | |||
available int | memory used | ||
used int | memory not being used at all (zeroed) that is readily available; | ||
cached init | 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 | ||
swapmemory _dict | |||
used | used swap memory in bytes | ||
percent | the percentage usage calculated as (total - available) / total * 100 | ||
free | free swap memory in bytes | ||
sin int | the number of bytes the system has swapped in from disk (cumulative) | ||
sout int | the number of bytes the system has swapped out from disk (cumulative) | ||
timestamp float | timestamp of reported status |
Network Camera Capture (Netcams)
The status of all network cameras can be retrieved via a wildcard command:
GET /1/status/netcam*
The command returns a list of status per camera capture application.
To retrieve an individual network camera's status:
GET /1/status/netcam_<app_id>_connectivity
An explanation of the status values:
Parameter | Value | Description/SubKey | |
---|---|---|---|
gatewayid _string | quXmedVKp | Identifier of the gateway | |
subystem string | netcam_<camera_capture_app_id>_connectivity | ||
status dict | |||
numframes _int | number of frames received by the network camera | ||
corruptframes _int | number of frames which cannot be decoded | ||
cameracapture_id _string | parent camera capture application id | ||
connected bool | Is the camera connected to the Edgeflow? | ||
cameraid _string | network camera id | ||
lastrx_frame_time _float | timestamp of the last frame received by this Edgeflow | ||
timestamp float | timestamp of reported status |
Software Update
The status of the last software upgrade can be retrieved using:
GET /1/status/software_upgrade
An explanation of the status values:
Parameter | Value | Description/Subkey | |
---|---|---|---|
gatewayid _string | quXmedVKp | Identifier of the gateway | |
subystem string | software_upgrade | ||
status dict | |||
message string | "EF-20-10-21 installed" | 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 | |
---|---|---|---|
gatewayid _string | quXmedVKp | Identifier of the gateway | |
subystem string | software_versions | ||
status dict | |||
current string | EFVersion _string | current running version | |
available list | |||
"EF-20-07-06", "EF-20-08-11f" | currently downloaded and available versions | ||
reboot string | "EF-20-10-21" | version to use on next reboot | |
timestamp float | timestamp of reported status |
EDIO Trigger
EDIO trigger status can be retrieved using:
GET /1/status/edio24-trigger
An explanation of status values:
Parameter | Value | Description/Subkey | |
---|---|---|---|
gatewayid _string | quXmedVKp | ||
subystem string | edio24-trigger | ||
status dict | |||
edio24trigger_count _string | value int | Number of triggers | |
edio24initialized_at _string | timestamp float | last time that the EDIO was initialized. | |
timestamp float | timestamp of reported status |
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 | |||
---|---|---|---|---|---|
gatewayid _string | |||||
subystem string | |||||
status list | |||||
applicationid _dict | application id | ||||
modelid _string | model being used. string | ||||
modeldetections _string | Number of detections. int | ||||
timestamp float | timestamp of reported status |
Updated over 3 years ago