icinga2/itl/types.conf

123 lines
2.8 KiB
Plaintext

/******************************************************************************
* Icinga 2 *
* Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software Foundation *
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
******************************************************************************/
type DynamicObject {
number __abstract,
number __local,
string __name,
string __type,
dictionary methods {
string *,
},
any custom::*
}
type Component {
}
type Logger {
string "type",
string path,
string severity
}
type Host {
string alias,
dictionary hostgroups {
string *
},
dictionary dependencies {
string *
},
dictionary hostchecks {
string *
},
dictionary services {
any * /* TODO: more specific validation rules */
},
/* service attributes */
number max_check_attempts,
number check_interval,
number retry_interval,
dictionary macros {
string *
},
dictionary servicegroups {
string *
},
dictionary checkers {
string *
}
}
type HostGroup {
string alias,
string notes_url,
string action_url
}
type IcingaApplication {
string cert_path,
string ca_path,
string node,
string service,
string pid_path,
string state_path,
dictionary macros
}
type Service {
string alias,
string host_name,
dictionary macros {
string *
},
string check_command,
number max_check_attempts,
number check_interval,
number retry_interval,
dictionary dependencies {
string *
},
dictionary servicegroups {
string *
},
dictionary checkers {
string *
}
}
type ServiceGroup {
string alias,
string notes_url,
string action_url
}
type Endpoint {
string node,
string service,
number "local"
}
type TimePeriod {
}