Status API§
Unit collects information about the loaded language models, as well as instance- and app-wide metrics, and makes them available via the GET-only /status section of the control API:
Option | Description |
---|---|
modules | Object; lists currently loaded language modules. |
connections | Object; lists per-instance connection statistics. |
requests | Object; lists per-instance request statistics. |
applications | Object; each option item lists per-app process and request statistics. |
Example:
{
"modules": {
"python": [
{
"version": "3.12.3",
"lib": "/opt/unit/modules/python.unit.so"
},
{
"version": "3.8",
"lib": "/opt/unit/modules/python-3.8.unit.so"
}
],
"php": {
"version": "8.3.4",
"lib": "/opt/unit/modules/php.unit.so"
}
},
"connections": {
"accepted": 1067,
"active": 13,
"idle": 4,
"closed": 1050
},
"requests": {
"total": 1307
},
"applications": {
"wp": {
"processes": {
"running": 14,
"starting": 0,
"idle": 4
},
"requests": {
"active": 10
}
}
}
}
Each item in the modules object lists one of the currently loaded language modules, the installed version (or versions) of the module, and the path to the module file:
Option | Description |
---|---|
name | String; language module name. |
version | String; language module version. If multiple versions are loaded, the list contains multiple items. |
lib | String; path to the language module file. |
The connections object offers the following Unit instance metrics:
Option | Description |
---|---|
accepted | Integer; total accepted connections during the instance’s lifetime. |
active | Integer; current active connections for the instance. |
idle | Integer; current idle connections for the instance. |
closed | Integer; total closed connections during the instance’s lifetime. |
Example:
"connections": {
"accepted": 1067,
"active": 13,
"idle": 4,
"closed": 1050
}
Note
For details of instance connection management, refer to Settings.
The requests object currently exposes a single instance-wide metric:
Option | Description |
---|---|
total | Integer; total non-API requests during the instance’s lifetime. |
Example:
"requests": {
"total": 1307
}
Each item in applications describes an app currently listed in the /config/applications section:
Option | Description |
---|---|
processes | Object; lists per-app process statistics. |
requests | Object; similar to /status/requests, but includes only the data for a specific app. |
Example:
"applications": {
"wp": {
"processes": {
"running": 14,
"starting": 0,
"idle": 4
},
"requests": {
"active": 10
}
}
}
The processes object exposes the following per-app metrics:
Option | Description |
---|---|
running | Integer; current running app processes. |
starting | Integer; current starting app processes. |
idle | Integer; current idle app processes. |
Example:
"processes": {
"running": 14,
"starting": 0,
"idle": 4
}
Note
For details of per-app process management, refer to Process management.