Systemd API
Table of Contents
Section titled “Table of Contents”Systemd Service API (systemd/systemd.proto)
Section titled “Systemd Service API (systemd/systemd.proto)”Services
Section titled “Services”| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| StartApplication | AppUnitRequest | UnitResponse | Start remote application (session service) |
| StartUnit | UnitRequest | UnitResponse | Start systemd unit (any, if whitelisted) |
| StopUnit | UnitRequest | UnitResponse | Stop systemd unit (any, if whitelisted) |
| KillUnit | UnitRequest | UnitResponse | Kill systemd unit (any, if whitelisted) |
| FreezeUnit | UnitRequest | UnitResponse | Freeze/pause systemd unit (any, if whitelisted) |
| UnfreezeUnit | UnitRequest | UnitResponse | Unfreeze/resume systemd unit (any, if whitelisted) |
| GetUnitStatus | UnitRequest | UnitResponse | Get systemd unit status (any, if whitelisted) |
| MonitorUnit | UnitResourceRequest | UnitResourceResponse | Obsolete monitoring function |
Messages
Section titled “Messages”| Field | Type | Label | Description |
|---|---|---|---|
| UnitName | string | Systemd unit name of the application | |
| Args | string | repeated | Application arguments |
| Field | Type | Label | Description |
|---|---|---|---|
| UnitName | string | Full systemd unit name |
| Field | Type | Label | Description |
|---|---|---|---|
| UnitName | string |
| Field | Type | Label | Description |
|---|---|---|---|
| cpu_usage | double | ||
| memory_usage | float |
| Field | Type | Label | Description |
|---|---|---|---|
| UnitStatus | UnitStatus | Units systemd status |
Systemd Unit Status
| Field | Type | Label | Description |
|---|---|---|---|
| Name | string | Full systemd unit name | |
| Description | string | A short human readable title of the unit | |
| LoadState | string | LoadState contains a state value that reflects whether the configuration file of this unit has been loaded | |
| ActiveState | string | ActiveState contains a state value that reflects whether the unit is currently active or not | |
| SubState | string | SubState encodes more fine-grained states that are unit-type-specific | |
| Path | string | Bus object path of the unit | |
| FreezerState | string | Freezer sub-state, indicates whether unit is frozen |
Scalar Value Types
Section titled “Scalar Value Types”| .proto Type | Notes | Go Type |
|---|---|---|
| double | float64 | |
| float | float32 | |
| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 |
| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 |
| uint32 | Uses variable-length encoding. | uint32 |
| uint64 | Uses variable-length encoding. | uint64 |
| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 |
| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 |
| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 |
| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 |
| sfixed32 | Always four bytes. | int32 |
| sfixed64 | Always eight bytes. | int64 |
| bool | bool | |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string |
| bytes | May contain any arbitrary sequence of bytes. | []byte |