โค๏ธHealth check
This article describes the health check functionality of the PORTOS API.
Get health check
GET
{{server_adddress}}/api/v2/health
This endpoint allows you to get system-wide health check.
The response HTTP status is always 200 for all health report status values. No authorization is required for accessing API health check.
Response payload
The response payload is based on Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions
library and consists of following classes:
Health status
String enumeration of following values:
healthy
Indicates that the health check determined that the component was healthy.degraded
Indicates that the health check determined that the component was in a degraded state.unhealthy
Indicates that the health check determined that the component was unhealthy, or an unhandled exception was thrown while executing the health check.
Health report
The response payload is represented by HealthReport
class, which contains following properties:
Property
Description
status
Represents the aggregate status of all the health checks. The value is most servere status reported by a health check. If no checks were executed, the value is always healthy
.
totalDuration
string
Time the health check service took to execute in time span format ([d.]hh:mm:ss
).
entries
Health report entry
The values in health report entries
dictionary map are represented by the HealthReportEntry
class, which contains following properties:
Property
Description
status
Health status of the specific health check.
duration
string
Health check execution duration in time span format ([d.]hh:mm:ss
).
description
string | null
Optional human-readable description of the status of the component that was checked.
data
object | null
Additional key-value pairs describing the health of the component. Structure may vary for each health check.
exception
Optional exception object representing the exception that was thrown when checking for status (if any). Equal to null
when status
is healthy
.
Health report exception
Represents information about failed health report check.
message
string | null
The exception message.
Health check result
Some health checks contains collection of inner health checks. Each element of such collection is represented by the HealthCheckResult
class, which contains following properties:
Property
Description
status
Health status of the specific health check.
description
string | null
Optional human-readable description of the status of the component that was checked.
data
object | null
Additional key-value pairs describing the health of the component. Structure may vary for each health check.
exception
Optional exception object representing the exception that was thrown when checking for status (if any). Equal to null
when status
is healthy
.
Health checks
The health report's entries
dictionary contains information for all API components such as:
Core health checks
There are following core health report entries:
Disk storage
diskstorage
From version 4.0.36
License
license
Fiscal printers
fiscalPrinters
Order endpoints
orderEndpoints
Disk storage health check
Disk storage health check is associated with the diskstorage`
identifier. This health check verifies free space on disk, on which executing assembly (the API service/deamon) is stored. Following table explains relationship between free megabytes and health status of health check.
Health status
Free megabytes
healthy
512 or more
degraded
Less than 512
License health check
License health check is associated with the license
identifier. License health check verifies expiration date of product license. Following table explains relationship between remaining license days and health status of license health check.
Health status
Remaining license days
healthy
More than 14
degraded
Up to 14
unhealthy
0
The data
section contains following values:
Property name
Description
remainingDays
The number of days to license expiration.
expirationDate
The license expiration date (in iso 8601 format).
The keys may not be present, if exception
property of license health report entry is set.
Fiscal printers health check
Fiscal printers health check is associated with the fiscalPrinters
identifier. Checks health of every fiscal device marked as active.
The data
section contains following values:
Property name
Description
entries
The collection of FiscalPrintersHealthCheckResultEntry
. Each element represents health check result for one fiscal device.
The FiscalPrintersHealthCheckResultEntry
class contains following properties:
Property name
Description
Key
The unique fiscal name.
Result
Order endpoints health check
Order endpoints health check is associated with the orderEndpoints
identifier. Checks health of every order endpoint device marked as active.
The data
section contains following values:
Property name
Description
entries
The collection of OrderEndpointsHealthCheckResultEntry
. Each element represents health check result for one order endpoint device.
The OrderEndpointsHealthCheckResultEntry
class contains following properties:
Property name
Description
Key
The unique order endpoint name.
Result
Feature health checks
If some optional features are enabled on API server, health report contains report entries for such feature. Name of health report entry is equal to feature name, that is prefixed with portos.Features
prefix (e.g. Qerko
feature is associated with report entry with name portos.Features.Qerko
) and contains displayName
property in it's data
.
Last updated