daemons Package

daemons Package

arbiterdaemon Module

class shinken.daemons.arbiterdaemon.Arbiter(config_files, is_daemon, do_replace, verify_only, debug, debug_file, profile=None, analyse=None, migrate=None, arb_name='')[source]

Bases: shinken.daemon.Daemon

add(b)[source]
check_and_log_tp_activation_change()[source]
do_loop_turn()[source]
get_daemons(daemon_type)[source]

Returns the daemons list defined in our conf for the given type

get_external_commands_from_satellites()[source]
get_objects_from_from_queues()[source]
get_retention_data()[source]
go_migrate()[source]
launch_analyse()[source]
load_config_file()[source]
load_external_command(e)[source]
main()[source]
push_broks_to_broker()[source]
push_external_commands_to_schedulers()[source]
restore_retention_data(data)[source]
run()[source]
setup_new_conf()[source]

Setup a new conf received from a Master arbiter.

wait_for_master_death()[source]
class shinken.daemons.arbiterdaemon.IForArbiter(app)[source]

Bases: shinken.daemon.Interface

do_not_run()[source]
get_all_states()[source]
get_config()[source]
get_objects_properties(table, *properties)[source]
get_satellite_list(daemon_type)[source]
get_satellite_status(daemon_type, daemon_name)[source]
have_conf(magic_hash)[source]
put_conf(conf_raw)[source]
what_i_managed()[source]

brokerdaemon Module

class shinken.daemons.brokerdaemon.Broker(config_file, is_daemon, do_replace, debug, debug_file)[source]

Bases: shinken.satellite.BaseSatellite

add(elt)[source]
add_broks_to_queue(broks)[source]
clean_previous_run()[source]
do_loop_turn()[source]
do_stop()[source]
get_external_commands()[source]
get_new_broks(type='scheduler')[source]
get_objects_from_from_queues()[source]
get_retention_data()[source]
interger_internal_broks()[source]
is_connection_try_too_close(elt)[source]
main()[source]
manage_brok(b)[source]
properties = {'certs_dir': <shinken.property.StringProp object at 0x7f633f4eda90>, 'server_cert': <shinken.property.StringProp object at 0x7f633f4ed710>, 'workdir': <shinken.property.PathProp object at 0x7f633f110b10>, 'log_level': <shinken.property.LogLevelProp object at 0x7f633f4ed690>, 'ca_cert': <shinken.property.StringProp object at 0x7f633f4ed950>, 'hard_ssl_name_check': <shinken.property.BoolProp object at 0x7f633f4ede50>, 'group': <shinken.property.StringProp object at 0x7f633f4ed7d0>, 'host': <shinken.property.StringProp object at 0x7f633f4ed750>, 'local_log': <shinken.property.PathProp object at 0x7f633bc8add0>, 'spare': <shinken.property.BoolProp object at 0x7f633f6d6a90>, 'user': <shinken.property.StringProp object at 0x7f633f4edf50>, 'max_queue_size': <shinken.property.IntegerProp object at 0x7f633f6d6b10>, 'daemon_enabled': <shinken.property.BoolProp object at 0x7f633f4ed810>, 'use_ssl': <shinken.property.BoolProp object at 0x7f633f4edc50>, 'pidfile': <shinken.property.PathProp object at 0x7f633bc8ad10>, 'use_local_log': <shinken.property.BoolProp object at 0x7f633f4ed150>, 'port': <shinken.property.IntegerProp object at 0x7f633bc8ad90>, 'idontcareaboutsecurity': <shinken.property.BoolProp object at 0x7f633f4ed990>}
pynag_con_init(id, type='scheduler')[source]
restore_retention_data(data)[source]
setup_new_conf()[source]

pollerdaemon Module

class shinken.daemons.pollerdaemon.Poller(config_file, is_daemon, do_replace, debug, debug_file)[source]

Bases: shinken.satellite.Satellite

do_actions = False
do_checks = True
properties = {'certs_dir': <shinken.property.StringProp object at 0x7f633f4eda90>, 'server_cert': <shinken.property.StringProp object at 0x7f633f4ed710>, 'workdir': <shinken.property.PathProp object at 0x7f633f110b10>, 'log_level': <shinken.property.LogLevelProp object at 0x7f633f4ed690>, 'ca_cert': <shinken.property.StringProp object at 0x7f633f4ed950>, 'hard_ssl_name_check': <shinken.property.BoolProp object at 0x7f633f4ede50>, 'group': <shinken.property.StringProp object at 0x7f633f4ed7d0>, 'host': <shinken.property.StringProp object at 0x7f633f4ed750>, 'local_log': <shinken.property.PathProp object at 0x7f633b98fb10>, 'spare': <shinken.property.BoolProp object at 0x7f633f6d6a90>, 'user': <shinken.property.StringProp object at 0x7f633f4edf50>, 'max_queue_size': <shinken.property.IntegerProp object at 0x7f633f6d6b10>, 'daemon_enabled': <shinken.property.BoolProp object at 0x7f633f4ed810>, 'use_ssl': <shinken.property.BoolProp object at 0x7f633f4edc50>, 'pidfile': <shinken.property.PathProp object at 0x7f633b98fad0>, 'use_local_log': <shinken.property.BoolProp object at 0x7f633f4ed150>, 'port': <shinken.property.IntegerProp object at 0x7f633b98fa90>, 'idontcareaboutsecurity': <shinken.property.BoolProp object at 0x7f633f4ed990>}

reactionnerdaemon Module

class shinken.daemons.reactionnerdaemon.Reactionner(config_file, is_daemon, do_replace, debug, debug_file)[source]

Bases: shinken.satellite.Satellite

do_actions = True
do_checks = False
properties = {'certs_dir': <shinken.property.StringProp object at 0x7f633f4eda90>, 'server_cert': <shinken.property.StringProp object at 0x7f633f4ed710>, 'workdir': <shinken.property.PathProp object at 0x7f633f110b10>, 'log_level': <shinken.property.LogLevelProp object at 0x7f633f4ed690>, 'ca_cert': <shinken.property.StringProp object at 0x7f633f4ed950>, 'hard_ssl_name_check': <shinken.property.BoolProp object at 0x7f633f4ede50>, 'group': <shinken.property.StringProp object at 0x7f633f4ed7d0>, 'host': <shinken.property.StringProp object at 0x7f633f4ed750>, 'local_log': <shinken.property.PathProp object at 0x7f633b98fdd0>, 'spare': <shinken.property.BoolProp object at 0x7f633f6d6a90>, 'user': <shinken.property.StringProp object at 0x7f633f4edf50>, 'max_queue_size': <shinken.property.IntegerProp object at 0x7f633f6d6b10>, 'daemon_enabled': <shinken.property.BoolProp object at 0x7f633f4ed810>, 'use_ssl': <shinken.property.BoolProp object at 0x7f633f4edc50>, 'pidfile': <shinken.property.PathProp object at 0x7f633b975090>, 'use_local_log': <shinken.property.BoolProp object at 0x7f633f4ed150>, 'port': <shinken.property.IntegerProp object at 0x7f633b98fd90>, 'idontcareaboutsecurity': <shinken.property.BoolProp object at 0x7f633f4ed990>}

receiverdaemon Module

class shinken.daemons.receiverdaemon.Receiver(config_file, is_daemon, do_replace, debug, debug_file)[source]

Bases: shinken.satellite.Satellite

add(elt)[source]
do_loop_turn()[source]
do_stop()[source]
get_external_commands()[source]
get_objects_from_from_queues()[source]
get_sched_from_hname(hname)[source]
main()[source]
manage_brok(b)[source]
properties = {'certs_dir': <shinken.property.StringProp object at 0x7f633f4eda90>, 'server_cert': <shinken.property.StringProp object at 0x7f633f4ed710>, 'workdir': <shinken.property.PathProp object at 0x7f633f110b10>, 'log_level': <shinken.property.LogLevelProp object at 0x7f633f4ed690>, 'ca_cert': <shinken.property.StringProp object at 0x7f633f4ed950>, 'hard_ssl_name_check': <shinken.property.BoolProp object at 0x7f633f4ede50>, 'group': <shinken.property.StringProp object at 0x7f633f4ed7d0>, 'host': <shinken.property.StringProp object at 0x7f633f4ed750>, 'local_log': <shinken.property.PathProp object at 0x7f633b95b4d0>, 'spare': <shinken.property.BoolProp object at 0x7f633f6d6a90>, 'user': <shinken.property.StringProp object at 0x7f633f4edf50>, 'max_queue_size': <shinken.property.IntegerProp object at 0x7f633f6d6b10>, 'daemon_enabled': <shinken.property.BoolProp object at 0x7f633f4ed810>, 'use_ssl': <shinken.property.BoolProp object at 0x7f633f4edc50>, 'pidfile': <shinken.property.PathProp object at 0x7f633bce0d90>, 'use_local_log': <shinken.property.BoolProp object at 0x7f633f4ed150>, 'port': <shinken.property.IntegerProp object at 0x7f633b95b7d0>, 'idontcareaboutsecurity': <shinken.property.BoolProp object at 0x7f633f4ed990>}
push_external_commands_to_schedulers()[source]
push_host_names(sched_id, hnames)[source]
setup_new_conf()[source]

schedulerdaemon Module

class shinken.daemons.schedulerdaemon.IBroks(app)[source]

Bases: shinken.daemon.Interface

Interface for Brokers: They connect here and get all broks (data for brokers). Data must be ORDERED! (initial status BEFORE update...)

fill_initial_broks(bname)[source]
get_broks(bname)[source]
class shinken.daemons.schedulerdaemon.IChecks(app)[source]

Bases: shinken.daemon.Interface

Interface for Workers: They connect here and see if they are still OK with our running_id, if not, they must drop their checks

get_checks(do_checks=False, do_actions=False, poller_tags=['None'], reactionner_tags=['None'], worker_name='none', module_types=['fork'])[source]
get_running_id()[source]
put_results(results)[source]
class shinken.daemons.schedulerdaemon.IForArbiter(app)[source]

Bases: shinken.satellite.IForArbiter

Interface for Arbiter. We ask him a for a conf and after that listen for instructions from the arbiter. The arbiter is the interface to the administrator, so we must listen carefully and give him the information he wants. Which could be for another scheduler

put_conf(conf)[source]
run_external_commands(cmds)[source]
wait_new_conf()[source]
class shinken.daemons.schedulerdaemon.Shinken(config_file, is_daemon, do_replace, debug, debug_file)[source]

Bases: shinken.satellite.BaseSatellite

compensate_system_time_change(difference)[source]

Compensate a system time change of difference for all hosts/services/checks/notifs

do_loop_turn()[source]
do_stop()[source]
main()[source]
manage_signal(sig, frame)[source]
properties = {'certs_dir': <shinken.property.StringProp object at 0x7f633f4eda90>, 'server_cert': <shinken.property.StringProp object at 0x7f633f4ed710>, 'workdir': <shinken.property.PathProp object at 0x7f633f110b10>, 'log_level': <shinken.property.LogLevelProp object at 0x7f633f4ed690>, 'ca_cert': <shinken.property.StringProp object at 0x7f633f4ed950>, 'hard_ssl_name_check': <shinken.property.BoolProp object at 0x7f633f4ede50>, 'group': <shinken.property.StringProp object at 0x7f633f4ed7d0>, 'host': <shinken.property.StringProp object at 0x7f633f4ed750>, 'local_log': <shinken.property.PathProp object at 0x7f633b794b10>, 'spare': <shinken.property.BoolProp object at 0x7f633f6d6a90>, 'user': <shinken.property.StringProp object at 0x7f633f4edf50>, 'max_queue_size': <shinken.property.IntegerProp object at 0x7f633f6d6b10>, 'daemon_enabled': <shinken.property.BoolProp object at 0x7f633f4ed810>, 'use_ssl': <shinken.property.BoolProp object at 0x7f633f4edc50>, 'pidfile': <shinken.property.PathProp object at 0x7f633b794a50>, 'use_local_log': <shinken.property.BoolProp object at 0x7f633f4ed150>, 'port': <shinken.property.IntegerProp object at 0x7f633b794ad0>, 'idontcareaboutsecurity': <shinken.property.BoolProp object at 0x7f633f4ed990>}
setup_new_conf()[source]
what_i_managed()[source]