diff options
| author | Akshay Nair <phenax5@gmail.com> | 2025-06-13 21:50:54 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2025-06-13 21:50:54 +0530 |
| commit | e11b9a851851bb47109545093e3accdbcab76859 (patch) | |
| tree | e733232829ccca32d6ff3cfc88e4794222448676 /modules/monitoring/prometheus.nix | |
| parent | 6df186662a37b17015959bf0d6b456ab282b1826 (diff) | |
| download | homeserver-nixos-config-e11b9a851851bb47109545093e3accdbcab76859.tar.gz homeserver-nixos-config-e11b9a851851bb47109545093e3accdbcab76859.zip | |
Add grafana+prometheus + embed into dashboard
Diffstat (limited to 'modules/monitoring/prometheus.nix')
| -rw-r--r-- | modules/monitoring/prometheus.nix | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/modules/monitoring/prometheus.nix b/modules/monitoring/prometheus.nix new file mode 100644 index 0000000..5f71c58 --- /dev/null +++ b/modules/monitoring/prometheus.nix @@ -0,0 +1,34 @@ +{ lib, ... }: +let + settings = import ../../settings.nix { inherit lib; }; + ports = settings.network.ports; +in +{ + services.prometheus = { + enable = true; + port = ports.prometheus; + + exporters.node = { + enable = true; + port = ports.prometheusNodeExporter; + enabledCollectors = [ "systemd" ]; + extraFlags = [ + "--collector.ethtool" + "--collector.softirqs" + "--collector.tcpstat" + "--collector.wifi" + ]; + }; + + scrapeConfigs = [ + { + job_name = "system"; + scrape_interval = "10s"; + static_configs = [{ + targets = [ "127.0.0.1:${toString ports.prometheusNodeExporter}" ]; + }]; + } + ]; + }; +} + |
