shinken
Package¶acknowledge
Module¶shinken.acknowledge.
Acknowledge
(ref, sticky, notify, persistent, author, comment, end_time=0)[source]¶Allows you to acknowledge the current problem for the specified service. By acknowledging the current problem, future notifications (for the same servicestate) are disabled.
id
= 1¶properties
= {'comment': None, 'author': None, 'sticky': None, 'end_time': None, 'id': None, 'notify': None}¶arbiterlink
Module¶autoslots
Module¶The AutoSlots Class is a MetaClass: it manages how other classes are created (Classes, not instances of theses classes). Here it’s role is to create the __slots__ list of the class with all properties of Class.properties and Class.running_properties so we do not have to add manually all properties to the __slots__ list when we add a new entry
basemodule
Module¶This python module contains the class BaseModule that shinken modules will subclass
shinken.basemodule.
BaseModule
(mod_conf)[source]¶Bases: object
This is the base class for the shinken modules. Modules can be used by the different shinken daemons/services for different tasks. Example of task that a shinken module can do:
- load additional configuration objects.
- recurrently save hosts/services status/perfdata informations in different format.
- ...
create_queues
(manager=None)[source]¶The manager is None on android, but a true Manager() elsewhere Create the shared queues that will be used by shinken daemon process and this module process. But clear queues if they were already set before recreating new one.
do_loop_turn
()[source]¶For external modules only: implement in this method the body of you main loop
do_stop
()[source]¶Called just before the module will exit Put in this method all you need to cleanly release all open resources used by your module
init
()[source]¶Handle this module “post” init ; just before it’ll be started. Like just open necessaries file(s), database(s), or whatever the module will need.
manage_brok
(brok)[source]¶Request the module to manage the given brok. There a lot of different possible broks to manage.
set_exit_handler
(sigs=None)¶work
()¶module “main” method. Only used by external modules.
bin
Module¶borg
Module¶brok
Module¶brokerlink
Module¶check
Module¶shinken.check.
Check
(status, command, ref, t_to_go, dep_check=None, id=None, timeout=10, poller_tag='None', reactionner_tag='None', env={}, module_type='fork', from_trigger=False, dependency_check=False)[source]¶Bases: shinken.action.Action
ODO: Add some comment about this class for the doc
check_time
¶check_type
¶copy_shell
()[source]¶return a copy of the check but just what is important for execution So we remove the ref and all
dep_check
¶depend_on
¶env
¶execution_time
¶exit_status
¶from_trigger
¶internal
¶is_a
¶long_output
¶module_type
¶my_type
= 'check'¶output
¶perf_data
¶poller_tag
¶properties
= {'check_type': <shinken.property.IntegerProp object at 0x7f004a056090>, 'exit_status': <shinken.property.IntegerProp object at 0x7f0049a0e7d0>, 'reactionner_tag': <shinken.property.StringProp object at 0x7f004a056f90>, 's_time': <shinken.property.FloatProp object at 0x7f004a056150>, 'check_time': <shinken.property.IntegerProp object at 0x7f004a1ba690>, 'long_output': <shinken.property.StringProp object at 0x7f0049a0e350>, 'state': <shinken.property.IntegerProp object at 0x7f0049a0e610>, 'internal': <shinken.property.BoolProp object at 0x7f004a056750>, 'u_time': <shinken.property.FloatProp object at 0x7f0049939850>, 'env': <shinken.property.StringProp object at 0x7f004a056950>, 'ref': <shinken.property.IntegerProp object at 0x7f004a1ba5d0>, 'from_trigger': <shinken.property.BoolProp object at 0x7f004a056fd0>, 'status': <shinken.property.StringProp object at 0x7f0049a0e590>, 'execution_time': <shinken.property.FloatProp object at 0x7f00499391d0>, 'worker': <shinken.property.StringProp object at 0x7f004a056f50>, 't_to_go': <shinken.property.IntegerProp object at 0x7f004a1ba9d0>, 'module_type': <shinken.property.StringProp object at 0x7f004a056f10>, 'dep_check': <shinken.property.StringProp object at 0x7f004a1bad50>, '_in_timeout': <shinken.property.BoolProp object at 0x7f0049ec5fd0>, 'type': <shinken.property.StringProp object at 0x7f0049ec5cd0>, 'depend_on': <shinken.property.StringProp object at 0x7f004a1baa10>, 'is_a': <shinken.property.StringProp object at 0x7f0049ec5b50>, 'poller_tag': <shinken.property.StringProp object at 0x7f004a056110>, 'output': <shinken.property.StringProp object at 0x7f0049a0e510>, 'perf_data': <shinken.property.StringProp object at 0x7f004a056450>}¶reactionner_tag
¶ref
¶s_time
¶state
¶status
¶t_to_go
¶type
¶u_time
¶worker
¶commandcall
Module¶shinken.commandcall.
CommandCall
(commands, call, poller_tag='None', reactionner_tag='None')[source]¶Bases: shinken.commandcall.DummyCommandCall
This class is use when a service, contact or host define a command with args.
args
¶call
¶command
¶get_command_and_args
()[source]¶We want to get the command and the args with ! splitting. but don’t forget to protect against the ! to do not split them
id
= 0¶late_relink_done
¶module_type
¶my_type
= 'CommandCall'¶poller_tag
¶properties
= {'poller_tag': <shinken.property.StringProp object at 0x7f0049dd4110>, 'reactionner_tag': <shinken.property.StringProp object at 0x7f0049dd4390>, 'valid': <shinken.property.BoolProp object at 0x7f0049dd4490>, 'call': <shinken.property.StringProp object at 0x7f0049dd4150>, 'timeout': <shinken.property.IntegerProp object at 0x7f0049dd4610>, 'late_relink_done': <shinken.property.BoolProp object at 0x7f0049dd4590>, 'command': <shinken.property.StringProp object at 0x7f0049dd45d0>, 'args': <shinken.property.StringProp object at 0x7f0049dd4a10>, 'module_type': <shinken.property.StringProp object at 0x7f0049dd4a90>}¶reactionner_tag
¶timeout
¶valid
¶comment
Module¶shinken.comment.
Comment
(ref, persistent, author, comment, comment_type, entry_type, source, expires, expire_time)[source]¶id
= 1¶properties
= {'comment': None, 'source': None, 'entry_time': None, 'comment_type': None, 'author': None, 'expire_time': None, 'entry_type': None, 'can_be_deleted': None, 'expires': None, 'persistent': None}¶complexexpression
Module¶contactdowntime
Module¶daemon
Module¶daterange
Module¶shinken.daterange.
CalendarDaterange
(syear, smon, smday, swday, swday_offset, eyear, emon, emday, ewday, ewday_offset, skip_interval, other)[source]¶Bases: shinken.daterange.Daterange
shinken.daterange.
Daterange
(syear, smon, smday, swday, swday_offset, eyear, emon, emday, ewday, ewday_offset, skip_interval, other)[source]¶months
= {'march': 3, 'august': 8, 'september': 9, 'december': 12, 'june': 6, 'july': 7, 'november': 11, 'february': 2, 'october': 10, 'may': 5, 'january': 1, 'april': 4}¶weekdays
= {'monday': 0, 'tuesday': 1, 'friday': 4, 'wednesday': 2, 'thursday': 3, 'sunday': 6, 'saturday': 5}¶shinken.daterange.
MonthDateDaterange
(syear, smon, smday, swday, swday_offset, eyear, emon, emday, ewday, ewday_offset, skip_interval, other)[source]¶Bases: shinken.daterange.Daterange
shinken.daterange.
MonthDayDaterange
(syear, smon, smday, swday, swday_offset, eyear, emon, emday, ewday, ewday_offset, skip_interval, other)[source]¶Bases: shinken.daterange.Daterange
shinken.daterange.
MonthWeekDayDaterange
(syear, smon, smday, swday, swday_offset, eyear, emon, emday, ewday, ewday_offset, skip_interval, other)[source]¶Bases: shinken.daterange.Daterange
shinken.daterange.
StandardDaterange
(day, other)[source]¶Bases: shinken.daterange.Daterange
shinken.daterange.
WeekDayDaterange
(syear, smon, smday, swday, swday_offset, eyear, emon, emday, ewday, ewday_offset, skip_interval, other)[source]¶Bases: shinken.daterange.Daterange
db
Module¶shinken.db.
DB
(table_prefix='')[source]¶Bases: object
DB is a generic class for SQL Database
create_insert_query
(table, data)[source]¶Create a INSERT query in table with all data of data (a dict)
db_mysql
Module¶shinken.db_mysql.
DBMysql
(host, user, password, database, character_set, table_prefix='', port=3306)[source]¶Bases: shinken.db.DB
DBMysql is a MySQL access database class
db_oracle
Module¶shinken.db_oracle.
DBOracle
(user, password, database, table_prefix='')[source]¶Bases: shinken.db.DB
Manage connection and query execution against Oracle databases.
db_sqlite
Module¶dispatcher
Module¶This is the class of the dispatcher. Its role is to dispatch configurations to other elements like schedulers, reactionner, pollers, receivers and brokers. It is responsible for high availability part. If an element dies and the element type has a spare, it sends the config of the dead one to the spare
downtime
Module¶shinken.downtime.
Downtime
(ref, start_time, end_time, fixed, trigger_id, duration, author, comment)[source]¶id
= 1¶properties
= {'comment': <shinken.property.StringProp object at 0x7f0048bdbed0>, 'entry_time': <shinken.property.IntegerProp object at 0x7f0048bdbcd0>, 'start_time': <shinken.property.IntegerProp object at 0x7f0048bdbd50>, 'is_in_effect': <shinken.property.BoolProp object at 0x7f0048bdbf10>, 'has_been_triggered': <shinken.property.BoolProp object at 0x7f0048bdbf50>, 'trigger_id': <shinken.property.IntegerProp object at 0x7f0048bdbdd0>, 'duration': <shinken.property.IntegerProp object at 0x7f0048bdbd90>, 'author': <shinken.property.StringProp object at 0x7f0048bdbe90>, 'can_be_deleted': <shinken.property.BoolProp object at 0x7f0048bdbf90>, 'activate_me': <shinken.property.StringProp object at 0x7f0048bdbc50>, 'real_end_time': <shinken.property.IntegerProp object at 0x7f0048bdbe50>, 'end_time': <shinken.property.IntegerProp object at 0x7f0048bdbe10>, 'fixed': <shinken.property.BoolProp object at 0x7f0048bdbd10>}¶easter
Module¶shinken.easter.
get_coffee
()[source]¶
- (
- ) (
- ___...(——-)-....___
.-“” ) ( “”-.
.-‘``’|-._ ) _.-|
/ .–.| “”—...........—”“ |
/ / | | | | | |
_..—”“` /`“”—.._
.-‘ / ‘-.
: `-.__ __.-‘ : : ) “”—...—”” ( :
‘._ “–...___...–” _.’
eventhandler
Module¶shinken.eventhandler.
EventHandler
(command, id=None, ref=None, timeout=10, env={}, module_type='fork', reactionner_tag='None')[source]¶Bases: shinken.action.Action
check_time
¶command
¶env
¶execution_time
¶exit_status
¶is_a
¶long_output
¶module_type
¶my_type
= 'eventhandler'¶output
¶perf_data
¶properties
= {'status': <shinken.property.StringProp object at 0x7f0048b81d90>, 'module_type': <shinken.property.StringProp object at 0x7f0048bc3390>, 'check_time': <shinken.property.IntegerProp object at 0x7f0048bc3250>, 'exit_status': <shinken.property.StringProp object at 0x7f0048b81e90>, 'execution_time': <shinken.property.FloatProp object at 0x7f0048b81e10>, 's_time': <shinken.property.FloatProp object at 0x7f0048bc36d0>, 'worker': <shinken.property.StringProp object at 0x7f0048bc3350>, 'timeout': <shinken.property.IntegerProp object at 0x7f0048bc3590>, 't_to_go': <shinken.property.StringProp object at 0x7f0048b817d0>, 'is_a': <shinken.property.StringProp object at 0x7f0048b81850>, 'long_output': <shinken.property.StringProp object at 0x7f0048b81550>, 'reactionner_tag': <shinken.property.StringProp object at 0x7f0048bc3310>, 'command': <shinken.property.StringProp object at 0x7f0048b81b90>, 'u_time': <shinken.property.FloatProp object at 0x7f0048bc3b50>, 'env': <shinken.property.StringProp object at 0x7f0048bc35d0>, 'output': <shinken.property.StringProp object at 0x7f0048b81fd0>, '_in_timeout': <shinken.property.StringProp object at 0x7f0048b81d50>, 'sched_id': <shinken.property.IntegerProp object at 0x7f0048bc3650>, 'type': <shinken.property.StringProp object at 0x7f0048b81c10>, 'perf_data': <shinken.property.StringProp object at 0x7f0048bc3610>}¶reactionner_tag
¶s_time
¶sched_id
¶status
¶t_to_go
¶timeout
¶type
¶u_time
¶worker
¶external_command
Module¶graph
Module¶http_client
Module¶http_daemon
Module¶load
Module¶shinken.load.
Load
(m=1, initial_value=0)[source]¶This class is for having a easy Load calculation without having to send value at regular interval (but it’s more efficient if you do this :) ) and without having a list or other stuff. It’s just an object, an update and a get You can define m: the average for m minutes. The val is the initial value. It’s better if it’s 0 but you can choose.
log
Module¶shinken.log.
Log
[source]¶Shinken logger class, wrapping access to Python logging standard library.
CRITICAL
= 50¶DEBUG
= 10¶ERROR
= 40¶INFO
= 20¶NOTSET
= 0¶WARNING
= 30¶get_level_id
(lvlName)[source]¶Convert a level name (string) to its integer value and vice-versa. Input a level and it will return a name. Raise KeyError when name or level not found
load_obj
(object, name_=None)[source]¶We load the object where we will put log broks with the ‘add’ method
log
(message, format=None, print_it=True)[source]¶Old log method, kept for NAGIOS compatibility What strings should not use the new format ??
register_local_log
(path, level=None)[source]¶The shinken logging wrapper can write to a local file if needed and return the file descriptor so we can avoid to close it.
macroresolver
Module¶shinken.macroresolver.
MacroResolver
[source]¶Bases: shinken.borg.Borg
Please Add a Docstring to describe the class here
macros
= {'TOTALSERVICESCRITICALUNHANDLED': '_get_total_services_critical_unhandled', 'PROCESSSTARTTIME': '_get_process_start_time', 'SHORTDATETIME': '_get_short_date_time', 'TOTALHOSTPROBLEMSUNHANDLED': '_get_total_host_problems_unhandled', 'TOTALSERVICESWARNINGUNHANDLED': '_get_total_services_warning_unhandled', 'TOTALSERVICEPROBLEMSUNHANDLED': '_get_total_service_problems_unhandled', 'DATE': '_get_date', 'TOTALHOSTSUP': '_get_total_hosts_up', 'TOTALSERVICESCRITICAL': '_get_total_services_critical', 'TOTALHOSTSUNREACHABLEUNHANDLED': '_get_total_hosts_unreachable_unhandled', 'TIMET': '_get_timet', 'TOTALHOSTSUNREACHABLE': '_get_total_hosts_unreachable', 'TOTALSERVICESUNKNOWN': '_get_total_services_unknown', 'TOTALHOSTSDOWNUNHANDLED': '_get_total_hosts_unhandled', 'TOTALSERVICESUNKNOWNUNHANDLED': '_get_total_services_unknown_unhandled', 'EVENTSTARTTIME': '_get_events_start_time', 'TOTALSERVICESOK': '_get_total_service_ok', 'TOTALSERVICEPROBLEMS': '_get_total_service_problems', 'TOTALHOSTSDOWN': '_get_total_hosts_down', 'TOTALHOSTPROBLEMS': '_get_total_host_problems', 'LONGDATETIME': '_get_long_date_time', 'TIME': '_get_time', 'TOTALSERVICESWARNING': '_get_total_services_warning'}¶my_type
= 'macroresolver'¶memoized
Module¶message
Module¶modulesctx
Module¶modulesmanager
Module¶notification
Module¶shinken.notification.
Notification
(type='PROBLEM', status='scheduled', command='UNSET', command_call=None, ref=None, contact=None, t_to_go=0, contact_name='', host_name='', service_description='', reason_type=1, state=0, ack_author='', ack_data='', escalated=False, contacts_notified=0, start_time=0, end_time=0, notification_type=0, id=None, notif_nb=1, timeout=10, env={}, module_type='fork', reactionner_tag='None')[source]¶Bases: shinken.action.Action
Please Add a Docstring to describe the class here
ack_data
¶already_start_escalations
¶check_time
¶command
¶command_call
¶contact
¶contact_name
¶contacts_notified
¶creation_time
¶end_time
¶env
¶escalated
¶execution_time
¶exit_status
¶host_name
¶is_a
¶macros
= {'NOTIFICATIONAUTHORNAME': 'author_name', 'HOSTNOTIFICATIONNUMBER': 'notif_nb', 'NOTIFICATIONAUTHORALIAS': 'author_alias', 'NOTIFICATIONRECIPIENTS': 'recipients', 'HOSTNOTIFICATIONID': 'id', 'NOTIFICATIONAUTHOR': 'author', 'NOTIFICATIONISESCALATED': 'escalated', 'NOTIFICATIONTYPE': 'type', 'SERVICENOTIFICATIONNUMBER': 'notif_nb', 'NOTIFICATIONCOMMENT': 'comment', 'SERVICENOTIFICATIONID': 'id'}¶module_type
¶my_type
= 'notification'¶notif_nb
¶notification_type
¶output
¶properties
= {'reason_type': <shinken.property.StringProp object at 0x7f0048690310>, 'status': <shinken.property.StringProp object at 0x7f0048690710>, 'u_time': <shinken.property.FloatProp object at 0x7f00486905d0>, 'ack_data': <shinken.property.StringProp object at 0x7f0048690410>, 'execution_time': <shinken.property.FloatProp object at 0x7f0048690590>, 'creation_time': <shinken.property.IntegerProp object at 0x7f0048690950>, 'start_time': <shinken.property.StringProp object at 0x7f00486901d0>, 's_time': <shinken.property.FloatProp object at 0x7f0048690610>, 'worker': <shinken.property.StringProp object at 0x7f00486908d0>, 'command_call': <shinken.property.StringProp object at 0x7f0048690550>, 'notif_nb': <shinken.property.IntegerProp object at 0x7f00486906d0>, 'reactionner_tag': <shinken.property.StringProp object at 0x7f0048690910>, 'module_type': <shinken.property.StringProp object at 0x7f0048690890>, 't_to_go': <shinken.property.IntegerProp object at 0x7f0048690750>, 'service_description': <shinken.property.StringProp object at 0x7f00486902d0>, 'notification_type': <shinken.property.IntegerProp object at 0x7f0048690190>, 'contact_name': <shinken.property.StringProp object at 0x7f0048690250>, 'sched_id': <shinken.property.IntegerProp object at 0x7f00486907d0>, 'timeout': <shinken.property.IntegerProp object at 0x7f0048690810>, 'exit_status': <shinken.property.IntegerProp object at 0x7f0048690510>, 'check_time': <shinken.property.IntegerProp object at 0x7f0048690850>, 'contacts_notified': <shinken.property.StringProp object at 0x7f0048690490>, 'ack_author': <shinken.property.StringProp object at 0x7f00486903d0>, 'escalated': <shinken.property.BoolProp object at 0x7f0048690450>, 'is_a': <shinken.property.StringProp object at 0x7f0048690110>, 'state': <shinken.property.StringProp object at 0x7f0048690350>, 'contact': <shinken.property.StringProp object at 0x7f0048690650>, 'command': <shinken.property.StringProp object at 0x7f0048690790>, 'end_time': <shinken.property.StringProp object at 0x7f0048690210>, 'env': <shinken.property.StringProp object at 0x7f00486904d0>, 'output': <shinken.property.StringProp object at 0x7f0048690390>, '_in_timeout': <shinken.property.BoolProp object at 0x7f0048690690>, 'already_start_escalations': <shinken.property.StringProp object at 0x7f0048690990>, 'type': <shinken.property.StringProp object at 0x7f0048690150>, 'host_name': <shinken.property.StringProp object at 0x7f0048690290>}¶reactionner_tag
¶reason_type
¶s_time
¶sched_id
¶service_description
¶start_time
¶state
¶status
¶t_to_go
¶timeout
¶type
¶u_time
¶worker
¶pollerlink
Module¶property
Module¶shinken.property.
UnusedProp
(text=None)[source]¶Bases: shinken.property.Property
A unused Property. These are typically used by Nagios but no longer useful/used by Shinken.
This is just to warn the user that the option he uses is no more used in Shinken.
shinken.property.
BoolProp
(default=<object object>, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True)[source]¶Bases: shinken.property.Property
A Boolean Property.
Boolean values are currently case insensitively defined as 0, false, no, off for False, and 1, true, yes, on for True).
shinken.property.
IntegerProp
(default=<object object>, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True)[source]¶Bases: shinken.property.Property
Please Add a Docstring to describe the class here
shinken.property.
FloatProp
(default=<object object>, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True)[source]¶Bases: shinken.property.Property
Please Add a Docstring to describe the class here
shinken.property.
CharProp
(default=<object object>, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True)[source]¶Bases: shinken.property.Property
Please Add a Docstring to describe the class here
shinken.property.
StringProp
(default=<object object>, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True)[source]¶Bases: shinken.property.Property
Please Add a Docstring to describe the class here
shinken.property.
ListProp
(default=<object object>, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True)[source]¶Bases: shinken.property.Property
Please Add a Docstring to describe the class here
reactionnerlink
Module¶receiverlink
Module¶satellite
Module¶satellitelink
Module¶scheduler
Module¶schedulerlink
Module¶singleton
Module¶sorteddict
Module¶shinken.sorteddict.
SortedDict
(*args, **kwargs)[source]¶Bases: dict
Dictionary with sorted keys.
The interface is similar to the ordinary dict’s one, but: * methods: __repr__(), __str__(), __iter__(), iterkeys(), itervalues(),
iteritems(), keys(), values(), items() and popitem() – return results taking into consideration sorted keys order;
fromkeys
(S[, v]) → New dict with keys from S and values equal to v.[source]¶v defaults to None.
items
() → a list of (key, value) pairs sorted by keys[source]¶(add reverse=True for reverse ordering).
iteritems
() → an iterator over (key, value) pairs sorted by keys[source]¶(add reverse=True for reverse ordering).
iterkeys
(reverse=False)¶D.__iter__() <==> iter(D) <==> D.iterkeys() -> an iterator over sorted keys (add reverse=True for reverse ordering).
itervalues
() → an iterator over values sorted by keys[source]¶(add reverse=True for reverse ordering).
pop
(k[, d]) → v, remove specified key and return the corresponding value.[source]¶If key is not found, d is returned if given, otherwise KeyError is raised
popitem
() → (k, v). Remove and return a (key, value) pair with[source]¶the largest key; raise KeyError if D is empty.
trigger_functions
Module¶util
Module¶worker
Module¶shinken.worker.
Worker
(id, s, returns_queue, processes_by_worker, mortal=True, timeout=300, max_plugins_output_length=8192, target=None, loaded_into='unknown')[source]¶This class is used for poller and reactionner to work. The worker is a process launch by theses process and read Message in a Queue (self.s) (slave) They launch the Check and then send the result in the Queue self.m (master) they can die if they do not do anything (param timeout)
id
= 0¶objects
Packagebusinessimpactmodulation
Modulecheckmodulation
Modulecommand
Moduleconfig
Modulecontact
Modulecontactgroup
Modulediscoveryrule
Modulediscoveryrun
Moduleescalation
Modulehost
Modulehostdependency
Modulehostescalation
Modulehostextinfo
Modulehostgroup
Moduleitem
Moduleitemgroup
Modulemacromodulation
Modulematchingitem
Modulemodule
Modulenotificationway
Modulepack
Modulerealm
Moduleresultmodulation
Moduleschedulingitem
Moduleservice
Moduleservicedependency
Moduleserviceescalation
Moduleserviceextinfo
Moduleservicegroup
Moduletimeperiod
Moduletrigger
Module