Coralogix¶
HolmesGPT can use Coralogix for logs/traces (DataPrime) and, separately, PromQL-style metrics. This page shows both setups.
Prerequisites¶
- A Coralogix API key with
DataQueryingpermissions - A Coralogix domain (e.g.,
eu2.coralogix.com) - (Optional) Your team's slug - only needed for generating clickable UI permalink URLs in tool output
You can find your domain and team_slug from the URL you use to access Coralogix. For example, if you access Coralogix at https://my-team.app.eu2.coralogix.com/ then team_slug is my-team and domain is eu2.coralogix.com.
Configuration¶
Configure both the Coralogix DataPrime toolset (for logs/traces) and the Prometheus metrics toolset (for metrics) using the same API key. The team_slug field is optional — it's only used to generate clickable permalink URLs that open query results in the Coralogix UI.
Add the following to ~/.holmes/config.yaml. Create the file if it doesn't exist:
toolsets:
coralogix:
enabled: true
config:
api_key: "<your Coralogix API key>"
domain: "eu2.coralogix.com"
# Optional: enables clickable UI permalink URLs in tool output
team_slug: "your-company-name"
prometheus/metrics:
enabled: true
subtype: coralogix
config:
additional_headers:
Authorization: "Bearer <your Coralogix API key>"
prometheus_url: "https://ng-api-http.eu2.coralogix.com/metrics" # replace domain
After making changes to your configuration, run:
First, create a Kubernetes secret with your Coralogix API key:
kubectl create secret generic coralogix-api-key \
--from-literal=api-key=your-coralogix-api-key \
-n holmes
Namespace must match Holmes' deployment
Create the secret in the same namespace where Holmes runs. The -n holmes flag in the Holmes Helm tab and -n default in the Robusta Helm tab match each chart's documented defaults — adjust if you installed Holmes/Robusta into a different namespace. A secret in the wrong namespace silently resolves to an empty env var and authentication will fail with no clear error.
Then add to your Holmes Helm values:
additionalEnvVars:
- name: CORALOGIX_API_KEY
valueFrom:
secretKeyRef:
name: coralogix-api-key
key: api-key
toolsets:
coralogix:
enabled: true
config:
api_key: "{{ env.CORALOGIX_API_KEY }}"
domain: "eu2.coralogix.com"
# Optional: enables clickable UI permalink URLs in tool output
team_slug: "your-company-name"
prometheus/metrics:
enabled: true
subtype: coralogix
config:
additional_headers:
Authorization: "Bearer {{ env.CORALOGIX_API_KEY }}"
prometheus_url: "https://ng-api-http.eu2.coralogix.com/metrics" # replace domain
First, create a Kubernetes secret with your Coralogix API key:
kubectl create secret generic coralogix-api-key \
--from-literal=api-key=your-coralogix-api-key \
-n default
Namespace must match Holmes' deployment
Create the secret in the same namespace where Holmes runs. The -n holmes flag in the Holmes Helm tab and -n default in the Robusta Helm tab match each chart's documented defaults — adjust if you installed Holmes/Robusta into a different namespace. A secret in the wrong namespace silently resolves to an empty env var and authentication will fail with no clear error.
Then add to your Robusta Helm values:
holmes:
additionalEnvVars:
- name: CORALOGIX_API_KEY
valueFrom:
secretKeyRef:
name: coralogix-api-key
key: api-key
toolsets:
coralogix:
enabled: true
config:
api_key: "{{ env.CORALOGIX_API_KEY }}"
domain: "eu2.coralogix.com"
team_slug: "your-company-name"
prometheus/metrics:
enabled: true
subtype: coralogix
config:
additional_headers:
Authorization: "Bearer {{ env.CORALOGIX_API_KEY }}"
prometheus_url: "https://ng-api-http.eu2.coralogix.com/metrics"
Update your Helm values and run a Helm upgrade:
Note: Both toolsets use the same API key. Helm-tab users only need to create one Kubernetes secret — the env var feeds both the coralogix toolset's api_key field and the Prometheus toolset's Authorization header.
Recommended: Customize Coralogix Instructions¶
By specifying details about your Coralogix metrics, logs, and traces, you can significantly speed up and improve investigations. This allows Holmes to work with your environment directly, rather than spending time discovering labels, mappings, and metric names on its own.
To configure this:
- Go to platform.robusta.dev
- Navigate to Settings → AI Assistant → AI Customization
- Add your labels and metric details
- Save your changes
Example Custom Instructions¶
Below is an example of how your custom instructions might look, based on the labels and metrics used in your environment:
# Coralogix details
For Coralogix, use the following label mappings for logs:
- pod: k8s.pod_name
- namespace: k8s.namespace_name
- service: k8s.service_name
- deployment: k8s.deployment_name
Custom Coralogix metrics:
- payments_failures: tracks payment processing failures
- api_latency_p95: 95th percentile API latency