mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-12 20:55:31 +03:00
nixos/grafana_reporter: initial service
This commit is contained in:
parent
5573795901
commit
5b30cd77db
2 changed files with 67 additions and 0 deletions
|
@ -427,6 +427,7 @@
|
||||||
./services/monitoring/dd-agent/dd-agent.nix
|
./services/monitoring/dd-agent/dd-agent.nix
|
||||||
./services/monitoring/fusion-inventory.nix
|
./services/monitoring/fusion-inventory.nix
|
||||||
./services/monitoring/grafana.nix
|
./services/monitoring/grafana.nix
|
||||||
|
./services/monitoring/grafana-reporter.nix
|
||||||
./services/monitoring/graphite.nix
|
./services/monitoring/graphite.nix
|
||||||
./services/monitoring/hdaps.nix
|
./services/monitoring/hdaps.nix
|
||||||
./services/monitoring/heapster.nix
|
./services/monitoring/heapster.nix
|
||||||
|
|
66
nixos/modules/services/monitoring/grafana-reporter.nix
Normal file
66
nixos/modules/services/monitoring/grafana-reporter.nix
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
{ options, config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.grafana_reporter;
|
||||||
|
|
||||||
|
in {
|
||||||
|
options.services.grafana_reporter = {
|
||||||
|
enable = mkEnableOption "grafana_reporter";
|
||||||
|
|
||||||
|
grafana = {
|
||||||
|
protocol = mkOption {
|
||||||
|
description = "Grafana protocol.";
|
||||||
|
default = "http";
|
||||||
|
type = types.enum ["http" "https"];
|
||||||
|
};
|
||||||
|
addr = mkOption {
|
||||||
|
description = "Grafana address.";
|
||||||
|
default = "127.0.0.1";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
port = mkOption {
|
||||||
|
description = "Grafana port.";
|
||||||
|
default = 3000;
|
||||||
|
type = types.int;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
addr = mkOption {
|
||||||
|
description = "Listening address.";
|
||||||
|
default = "127.0.0.1";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
description = "Listening port.";
|
||||||
|
default = 8686;
|
||||||
|
type = types.int;
|
||||||
|
};
|
||||||
|
|
||||||
|
templateDir = mkOption {
|
||||||
|
description = "Optional template directory to use custom tex templates";
|
||||||
|
default = "${pkgs.grafana_reporter}";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
systemd.services.grafana_reporter = {
|
||||||
|
description = "Grafana Reporter Service Daemon";
|
||||||
|
wantedBy = ["multi-user.target"];
|
||||||
|
after = ["network.target"];
|
||||||
|
serviceConfig = let
|
||||||
|
args = lib.concatSepString " " [
|
||||||
|
"-proto ${cfg.grafana.protocol}://"
|
||||||
|
"-ip ${cfg.grafana.addr}:${toString cfg.grafana.port}"
|
||||||
|
"-port :${toString cfg.port}"
|
||||||
|
"-templates ${cfg.templateDir}"
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
ExecStart = "${pkgs.grafana_reporter.bin}/bin/grafana-reporter ${args}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue