1/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ 2 3#include "base/configobject.hpp" 4#include <cstdint> 5 6library remote; 7 8namespace icinga 9{ 10 11class Endpoint : ConfigObject 12{ 13 load_after Zone; 14 15 [config] String host; 16 [config, required] String port { 17 default {{{ return "5665"; }}} 18 }; 19 [config] double log_duration { 20 default {{{ return 86400; }}} 21 }; 22 23 [state] Timestamp local_log_position; 24 [state] Timestamp remote_log_position; 25 [state] "unsigned long" icinga_version { 26 default {{{ return 0; }}} 27 }; 28 [state] uint_fast64_t capabilities { 29 default {{{ return 0; }}} 30 }; 31 32 [no_user_modify] bool connecting; 33 [no_user_modify] bool syncing; 34 35 [no_user_modify, no_storage] bool connected { 36 get; 37 }; 38 39 Timestamp last_message_sent; 40 Timestamp last_message_received; 41 42 [no_user_modify, no_storage] double messages_sent_per_second { 43 get; 44 }; 45 46 [no_user_modify, no_storage] double messages_received_per_second { 47 get; 48 }; 49 50 [no_user_modify, no_storage] double bytes_sent_per_second { 51 get; 52 }; 53 54 [no_user_modify, no_storage] double bytes_received_per_second { 55 get; 56 }; 57}; 58 59} 60