Monitoring
This page describes how you best monitor Onify components and services.
Because Onify is a very flexible platform and can be run on many different platforms including Windows, Linux, Mac OS, Kubernetes, Docker, OpenShift, etc. We cannot document any scenario but will try to explain the basics here.
Onify Hub
The Onify Hub normally consists of the components (containers) APP, API and WORKER. Sometime we also have FUNCTIONS and HELIX but it depends on the implementation. Some customers also have AGENTSERVER container running.
Here is a list of containers you usually should monitor.
API
Monitoring container
If you are running Onify Hub API as a container, it is important to monitor that the container is actually up and running. The API is the heart of Onify so it is crucial that the service working.
Monitoring logs
One of the best way to monitor the API is to monitor the (container/console) logs. We recommend some type of log-management platform such as Logstash.
Health endpoint
By setting api_health to true in settings you enable the /health endpoint and this can be monitored by different platforms like eg. Kubernetes. This is using the CloudNativeJS/cloud-health-connect library.
Example reponse from /health endpoint
{
"status": "UP",
"checks": [
{
"name": "liveCheck",
"state": "UP",
"data": {
"reason": ""
}
}
]
}Metrics endpoint
Onify support the Prometheus for scraping "metrics". To enable this, set the api_metrics setting to true. This will enable the /metrics endpoint.
WORKER
Monitoring container
If you are running Onify Hub Worker as a container, it is important to monitor that the container is actually up and running. You should monitor the logs.
Onify Agent
This is an optional component/container that some customers are using.
Monitoring container
If you are running Onify Agent as a container, it is important to monitor that the container is actually up and running.
Monitoring service
If you are running Onify Hub APP as a service, it is important to monitor that the service is actually up and running.
Monitoring logs
One of the best way to monitor the Agent is to monitor the log files. We recommend some type of log-management platform such as Logstash.
Elasticsearch
Here is documentation how to monitor Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/current/monitor-elasticsearch-cluster.html
Updated 7 days ago
