diff --git a/modules/nixos/tools/telegraf/default.nix b/modules/nixos/tools/telegraf/default.nix index d3d6e28..7391d63 100644 --- a/modules/nixos/tools/telegraf/default.nix +++ b/modules/nixos/tools/telegraf/default.nix @@ -47,38 +47,127 @@ let totalcpu = true; collect_cpu_time = false; report_active = false; + fielddrop = [ + "usage_guest" + "usage_guest_nice" + "usage_irq" + "usage_nice" + "usage_softirq" + "usage_steal" + ]; }; }) (lib.mkIf (hasCollector "mem") { - inputs.mem = { }; + inputs.mem = { + fielddrop = [ + "available_percent" + "commit_limit" + "committed_as" + "high_free" + "high_total" + "huge_page_size" + "huge_pages_free" + "huge_pages_total" + "low_free" + "low_total" + "mapped" + "page_tables" + "slab" + "sreclaimable" + "sunreclaim" + "swap_cached" + "swap_free" + "swap_total" + "vmalloc_chunk" + "vmalloc_total" + "vmalloc_used" + "write_back" + "write_back_tmp" + ]; + }; }) (lib.mkIf (hasCollector "swap") { - inputs.swap = { }; + inputs.swap = { + fielddrop = [ + "free" + ]; + }; }) (lib.mkIf (hasCollector "system") { - inputs.system = { }; + inputs.system = { + fielddrop = [ + "n_physical_cpus" + "n_unique_users" + "uptime_format" + ]; + }; }) (lib.mkIf (hasCollector "disk") { inputs.disk = { ignore_fs = [ "tmpfs" "devtmpfs" "devfs" "overlay" "squashfs" ]; + fielddrop = [ + "free" + "inodes_free" + "inodes_total" + "inodes_used" + "inodes_used_percent" + ]; }; }) (lib.mkIf (hasCollector "diskio") { inputs.diskio = { skip_serial_number = true; + fielddrop = [ + "io_svctm" + "iops_in_progress" + "merged_reads" + "merged_writes" + "weighted_io_time" + ]; }; }) (lib.mkIf (hasCollector "kernel") { - inputs.kernel = { }; + inputs.kernel = { + fielddrop = [ + "boot_time" + ]; + }; }) (lib.mkIf (hasCollector "net") { - inputs.net = { }; + inputs.net = { + fielddrop = [ + "bytes_recv" + "bytes_sent" + "speed" + ]; + }; }) (lib.mkIf (hasCollector "netstat") { - inputs.netstat = { }; + inputs.netstat = { + fielddrop = [ + "tcp_close" + "tcp_close_wait" + "tcp_closing" + "tcp_fin_wait1" + "tcp_fin_wait2" + "tcp_last_ack" + "tcp_none" + "tcp_syn_recv" + "tcp_syn_sent" + ]; + }; }) (lib.mkIf (hasCollector "processes") { - inputs.processes = { }; + inputs.processes = { + fielddrop = [ + "dead" + "idle" + "paging" + "stopped" + "unknown" + "zombies" + ]; + }; }) (lib.mkIf (hasCollector "temp") { inputs.temp = { }; @@ -98,6 +187,14 @@ let timeout = "5s"; perdevice_include = [ ]; total_include = [ ]; + fielddrop = [ + "memory_total" + "n_cpus" + "n_goroutines" + "n_listener_events" + "n_used_file_descriptors" + "server_version" + ]; }; }) (lib.mkIf (hasCollector "ping") { @@ -107,6 +204,10 @@ let interval = "60s"; timeout = 5.0; binary = "${pkgs.iputils}/bin/ping"; + fielddrop = [ + "packets_received" + "packets_transmitted" + ]; }; }) (lib.mkIf (hasCollector "gpu") {