> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enterprise.falkordb.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Monitoring and Grafana

> View logs, live metrics, and optional Grafana dashboards.

## Admin UI logs

1. Open **Deployments**.
2. Open the target deployment.
3. Go to **Logs**.
4. Select a pod.
5. Use **Reconnect** to restart the stream or **Export** to download the captured output as `<pod-name>-logs.txt`.

The Logs tab streams pod logs in real time. If the stream disconnects, existing captured logs remain visible and the status badge changes to disconnected.

## Admin UI metrics

1. Open the target deployment.
2. Go to **Metrics**.
3. Select a non-Sentinel pod.
4. Use **Reconnect** to restart the live metrics stream.

The Metrics tab builds live charts from pod metric snapshots. Current panels include CPU, memory, clients, network I/O, command rates, command latency, graph command latency, graph command rates, DB keys, and uptime.

## Grafana link in the UI

The **Open in Grafana** button appears only when `settings.ui.grafana_url` is configured.

1. Open **System Settings**.
2. Open the UI/settings section.
3. Set the Grafana URL.
4. Save settings.
5. Return to deployment **Metrics** and select **Open in Grafana**.

When opening Grafana, the UI appends:

* `var-namespace=<namespace>`
* `var-pod=<selected-pod>`
* `var-pod_scope=<selected-pod>`

## Helm observability resources

The chart has these optional observability toggles:

| Value                       | Default | Effect                                                             |
| --------------------------- | ------- | ------------------------------------------------------------------ |
| `podMonitor.enabled`        | `false` | Creates PodMonitor resources.                                      |
| `alertRules.enabled`        | `false` | Creates PrometheusRule resources for Admin Server alerts.          |
| `grafanaDashboards.enabled` | `false` | Creates GrafanaDashboard resources from configured dashboard JSON. |

When `podMonitor.enabled=true`, the chart creates:

* An Admin Server PodMonitor that scrapes `/metrics` on the `http` port.
* A FalkorDB PodMonitor when the FalkorDB addon is enabled. It selects KubeBlocks-managed non-Sentinel pods and scrapes `/metrics` on `http-metrics` and `graph-metrics`.

`PodMonitor` and `PrometheusRule` require Prometheus Operator CRDs. `GrafanaDashboard` requires the Grafana Operator CRD.

## Example values

```yaml theme={null}
podMonitor:
  enabled: true
  interval: 30s
  scrapeTimeout: 10s

alertRules:
  enabled: true
  defaultRules:
    enabled: true

grafanaDashboards:
  enabled: true
  dashboards:
    - name: falkordb-enterprise
      folder: FalkorDB
      json: |
        { "title": "FalkorDB Enterprise" }
```

Use a real Grafana dashboard JSON for production. The chart requires each configured dashboard to include `name` and `json`.

## Validate

```bash theme={null}
kubectl get podmonitors.monitoring.coreos.com -A
kubectl get prometheusrules.monitoring.coreos.com -A
kubectl get grafanadashboards.grafana.integreatly.org -A
kubectl get pods -n <namespace>
```

In the Admin UI, verify **Logs**, **Metrics**, and **Open in Grafana** from a deployment details page.
