mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-02-16 17:14:00 +00:00
added prometheus-borgmatic-exporter module
This commit is contained in:
parent
69f015e4f4
commit
0d58b75cba
@ -27,6 +27,7 @@ let
|
||||
"bird"
|
||||
"bitcoin"
|
||||
"blackbox"
|
||||
"borgmatic"
|
||||
"buildkite-agent"
|
||||
"collectd"
|
||||
"deluge"
|
||||
|
@ -0,0 +1,34 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.services.prometheus.exporters.borgmatic;
|
||||
in
|
||||
{
|
||||
port = 9996;
|
||||
extraOpts.configFile = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
default = "/etc/borgmatic/config.yaml";
|
||||
description = ''
|
||||
The path to the borgmatic config file
|
||||
'';
|
||||
};
|
||||
|
||||
serviceOpts = {
|
||||
serviceConfig = {
|
||||
DynamicUser = false;
|
||||
ProtectSystem = false;
|
||||
ProtectHome = lib.mkForce false;
|
||||
ExecStart = ''
|
||||
${pkgs.prometheus-borgmatic-exporter}/bin/borgmatic-exporter run \
|
||||
--port ${toString cfg.port} \
|
||||
--config ${toString cfg.configFile} \
|
||||
${lib.concatMapStringsSep " " (f: lib.escapeShellArg f) cfg.extraFlags}
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
@ -177,6 +177,26 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
borgmatic = {
|
||||
exporterConfig = {
|
||||
enable = true;
|
||||
user = "root";
|
||||
};
|
||||
metricProvider = {
|
||||
services.borgmatic.enable = true;
|
||||
services.borgmatic.settings.source_directories = [ "/home" ];
|
||||
services.borgmatic.settings.repositories = [ { label = "local"; path = "/var/backup"; } ];
|
||||
services.borgmatic.settings.keep_daily = 10;
|
||||
};
|
||||
exporterTest = ''
|
||||
succeed("borgmatic rcreate -e none")
|
||||
succeed("borgmatic")
|
||||
wait_for_unit("prometheus-borgmatic-exporter.service")
|
||||
wait_for_open_port(9996)
|
||||
succeed("curl -sSf localhost:9996/metrics | grep 'borg_total_backups{repository=\"/var/backup\"} 1'")
|
||||
'';
|
||||
};
|
||||
|
||||
collectd = {
|
||||
exporterConfig = {
|
||||
enable = true;
|
||||
|
Loading…
Reference in New Issue
Block a user