aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2023-05-12 14:48:50 -0700
committerFranck Cuny <franck@fcuny.net>2023-05-12 14:48:50 -0700
commit21d405ab09a6f79a0eabab8e62d940e0704a57b6 (patch)
tree2dc89cc7cc5e2a8e96c7e7d58aad5e7e988a058e
parentprofiles/monitoring: move node exporter to a profile (diff)
downloadinfra-21d405ab09a6f79a0eabab8e62d940e0704a57b6.tar.gz
profiles/monitoring: move promtail to a profile
Diffstat (limited to '')
-rw-r--r--hosts/carmel/default.nix1
-rw-r--r--hosts/carmel/services.nix6
-rw-r--r--hosts/tahoe/default.nix1
-rw-r--r--hosts/tahoe/services.nix1
-rw-r--r--modules/services/monitoring/default.nix1
-rw-r--r--modules/services/monitoring/promtail.nix65
-rw-r--r--profiles/monitoring/promtail.nix54
7 files changed, 56 insertions, 73 deletions
diff --git a/hosts/carmel/default.nix b/hosts/carmel/default.nix
index b50c036..67c768b 100644
--- a/hosts/carmel/default.nix
+++ b/hosts/carmel/default.nix
@@ -10,6 +10,7 @@
"${self}/profiles/nginx.nix"
"${self}/profiles/router.nix"
"${self}/profiles/monitoring/exporter.nix"
+ "${self}/profiles/monitoring/promtail.nix"
];
boot.loader.efi.efiSysMountPoint = "/boot/efi";
diff --git a/hosts/carmel/services.nix b/hosts/carmel/services.nix
index 5b6055e..6694950 100644
--- a/hosts/carmel/services.nix
+++ b/hosts/carmel/services.nix
@@ -1,10 +1,4 @@
{ config, pkgs, ... }: {
- my.services = {
- monitoring = {
- promtail.enable = true;
- };
- };
-
services.nginx = {
streamConfig = ''
server {
diff --git a/hosts/tahoe/default.nix b/hosts/tahoe/default.nix
index a5a6533..a23c7c8 100644
--- a/hosts/tahoe/default.nix
+++ b/hosts/tahoe/default.nix
@@ -18,6 +18,7 @@ in
"${self}/profiles/music-server.nix"
"${self}/profiles/hardware/amd.nix"
"${self}/profiles/monitoring/exporter.nix"
+ "${self}/profiles/monitoring/promtail.nix"
];
# Use systemd-networkd for networking
diff --git a/hosts/tahoe/services.nix b/hosts/tahoe/services.nix
index b8745e4..a8b80b8 100644
--- a/hosts/tahoe/services.nix
+++ b/hosts/tahoe/services.nix
@@ -20,7 +20,6 @@ in
enable = true;
vhostName = "dash.${config.homelab.domain}";
};
- promtail.enable = true;
};
sendsms.enable = true;
diff --git a/modules/services/monitoring/default.nix b/modules/services/monitoring/default.nix
index fe1e219..32866cb 100644
--- a/modules/services/monitoring/default.nix
+++ b/modules/services/monitoring/default.nix
@@ -7,6 +7,5 @@ in
./grafana.nix
./loki.nix
./prometheus.nix
- ./promtail.nix
];
}
diff --git a/modules/services/monitoring/promtail.nix b/modules/services/monitoring/promtail.nix
deleted file mode 100644
index 85d34dc..0000000
--- a/modules/services/monitoring/promtail.nix
+++ /dev/null
@@ -1,65 +0,0 @@
-{ config, lib, pkgs, ... }:
-let
- cfg = config.my.services.monitoring.promtail;
-in
-{
- options.my.services.monitoring.promtail = with lib; {
- enable = mkEnableOption "promtail logs exporter";
- };
-
- config = lib.mkIf cfg.enable {
- services.promtail = {
- enable = true;
- configuration = {
- clients = [{ url = "http://192.168.6.40:3100/loki/api/v1/push"; }];
- scrape_configs = [
- {
- job_name = "journal";
- journal = {
- json = true;
- path = "/var/log/journal";
- max_age = "12h";
- labels = {
- host = config.networking.hostName;
- job = "journal";
- "__path__" = "/var/log/journal";
- };
- };
-
- relabel_configs = [
- {
- source_labels = [ "__journal__systemd_unit" ];
- target_label = "unit";
- }
- {
- source_labels = [ "__journal_priority" ];
- target_label = "priority";
- }
- {
- source_labels = [ "__journal_syslog_identifier" ];
- target_label = "syslog_id";
- }
- ];
- }
-
- {
- job_name = "nginx";
- static_configs = [{
- labels = {
- host = config.networking.hostName;
- job = "nginx";
- __path__ = "/var/log/nginx/*";
- };
- }];
- }
- ];
-
- server = {
- http_listen_port = 9832;
- http_path_prefix = "/promtail";
- grpc_listen_port = 0;
- };
- };
- };
- };
-}
diff --git a/profiles/monitoring/promtail.nix b/profiles/monitoring/promtail.nix
new file mode 100644
index 0000000..23b6669
--- /dev/null
+++ b/profiles/monitoring/promtail.nix
@@ -0,0 +1,54 @@
+{ config, lib, pkgs, ... }:
+{
+ services.promtail.enable = true;
+ services.promtail.configuration = {
+ clients = [{ url = "https://loki.${config.homelab.domain}:3100/loki/api/v1/push"; }];
+ scrape_configs = [
+ {
+ job_name = "journal";
+ journal = {
+ json = true;
+ path = "/var/log/journal";
+ max_age = "12h";
+ labels = {
+ host = config.networking.hostName;
+ job = "journal";
+ "__path__" = "/var/log/journal";
+ };
+ };
+
+ relabel_configs = [
+ {
+ source_labels = [ "__journal__systemd_unit" ];
+ target_label = "unit";
+ }
+ {
+ source_labels = [ "__journal_priority" ];
+ target_label = "priority";
+ }
+ {
+ source_labels = [ "__journal_syslog_identifier" ];
+ target_label = "syslog_id";
+ }
+ ];
+ }
+
+ {
+ job_name = "nginx";
+ static_configs = [{
+ labels = {
+ host = config.networking.hostName;
+ job = "nginx";
+ __path__ = "/var/log/nginx/*";
+ };
+ }];
+ }
+ ];
+
+ server = {
+ http_listen_port = 9832;
+ http_path_prefix = "/promtail";
+ grpc_listen_port = 0;
+ };
+ };
+}