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

# Configure Prometheus

[Prometheus](https://prometheus.io) is a component in StreamNative Platform and is used to collect metrics from the Pulsar cluster. By default, Prometheus is enabled with StreamNative Platform. To disable it, you can set `monitoring.prometheus: false` in the `values.yaml` YAML file and then update the resource.

## Configure CPU and memory resources

You can configure the CPU, memory, and disk for Prometheus in the `values.yaml` YAML file. Then, you can use the `helm upgrade` command to restart the StreamNative Platform to make updates effective. For details about how to configure CPU and memory resources, see [CPU and memory resources](/private-cloud/v1/operating-streamnative-platform/advanced/cpu-mem-resources).

```yaml theme={null}
prometheus:
  # keep request = limit to keep this container in guaranteed class
  resources:
    requests:
      cpu:
      memory:
  volumes:
    data:
      name:
      size:
```

## Configure WAL compression

When a Pulsar cluster has lots of topics, a quantity of monitoring data is generated, which might cause the Prometheus server to restart due to Out of Memory (OOM) on Write-Ahead Log (WAL) replay. To prevent Prometheus OOM, you can configure `prometheus.extraArgs.--storage.tsdb.wal-compression` property in the `values.yaml` YAML file as follows and then update the resource. For a full list of options about Prometheus local storage, see [Prometheus documentation](https://prometheus.io/docs/prometheus/latest/storage/#operational-aspects).

```yaml theme={null}
prometheus:
  extraArgs:
    # https://prometheus.io/docs/prometheus/latest/storage/#operational-aspects
    - --storage.tsdb.wal-compression
```
