summaryrefslogtreecommitdiff
path: root/modules/xnet/monitoring/default.nix
diff options
context:
space:
mode:
authorKleidi Bujari <mail@4kb.net>2025-04-02 21:59:20 -0400
committerKleidi Bujari <mail@4kb.net>2025-04-02 21:59:20 -0400
commit09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52 (patch)
treebd8f1d3a51f12cd98764ae572b00f0b32de62644 /modules/xnet/monitoring/default.nix
parentb1738c105de3bc0ba7cd27f68c9eb146439a0964 (diff)
downloaddepot-09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52.tar.gz
depot-09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52.tar.bz2
depot-09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52.zip
automate project structure
Diffstat (limited to 'modules/xnet/monitoring/default.nix')
-rw-r--r--modules/xnet/monitoring/default.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/modules/xnet/monitoring/default.nix b/modules/xnet/monitoring/default.nix
new file mode 100644
index 0000000..eed4963
--- /dev/null
+++ b/modules/xnet/monitoring/default.nix
@@ -0,0 +1,58 @@
+{ config, ... }:
+let
+ inherit (builtins)
+ map
+ ;
+
+ inherit (config.services.prometheus) exporters;
+in
+{
+ imports = [ ./grafana.nix ];
+
+
+ config = {
+ services.prometheus = {
+ enable = config.xnet.monitoring.hostGrafana;
+ globalConfig.scrape_interval = "1m";
+
+ exporters = {
+ node = {
+ enable = true;
+ openFirewall = true;
+ enabledCollectors = [ "processes" "systemd" ];
+ };
+
+ # systemd = {
+ # enable = true;
+ # openFirewall = true;
+ # extraFlags = [
+ # "--systemd.collector.enable-ip-accounting"
+ # "--systemd.collector.enable-restart-count"
+ # ];
+ # };
+
+ smartctl = {
+ enable = true;
+ openFirewall = true;
+ };
+ };
+
+ scrapeConfigs =
+ let
+ hosts = [ "iridium" "radon" ];
+ in
+ [{
+ job_name = "node";
+ static_configs = [{
+ targets = map (h: "${h}:${toString exporters.node.port}") hosts;
+ }];
+ }
+ {
+ job_name = "smartctl";
+ static_configs = [{
+ targets = map (h: "${h}:${toString exporters.smartctl.port}") hosts;
+ }];
+ }];
+ };
+ };
+}