body file control { inputs => { "services/common.cf", "services/applications.cf", "services/inventory.cf", "services/os.cf", "services/julien.cf", }; } bundle common classify { vars: any:: "bundles" slist => { "bareos_fd", "check_mk", "common", "inventory", "julien", "nrpe", "os", "sshd", }; classes: any:: "awh" or => { "hurricane", }; "containers" or => { regline(".*/lxc/.*", "/proc/1/cgroup"), regline(".*lxc", "/proc/1/environ"), }; "console_julien" or => { "andromeda", "collab_jde", "console", "hero", "hurricane", }; "mail_servers" or => { "legend" }; "nrpe" expression => "freebsd"; "x11_desktop" or => { "hero", }; } bundle common g { vars: has_host_data:: "host_data" data => readyaml("$(sys.inputdir)/cmdb/hosts/$(sys.host).yaml", 100k); classes: any:: "has_host_data" expression => fileexists("$(sys.inputdir)/cmdb/hosts/$(sys.host).yaml"); } bundle agent main { methods: linux.!containers:: "any" usebundle => fail2ban; "any" usebundle => openvpn; nagios:: "nagios" usebundle => nagios; }