1 /******************************************************************************
3 * Copyright (C) 2012-2018 Icinga Development Team (https://icinga.com/) *
5 * This program is free software; you can redistribute it and/or *
6 * modify it under the terms of the GNU General Public License *
7 * as published by the Free Software Foundation; either version 2 *
8 * of the License, or (at your option) any later version. *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, write to the Free Software Foundation *
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
18 ******************************************************************************/
20 #include "base/configobject.hpp"
21 #include "base/application.hpp"
28 class PerfdataWriter : ConfigObject
30 activation_priority 80;
32 [config] String host_perfdata_path {
33 default {{{ return Configuration::SpoolDir + "/perfdata/host-perfdata"; }}}
35 [config] String service_perfdata_path {
36 default {{{ return Configuration::SpoolDir + "/perfdata/service-perfdata"; }}}
38 [config] String host_temp_path {
39 default {{{ return Configuration::SpoolDir + "/tmp/host-perfdata"; }}}
41 [config] String service_temp_path {
42 default {{{ return Configuration::SpoolDir + "/tmp/service-perfdata"; }}}
44 [config] String host_format_template {
46 return "DATATYPE::HOSTPERFDATA\t"
47 "TIMET::$host.last_check$\t"
48 "HOSTNAME::$host.name$\t"
49 "HOSTPERFDATA::$host.perfdata$\t"
50 "HOSTCHECKCOMMAND::$host.check_command$\t"
51 "HOSTSTATE::$host.state$\t"
52 "HOSTSTATETYPE::$host.state_type$";
55 [config] String service_format_template {
57 return "DATATYPE::SERVICEPERFDATA\t"
58 "TIMET::$service.last_check$\t"
59 "HOSTNAME::$host.name$\t"
60 "SERVICEDESC::$service.name$\t"
61 "SERVICEPERFDATA::$service.perfdata$\t"
62 "SERVICECHECKCOMMAND::$service.check_command$\t"
63 "HOSTSTATE::$host.state$\t"
64 "HOSTSTATETYPE::$host.state_type$\t"
65 "SERVICESTATE::$service.state$\t"
66 "SERVICESTATETYPE::$service.state_type$";
70 [config] double rotation_interval {
71 default {{{ return 30; }}}
73 [config] bool enable_ha {
74 default {{{ return true; }}}