icinga2/lib/perfdata/elasticsearchwriter.ti
2026-03-17 12:11:26 +01:00

72 lines
1.4 KiB
Text

// SPDX-FileCopyrightText: 2012 Icinga GmbH <https://icinga.com>
// SPDX-License-Identifier: GPL-2.0-or-later
#include "base/configobject.hpp"
library perfdata;
namespace icinga
{
class ElasticsearchWriter : ConfigObject
{
activation_priority 100;
[config, required] String host {
default {{{ return "127.0.0.1"; }}}
};
[config, required] String port {
default {{{ return "9200"; }}}
};
[config, required] String index {
default {{{ return "icinga2"; }}}
};
[config] bool enable_send_perfdata {
default {{{ return false; }}}
};
[config] String username;
[config, no_user_view, no_user_modify] String password;
[config] bool enable_tls {
default {{{ return false; }}}
};
[config] Dictionary::Ptr host_tags_template;
[config] Dictionary::Ptr service_tags_template;
[config] bool insecure_noverify {
default {{{ return false; }}}
};
[config] String ca_path;
[config] String cert_path;
[config] String key_path;
[config] double disconnect_timeout {
default {{{ return 10; }}}
};
[config] double flush_interval {
default {{{ return 10; }}}
};
[config] int flush_threshold {
default {{{ return 1024; }}}
};
[config] bool enable_ha {
default {{{ return false; }}}
};
};
validator ElasticsearchWriter {
Dictionary host_tags_template {
String "*";
Array "*" {
String "*";
};
};
Dictionary service_tags_template {
String "*";
Array "*" {
String "*";
};
};
};
}