m 2 logging: init
This commit is contained in:
parent
2f19eccf24
commit
1ca165d96d
makefu/2configs/logging
60
makefu/2configs/logging/central-stats-client.nix
Normal file
60
makefu/2configs/logging/central-stats-client.nix
Normal file
|
@ -0,0 +1,60 @@
|
|||
{pkgs, config, ...}:
|
||||
{
|
||||
services.collectd = {
|
||||
enable = true;
|
||||
autoLoadPlugin = true;
|
||||
extraConfig = ''
|
||||
Hostname ${config.krebs.build.host.name}
|
||||
LoadPlugin load
|
||||
LoadPlugin disk
|
||||
LoadPlugin memory
|
||||
LoadPlugin df
|
||||
Interval 30.0
|
||||
|
||||
LoadPlugin interface
|
||||
<Plugin "interface">
|
||||
Interface "*Link"
|
||||
Interface "lo"
|
||||
Interface "vboxnet*"
|
||||
Interface "virbr*"
|
||||
IgnoreSelected true
|
||||
</Plugin>
|
||||
|
||||
LoadPlugin df
|
||||
<Plugin "df">
|
||||
MountPoint "/nix/store"
|
||||
# MountPoint "/run*"
|
||||
# MountPoint "/sys*"
|
||||
# MountPoint "/dev"
|
||||
# MountPoint "/dev/shm"
|
||||
# MountPoint "/tmp"
|
||||
FSType "tmpfs"
|
||||
FSType "binfmt_misc"
|
||||
FSType "debugfs"
|
||||
FSType "mqueue"
|
||||
FSType "hugetlbfs"
|
||||
FSType "systemd-1"
|
||||
FSType "cgroup"
|
||||
FSType "securityfs"
|
||||
FSType "ramfs"
|
||||
FSType "proc"
|
||||
FSType "devpts"
|
||||
FSType "devtmpfs"
|
||||
MountPoint "/var/lib/docker/devicemapper"
|
||||
IgnoreSelected true
|
||||
</Plugin>
|
||||
|
||||
LoadPlugin cpu
|
||||
<Plugin cpu>
|
||||
ReportByCpu true
|
||||
ReportByState true
|
||||
ValuesPercentage true
|
||||
</Plugin>
|
||||
|
||||
LoadPlugin network
|
||||
<Plugin "network">
|
||||
Server "${config.makefu.stats-server}" "25826"
|
||||
</Plugin>
|
||||
'';
|
||||
};
|
||||
}
|
36
makefu/2configs/logging/central-stats-server.nix
Normal file
36
makefu/2configs/logging/central-stats-server.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{pkgs, config, ...}:
|
||||
|
||||
with import <stockholm/lib>;
|
||||
let
|
||||
collectd-port = 25826;
|
||||
influx-port = 8086;
|
||||
grafana-port = 3000; # TODO nginx forward
|
||||
in {
|
||||
services.grafana.enable = true;
|
||||
services.grafana.addr = "0.0.0.0";
|
||||
|
||||
services.influxdb.enable = true;
|
||||
|
||||
# forward these via nginx
|
||||
services.influxdb.extraConfig = {
|
||||
meta.hostname = config.krebs.build.host.name;
|
||||
# meta.logging-enabled = true;
|
||||
http.bind-address = ":${toString influx-port}";
|
||||
admin.bind-address = ":8083";
|
||||
monitoring = {
|
||||
enabled = false;
|
||||
# write-interval = "24h";
|
||||
};
|
||||
collectd = [{
|
||||
enabled = true;
|
||||
typesdb = "${pkgs.collectd}/share/collectd/types.db";
|
||||
database = "collectd_db";
|
||||
port = collectd-port;
|
||||
}];
|
||||
};
|
||||
networking.firewall.extraCommands = ''
|
||||
iptables -A INPUT -i retiolum -p udp --dport ${toString collectd-port} -j ACCEPT
|
||||
iptables -A INPUT -i retiolum -p tcp --dport ${toString influx-port} -j ACCEPT
|
||||
iptables -A INPUT -i retiolum -p tcp --dport ${toString grafana-port} -j ACCEPT
|
||||
'';
|
||||
}
|
Loading…
Reference in a new issue