GET | /healthcheck | The request for getting health check information. | Depending on the execution mode, you can determine different states of the server. |
---|
export class ServerState
{
public ServerName: string;
public TotalRamInMb?: number;
public AvailableRamInMb?: number;
public UsedCpuPercent?: number;
public constructor(init?: Partial<ServerState>) { (Object as any).assign(this, init); }
}
export enum MonitoringStatus
{
Success = 1,
Failure = 2,
}
export class MonitoringResult
{
public MonitoringName: string;
public Status: MonitoringStatus;
public StatusMessage: string;
public ErrorMessages: string[];
public constructor(init?: Partial<MonitoringResult>) { (Object as any).assign(this, init); }
}
export class MonitorSummary
{
public MonitorName: string;
public Status: MonitoringStatus;
public Results: MonitoringResult[];
public ErrorMessages: string[];
public constructor(init?: Partial<MonitorSummary>) { (Object as any).assign(this, init); }
}
export class MonitorExecutionMetrics
{
public StartDateTime: string;
public EndDateTime: string;
public Duration: string;
public constructor(init?: Partial<MonitorExecutionMetrics>) { (Object as any).assign(this, init); }
}
export class HealthCheckResponse
{
public ServerState: ServerState;
public Status: MonitoringStatus;
public StatusMessage: string;
public CorrelationId: string;
public FailedMonitorCount: number;
public MonitorSummaries: MonitorSummary[];
public ExecutionMetrics: MonitorExecutionMetrics;
public constructor(init?: Partial<HealthCheckResponse>) { (Object as any).assign(this, init); }
}
export enum ExecutionMode
{
Basic = 1,
Standard = 2,
Advanced = 3,
}
export enum ServerType
{
App = 1,
Sql = 2,
FtpApi = 3,
Ftp = 4,
Batch = 5,
Identity = 6,
Qc = 7,
XcodeV = 8,
XcodeC = 9,
MsgVast = 10,
AsgVast = 11,
Mongo = 12,
Agents = 13,
}
export class HealthCheckRequest
{
/**
* The mode used to determine what level of health check to perform.
*/
// @ApiMember(DataType="ExecutionMode", Description="The mode used to determine what level of health check to perform.", IsRequired=true, ParameterType="query")
public ExecutionMode: ExecutionMode;
/**
* The type of server that will be used to determine which monitors will be run.
*/
// @ApiMember(DataType="ServerType", Description="The type of server that will be used to determine which monitors will be run.", IsRequired=true, ParameterType="query")
public ServerType: ServerType;
/**
* Indicates whether or not to include server state information in the response.
*/
// @ApiMember(DataType="boolean", Description="Indicates whether or not to include server state information in the response.", ParameterType="query")
public IncludeServerStateInformation: boolean;
/**
* Indicates whether or not to suppress returning error codes. This will always return a 200 code to the caller, which is required for PRTG to process the JSON response properly.
*/
// @ApiMember(DataType="boolean", Description="Indicates whether or not to suppress returning error codes. This will always return a 200 code to the caller, which is required for PRTG to process the JSON response properly.", ParameterType="query")
public SuppressErrorCodes: boolean;
/**
* Indicates whether or not to suppress deployment-related errors.
*/
// @ApiMember(DataType="boolean", Description="Indicates whether or not to suppress deployment-related errors.", ParameterType="query")
public SuppressDeploymentErrors: boolean;
public constructor(init?: Partial<HealthCheckRequest>) { (Object as any).assign(this, init); }
}
TypeScript HealthCheckRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /healthcheck HTTP/1.1 Host: gc.tclclouds.com Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <HealthCheckResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ExtremeReach.Diagnostics.App.Types"> <CorrelationId>String</CorrelationId> <ExecutionMetrics> <Duration>PT0S</Duration> <EndDateTime>0001-01-01T00:00:00</EndDateTime> <StartDateTime>0001-01-01T00:00:00</StartDateTime> </ExecutionMetrics> <FailedMonitorCount>0</FailedMonitorCount> <MonitorSummaries> <MonitorSummary> <ErrorMessages xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:string>String</d4p1:string> </ErrorMessages> <MonitorName>String</MonitorName> <Results> <MonitoringResult> <ErrorMessages xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d6p1:string>String</d6p1:string> </ErrorMessages> <MonitoringName>String</MonitoringName> <Status>Success</Status> <StatusMessage>String</StatusMessage> </MonitoringResult> </Results> <Status>Success</Status> </MonitorSummary> </MonitorSummaries> <ServerState> <AvailableRamInMb>0</AvailableRamInMb> <ServerName>String</ServerName> <TotalRamInMb>0</TotalRamInMb> <UsedCpuPercent>0</UsedCpuPercent> </ServerState> <Status>Success</Status> <StatusMessage>String</StatusMessage> </HealthCheckResponse>