Nobl9 agent
β Nobl9 agents monitoringβ
The Grafana dashboard monitors the performance and health of your Nobl9 agents.
It is available for the beta-version agents with Prometheus metrics.
The dashboard visualizes vital metrics, making it easier to identify issues, track performance and health trends, and spot anomalies.
It comprises three focus areas:
- Overview: the uptime of your agents over time, the number of running SLOs, and the last connection to Nobl9.
- Data intake: query latency, data points received, and successful and failed queries.
- Data upload: the number of data points uploaded along with the upload latency.
To use the Grafana dashboard, make sure the following prerequisites are met:
- You have a Grafana instance with the Prometheus data source.
- The Nobl9 agent Prometheus exporter is enabled.
- The
N9_METRICS_PORT
port is open for metric scrapping by Prometheus. - The Nobl9 agent version
>= 0.74.0-beta
or higher.
To install the dashboard, do the following:
- Import the dashboard JSON file into your Grafana instance.
- Go to the dashboard settings.
Configure the Prometheus data source to point to your Prometheus server.
β Logging mode optionsβ
In the normal logging mode, the Nobl9 agent writes events at startup and when errors are encountered only. If you have no SLOs, you see the startup events only. If no errors are returned, this means you have successfully connected to Nobl9.
After adding your first SLO, the Nobl9 agent starts emitting query request and response diagnostic logs every 10 minutes per SLI. The logs are labeled as follows:
info
for successful query logswarn
for unsuccessful query logs
You can modify the emission frequencyβfor this, set the value of N9_DIAGNOSTIC_QUERY_LOG_SAMPLE_INTERVAL_MINUTES
to the required interval.
To deactivate diagnostic logging, set its value to 0
.
- See the list of data sources supporting diagnostic logging for live SLI ingestion.
- In most cases, these logs can help you diagnose the issue. Note that problems are usually related to the firewall, authentication, or the query.
In addition to diagnostic logs, you can activate verbose logging. This option outputs all logs related to all operations happening when you execute commands in the agent.
You can activate verbose logging with Kubernetes or Docker.
- Kubernetes
- Docker
When the agent is already deployed in your Kubernetes cluster, include the args
and command
fields to the YAML configuration file on the level of your container and use these fields to inject data into your agent.
Once the pod is created with custom values defined for command and arguments, these fields cannot be changed.
spec:
containers:
- name: agent-container
image: nobl9/agent:latest-beta
resources:
requests:
memory: "350Mi"
cpu: "0.1"
env:
- name: N9_DIAGNOSTIC_QUERY_LOG_SAMPLE_INTERVAL_MINUTES
value: "5"
args:
- --debug
command:
- telegraf
When you invoke the agent with docker run
, add --debug
at the end of all the statements that are given on the Nobl9 Web:
docker run -d --restart on-failure \
--name nobl9-agent-nobl9-dev-datadog-month-test \
-e N9_CLIENT_ID="unique_client_id" \
-e N9_CLIENT_SECRET="unique_client_secret" \
-e DD_API_KEY="<DATADOG_API_KEY>" \
-e DD_APPLICATION_KEY="<DATADOG_APPLICATION_KEY>" \
-e N9_DIAGNOSTIC_QUERY_LOG_SAMPLE_INTERVAL_MINUTES="5" \
telegraf --debug \
nobl9/agent:latest-beta