Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi All,
Does anyone know the api endpoint to check if a node is offline or online.
Right now i have to login to QMC to discover that one of the node has gone offline for some reason.
I have tried these two, but doesn't seem to return anything that would tell me if its online or offline.
/servernodeconfiguration/full
/servernodeheartbeat/full
Thanks,
Aadil
By calling GET /qrs/ServiceStatus/full. We have three key values we're interested in:
To decipher the serviceType and serviceState elements and map their enums to the semantic values we call GET /qrs/about/openapi/main and narrow in on the ServiceStatus elements like so:
"ServiceStatus": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"createdDate": {
"type": "string",
"format": "date-time"
},
"modifiedDate": {
"type": "string",
"format": "date-time"
},
"modifiedByUserName": {
"type": "string"
},
"schemaPath": {
"type": "string"
},
"privileges": {
"type": "array",
"items": {
"type": "string"
}
},
"serverNodeConfiguration": {
"$ref": "#/definitions/ServerNodeConfigurationCondensed"
},
"serviceType": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
],
"x-enumNames": [
"Repository",
"Proxy",
"Scheduler",
"Engine",
"AppMigration",
"Printing"
]
},
"serviceState": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
],
"x-enumNames": [
"Initializing",
"CertificatesNotInstalled",
"Running",
"NoCommunication",
"Disabled",
"Unknown"
]
},
"timestamp": {
"type": "string",
"format": "date-time"
}
},
"required": [
"serverNodeConfiguration",
"serviceType",
"serviceState"
],
"x-qlik-stability": "Locked"
}
From there you can map the nodes, their service(s), and their statuses to semantic values.
By calling GET /qrs/ServiceStatus/full. We have three key values we're interested in:
To decipher the serviceType and serviceState elements and map their enums to the semantic values we call GET /qrs/about/openapi/main and narrow in on the ServiceStatus elements like so:
"ServiceStatus": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"createdDate": {
"type": "string",
"format": "date-time"
},
"modifiedDate": {
"type": "string",
"format": "date-time"
},
"modifiedByUserName": {
"type": "string"
},
"schemaPath": {
"type": "string"
},
"privileges": {
"type": "array",
"items": {
"type": "string"
}
},
"serverNodeConfiguration": {
"$ref": "#/definitions/ServerNodeConfigurationCondensed"
},
"serviceType": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
],
"x-enumNames": [
"Repository",
"Proxy",
"Scheduler",
"Engine",
"AppMigration",
"Printing"
]
},
"serviceState": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
],
"x-enumNames": [
"Initializing",
"CertificatesNotInstalled",
"Running",
"NoCommunication",
"Disabled",
"Unknown"
]
},
"timestamp": {
"type": "string",
"format": "date-time"
}
},
"required": [
"serverNodeConfiguration",
"serviceType",
"serviceState"
],
"x-qlik-stability": "Locked"
}
From there you can map the nodes, their service(s), and their statuses to semantic values.