Skip to content

Commit 986f7aa

Browse files
author
Shay Bergmann
committed
telegraf: only enable if monitoring exists
1 parent 2f3e9b2 commit 986f7aa

File tree

1 file changed

+27
-29
lines changed

1 file changed

+27
-29
lines changed

profiles/auxiliaries/telegraf.nix

Lines changed: 27 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -5,35 +5,8 @@ let
55
role = config.currentCoreNode.role or config.currentAwsAutoScalingGroup.role;
66
isClient = role == "client";
77
in {
8-
9-
services.telegraf.enable = true;
10-
11-
systemd.services.telegraf.path = with pkgs; [ procps ];
12-
13-
services.vulnix.sink = let
14-
inherit (config.services.telegraf.extraConfig.inputs.http_listener_v2)
15-
service_address path;
16-
address =
17-
(lib.optionalString (lib.hasPrefix ":" service_address) "127.0.0.1")
18-
+ service_address;
19-
in pkgs.writeBashChecked "vulnix-telegraf" ''
20-
function send {
21-
${pkgs.curl}/bin/curl --no-progress-meter \
22-
-XPOST http://${address}${path} --data-binary @- "$@"
23-
}
24-
25-
if [[ -n "$NOMAD_JOB_NAMESPACE$NOMAD_JOB_ID$NOMAD_JOB_TASKGROUP_NAME$NOMAD_JOB_TASK_NAME" ]]; then
26-
send \
27-
-H "X-Telegraf-Tag-nomad_namespace: $NOMAD_JOB_NAMESPACE" \
28-
-H "X-Telegraf-Tag-nomad_job: $NOMAD_JOB_ID" \
29-
-H "X-Telegraf-Tag-nomad_taskgroup: $NOMAD_JOB_TASKGROUP_NAME" \
30-
-H "X-Telegraf-Tag-nomad_task: $NOMAD_JOB_TASK_NAME"
31-
else
32-
send
33-
fi
34-
'';
35-
36-
services.telegraf = {
8+
services.telegraf = lib.mkIf (config.cluster.nodes ? monitoring) {
9+
enable = true;
3710
extraConfig = {
3811
agent = {
3912
interval = "10s";
@@ -176,4 +149,29 @@ in {
176149
};
177150
};
178151
};
152+
153+
systemd.services.telegraf.path = with pkgs; [ procps ];
154+
155+
services.vulnix.sink = let
156+
inherit (config.services.telegraf.extraConfig.inputs.http_listener_v2)
157+
service_address path;
158+
address =
159+
(lib.optionalString (lib.hasPrefix ":" service_address) "127.0.0.1")
160+
+ service_address;
161+
in pkgs.writeBashChecked "vulnix-telegraf" ''
162+
function send {
163+
${pkgs.curl}/bin/curl --no-progress-meter \
164+
-XPOST http://${address}${path} --data-binary @- "$@"
165+
}
166+
167+
if [[ -n "$NOMAD_JOB_NAMESPACE$NOMAD_JOB_ID$NOMAD_JOB_TASKGROUP_NAME$NOMAD_JOB_TASK_NAME" ]]; then
168+
send \
169+
-H "X-Telegraf-Tag-nomad_namespace: $NOMAD_JOB_NAMESPACE" \
170+
-H "X-Telegraf-Tag-nomad_job: $NOMAD_JOB_ID" \
171+
-H "X-Telegraf-Tag-nomad_taskgroup: $NOMAD_JOB_TASKGROUP_NAME" \
172+
-H "X-Telegraf-Tag-nomad_task: $NOMAD_JOB_TASK_NAME"
173+
else
174+
send
175+
fi
176+
'';
179177
}

0 commit comments

Comments
 (0)