summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/stats/telegraf
diff options
context:
space:
mode:
authornin <nineinchnade@gmail.com>2017-09-29 19:11:43 +0200
committernin <nineinchnade@gmail.com>2017-09-29 19:11:43 +0200
commitf4bf9110727f2c7113c80aaa88427b81605016ae (patch)
treea56a491867eeb0deaca97c7ff272d563a026ec5c /makefu/2configs/stats/telegraf
parent7a7d085d33e1aa8e97f9f91d0fe53a1e378ce75e (diff)
parent6dfe071664136790b7d62bf062e090722997372f (diff)
Merge branch 'master' of prism:stockholm
Diffstat (limited to 'makefu/2configs/stats/telegraf')
-rw-r--r--makefu/2configs/stats/telegraf/default.nix20
-rw-r--r--makefu/2configs/stats/telegraf/europastats.nix43
2 files changed, 63 insertions, 0 deletions
diff --git a/makefu/2configs/stats/telegraf/default.nix b/makefu/2configs/stats/telegraf/default.nix
new file mode 100644
index 00000000..4da6561d
--- /dev/null
+++ b/makefu/2configs/stats/telegraf/default.nix
@@ -0,0 +1,20 @@
+{...}:
+let
+ url = "http://localhost:8086";
+in {
+ imports = [
+ ./europastats.nix
+ ];
+ services.telegraf = {
+ enable = true;
+ extraConfig = {
+ agent.debug = true;
+ outputs = {
+ influxdb = [{
+ urls = [ url ];
+ database = "telegraf";
+ }];
+ };
+ };
+ };
+}
diff --git a/makefu/2configs/stats/telegraf/europastats.nix b/makefu/2configs/stats/telegraf/europastats.nix
new file mode 100644
index 00000000..9249280c
--- /dev/null
+++ b/makefu/2configs/stats/telegraf/europastats.nix
@@ -0,0 +1,43 @@
+{ pkgs, ...}:
+let
+ pkg = with pkgs.python3Packages;buildPythonPackage rec {
+ rev = "be31da7";
+ name = "europastats-${rev}";
+ propagatedBuildInputs = [
+ requests2
+ docopt
+ ];
+ src = pkgs.fetchgit {
+ url = "http://cgit.euer.krebsco.de/europastats";
+ inherit rev;
+ sha256 = "0qj18vgj9nm6aisyqhk3iz3rf8xp7mn5jc6sfylcaw588a9sjfvc";
+ };
+ };
+in {
+ services.telegraf.extraConfig.inputs.exec = [
+ {
+ commands = [ "${pkg}/bin/europa-attractions"];
+ timeout = "1m";
+ data_format = "json";
+ name_override = "europawaiting";
+ interval = "1m";
+ tag_keys = [
+ "status"
+ "type"
+ "name"
+ ];
+ }
+ {
+ commands = [ "${pkg}/bin/europa-weather"];
+ timeout = "20s";
+ data_format = "json";
+ name_override = "europaweather";
+ interval = "10m";
+ tag_keys = [
+ "type"
+ "name"
+ "offset"
+ ];
+ }
+ ];
+}