awesome-prometheus-alerts.nix

Nix packages and NixOS module for awesome-prometheus-alerts. This project allows you to use awesome-prometheus-alerts in a NixOS idiomatic way.

Have a look at the available options and the Installation.

Installation

With Flakes

Add the project as an input to your flake.

{
  inputs = {
    # ...
    awesome-prometheus-alerts = {
      url = "github:NyCodeGHG/awesome-prometheus-alerts.nix";
      # This is optional, but recommended. It reduces the amount of dependencies and clutter in your flake.lock
      inputs.nixpkgs.follows = "nixpkgs";
    };
  };
}

Now you can add the module to your NixOS configuration.

{
  outputs = { nixpkgs, awesome-prometheus-alerts, ... }: {
    # ...
    nixosConfigurations.example = nixpkgs.lib.nixosSystem {
      system = "x86_64-linux";
      modules = [
        awesome-prometheus-alerts.nixosModules.default
      ];
    };
  }
}

With that module enabled, you can just enable the prometheus rules you want, you can find a list of all module options here and a list of all available rules on the upstream projects documentation.

{
  services.prometheus = {
    enable = true;
    awesome-prometheus-alerts = {
      # Enable Prometheus Self monitoring
      prometheus-self-monitoring.embedded-exporter.enable = true;
      # Enable Node Exporter alerts
      host-and-hardware.node-exporter.enable = true;
    };
  };
}

Without Flakes

This project currently only works with Flakes, but feel free to contribute an integration with flake-compat. :)

Options

These are all available options.

services.prometheus.awesome-prometheus-alerts.apache.lusitaniae-apache-exporter.enable

Enables the apache lusitaniae-apache-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.apc-ups.apcupsd_exporter.enable

Enables the apc-ups apcupsd_exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.argocd.embedded-exporter.enable

Enables the argocd embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.blackbox.blackbox-exporter.enable

Enables the blackbox blackbox-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.cassandra.criteo-cassandra-exporter.enable

Enables the cassandra criteo-cassandra-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.cassandra.instaclustr-cassandra-exporter.enable

Enables the cassandra instaclustr-cassandra-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.ceph.embedded-exporter.enable

Enables the ceph embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.cloudflare.lablabs-cloudflare-exporter.enable

Enables the cloudflare lablabs-cloudflare-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.consul.consul-exporter.enable

Enables the consul consul-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.coredns.embedded-exporter.enable

Enables the coredns embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.cortex.embedded-exporter.enable

Enables the cortex embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.docker-containers.google-cadvisor.enable

Enables the docker-containers google-cadvisor Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.elasticsearch.prometheus-community-elasticsearch-exporter.enable

Enables the elasticsearch prometheus-community-elasticsearch-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.etcd.embedded-exporter.enable

Enables the etcd embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.freeswitch.znerol-freeswitch-exporter.enable

Enables the freeswitch znerol-freeswitch-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.haproxy.haproxy-exporter-v1.enable

Enables the haproxy haproxy-exporter-v1 Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.haproxy.v2.enable

Enables the haproxy v2 Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.hashicorp-vault.embedded-exporter.enable

Enables the hashicorp-vault embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.host-and-hardware.node-exporter.enable

Enables the host-and-hardware node-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.istio.embedded-exporter.enable

Enables the istio embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.jenkins.metric-plugin.enable

Enables the jenkins metric-plugin Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.juniper.czerwonk-junos-exporter.enable

Enables the juniper czerwonk-junos-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.jvm.jvm-exporter.enable

Enables the jvm jvm-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.kafka.danielqsj-kafka-exporter.enable

Enables the kafka danielqsj-kafka-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.kafka.linkedin-kafka-exporter.enable

Enables the kafka linkedin-kafka-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.kubernetes.kubestate-exporter.enable

Enables the kubernetes kubestate-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.linkerd.embedded-exporter.enable

Enables the linkerd embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.loki.embedded-exporter.enable

Enables the loki embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.minio.embedded-exporter.enable

Enables the minio embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.mongodb.dcu-mongodb-exporter.enable

Enables the mongodb dcu-mongodb-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.mongodb.percona-mongodb-exporter.enable

Enables the mongodb percona-mongodb-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.mongodb.stefanprodan-mgob-exporter.enable

Enables the mongodb stefanprodan-mgob-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.mysql.mysqld-exporter.enable

Enables the mysql mysqld-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.netdata.embedded-exporter.enable

Enables the netdata embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.nginx.knyar-nginx-exporter.enable

Enables the nginx knyar-nginx-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.nomad.embedded-exporter.enable

Enables the nomad embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.openebs.embedded-exporter.enable

Enables the openebs embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.pgbouncer.spreaker-pgbouncer-exporter.enable

Enables the pgbouncer spreaker-pgbouncer-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.php-fpm.bakins-fpm-exporter.enable

Enables the php-fpm bakins-fpm-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.postgresql.postgres-exporter.enable

Enables the postgresql postgres-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.prometheus-self-monitoring.embedded-exporter.enable

Enables the prometheus-self-monitoring embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.promtail.embedded-exporter.enable

Enables the promtail embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.pulsar.embedded-exporter.enable

Enables the pulsar embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.rabbitmq.kbudde-rabbitmq-exporter.enable

Enables the rabbitmq kbudde-rabbitmq-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.rabbitmq.rabbitmq-exporter.enable

Enables the rabbitmq rabbitmq-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.redis.oliver006-redis-exporter.enable

Enables the redis oliver006-redis-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.sidekiq.strech-sidekiq-exporter.enable

Enables the sidekiq strech-sidekiq-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.solr.embedded-exporter.enable

Enables the solr embedded-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.speedtest.nlamirault-speedtest-exporter.enable

Enables the speedtest nlamirault-speedtest-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.sql-server.ozarklake-mssql-exporter.enable

Enables the sql-server ozarklake-mssql-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.ssl.ribbybibby-ssl-exporter.enable

Enables the ssl ribbybibby-ssl-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-bucket-replicate.enable

Enables the thanos thanos-bucket-replicate Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-compactor.enable

Enables the thanos thanos-compactor Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-component-absent.enable

Enables the thanos thanos-component-absent Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-query.enable

Enables the thanos thanos-query Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-receiver.enable

Enables the thanos thanos-receiver Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-ruler.enable

Enables the thanos thanos-ruler Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-sidecar.enable

Enables the thanos thanos-sidecar Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.thanos.thanos-store.enable

Enables the thanos thanos-store Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.traefik.v1.enable

Enables the traefik v1 Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.traefik.v2.enable

Enables the traefik v2 Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.vmware.pryorda-vmware-exporter.enable

Enables the vmware pryorda-vmware-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.windows-server.windows-exporter.enable

Enables the windows-server windows-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.zfs.node-exporter.enable

Enables the zfs node-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.zfs.zfs_exporter.enable

Enables the zfs zfs_exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.zookeeper.cloudflare-kafka-zookeeper-exporter.enable

Enables the zookeeper cloudflare-kafka-zookeeper-exporter Prometheus rules.

Type: boolean

Default: false

Declared by:

services.prometheus.awesome-prometheus-alerts.zookeeper.dabealu-zookeeper-exporter.enable

Enables the zookeeper dabealu-zookeeper-exporter Prometheus rules.

Type: boolean

Default: false

Declared by: