modules/shared/telegraf: add hostInfo script
This commit is contained in:
parent
06b72a6b95
commit
b10d79f62a
1 changed files with 22 additions and 1 deletions
|
@ -1,4 +1,19 @@
|
|||
{ inputs, lib, ... }:
|
||||
{ config, inputs, lib, pkgs, ... }:
|
||||
let
|
||||
hostInfo = pkgs.writeShellScript "host-info" ''
|
||||
nix_version="$(${config.nix.package}/bin/nix store ping --store daemon --json | ${pkgs.jq}/bin/jq -r '.version')"
|
||||
case "$(uname -s)" in
|
||||
Darwin)
|
||||
os_version="$(/usr/bin/sw_vers --productVersion)_$(/usr/bin/sw_vers --buildVersion)"
|
||||
;;
|
||||
Linux)
|
||||
os_version="$(uname -r)"
|
||||
;;
|
||||
esac
|
||||
system="$(${config.nix.package}/bin/nix eval --impure --raw --expr 'builtins.currentSystem')"
|
||||
echo "host,nix_version=$nix_version,os_version=$os_version,system=$system info=1"
|
||||
'';
|
||||
in
|
||||
{
|
||||
environment.etc =
|
||||
let
|
||||
|
@ -19,6 +34,12 @@
|
|||
};
|
||||
|
||||
services.telegraf.extraConfig.inputs = {
|
||||
exec = [
|
||||
{
|
||||
commands = [ hostInfo ];
|
||||
data_format = "influx";
|
||||
}
|
||||
];
|
||||
file = [
|
||||
{
|
||||
data_format = "prometheus";
|
||||
|
|
Loading…
Add table
Reference in a new issue