summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorJörg Thalheim <Mic92@users.noreply.github.com>2022-07-29 11:38:47 +0100
committerGitHub <noreply@github.com>2022-07-29 11:38:47 +0100
commitdfda4ec196a5b882c1e7d962d8d635a8379766aa (patch)
treeaf8aad2a30af2cd888e33a7d783e42d8089d9298 /nixos
parent6c95536117d3b9c1e26a15b3d86dd1f8cf3be52c (diff)
parent7df5b81fc3bfaa7b8102c7523f271be85239184a (diff)
downloadnixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.tar
nixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.tar.gz
nixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.tar.bz2
nixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.tar.lz
nixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.tar.xz
nixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.tar.zst
nixpkgs-dfda4ec196a5b882c1e7d962d8d635a8379766aa.zip
Merge pull request #183269 from flokli/grafana-agent-merge-defaults
nixos/grafana-agent: ensure defaults are merged
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/monitoring/grafana-agent.nix22
1 files changed, 18 insertions, 4 deletions
diff --git a/nixos/modules/services/monitoring/grafana-agent.nix b/nixos/modules/services/monitoring/grafana-agent.nix
index bbeda184647..a4b18b4f28e 100644
--- a/nixos/modules/services/monitoring/grafana-agent.nix
+++ b/nixos/modules/services/monitoring/grafana-agent.nix
@@ -48,9 +48,10 @@ in
         freeformType = settingsFormat.type;
       };
 
-      default = {
+      default = { };
+      defaultText = ''
         metrics = {
-          wal_directory = "\${STATE_DIRECTORY}";
+          wal_directory = "\''${STATE_DIRECTORY}";
           global.scrape_interval = "5s";
         };
         integrations = {
@@ -59,8 +60,7 @@ in
           node_exporter.enabled = true;
           replace_instance_label = true;
         };
-      };
-
+      '';
       example = {
         metrics.global.remote_write = [{
           url = "\${METRICS_REMOTE_WRITE_URL}";
@@ -104,6 +104,20 @@ in
   };
 
   config = mkIf cfg.enable {
+    services.grafana-agent.settings = {
+      # keep this in sync with config.services.grafana-agent.settings.defaultText.
+      metrics = {
+        wal_directory = mkDefault "\${STATE_DIRECTORY}";
+        global.scrape_interval = mkDefault "5s";
+      };
+      integrations = {
+        agent.enabled = mkDefault true;
+        agent.scrape_integration = mkDefault true;
+        node_exporter.enabled = mkDefault true;
+        replace_instance_label = mkDefault true;
+      };
+    };
+
     systemd.services.grafana-agent = {
       wantedBy = [ "multi-user.target" ];
       script = ''