# prometheus

## Options

### services.prometheus.enable

Whether to enable Prometheus monitoring system.

*Type:* boolean

*Default:*

```nix
false
```

*Example:*

```nix
true
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.package

Which package of Prometheus to use

*Type:* package

*Default:*

```nix
pkgs.prometheus
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.advanced.storage

Storage configuration

*Type:* attribute set

*Default:*

```nix
{ }
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.advanced.tsdb

TSDB configuration

*Type:* attribute set

*Default:*

```nix
{ }
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.alerting

Alerting configuration

*Type:* null or (attribute set)

*Default:*

```nix
null
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.experimentalFeatures.enableExemplars

Enable exemplar storage

*Type:* boolean

*Default:*

```nix
false
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.experimentalFeatures.enableOTLP

Enable OTLP receiver

*Type:* boolean

*Default:*

```nix
false
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.experimentalFeatures.enableTracing

Enable tracing

*Type:* boolean

*Default:*

```nix
false
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.extraArgs

Additional arguments to pass to Prometheus

*Type:* string

*Default:*

```nix
""
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.globalConfig

Global Prometheus configuration

*Type:* attribute set

*Default:*

```nix
{
  evaluation_interval = "1m";
  scrape_interval = "1m";
  scrape_timeout = "10s";
}
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.port

Port for Prometheus web interface.

*Type:* 16 bit unsigned integer; between 0 and 65535 (both inclusive)

*Default:*

```nix
9090
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.remoteRead

Remote read configurations

*Type:* list of (attribute set)

*Default:*

```nix
[ ]
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.remoteWrite

Remote write configurations

*Type:* list of (attribute set)

*Default:*

```nix
[ ]
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.ruleFiles

List of rule files to load

*Type:* list of string

*Default:*

```nix
[ ]
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.scrapeConfigs

List of scrape configurations

*Type:* list of (attribute set)

*Default:*

```nix
[ ]
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.storage.path

Path where Prometheus will store its database

*Type:* string

*Default:*

```nix
${config.devenv.state}/prometheus
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>

### services.prometheus.storage.retentionTime

How long to retain data

*Type:* string

*Default:*

```nix
"15d"
```

*Declared by:*

* <https://github.com/cachix/devenv/blob/main/src/modules/services/prometheus.nix>