Simple Acknowledge class diagram :
Simple Action class diagram :
Simple AutoSlots class diagram :
Simple BaseModule class diagram :
Simple Borg class diagram :
Simple Brok class diagram :
Simple CherryPyBackend class diagram :
Simple Comment class diagram :
Simple ComplexExpressionFactory class diagram :
Simple ComplexExpressionNode class diagram :
Simple ContactDowntime class diagram :
Simple Daemon class diagram :
Simple Daterange class diagram :
Simple DB class diagram :
Simple declared class diagram :
Simple DependencyNode class diagram :
Simple DependencyNodeFactory class diagram :
Simple Dispatcher class diagram :
Simple Downtime class diagram :
Simple DummyCommandCall class diagram :
Simple ExternalCommand class diagram :
Simple ExternalCommandManager class diagram :
Simple Graph class diagram :
Simple HTTPClient class diagram :
Simple HTTPDaemon class diagram :
Simple Load class diagram :
Simple Log class diagram :
Simple memoized class diagram :
Simple Message class diagram :
Simple ModulesContext class diagram :
Simple ModulesManager class diagram :
Simple ModulePhases class diagram :
Simple Property class diagram :
Simple SatelliteLink class diagram :
Simple Scheduler class diagram :
Simple SortedDict class diagram :
Simple Timerange class diagram :
Simple Worker class diagram :
Simple WSGIREFBackend class diagram :
Allows you to acknowledge the current problem for the specified service. By acknowledging the current problem, future notifications (for the same servicestate) are disabled.
Bases: shinken.satellitelink.SatelliteLink
Bases: shinken.satellitelink.SatelliteLinks
alias of ArbiterLink
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
This python module contains the class BaseModule that shinken modules will subclass
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.
- ...
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.
For external modules only: implement in this method the body of you main loop
Called just before the module will exit Put in this method all you need to cleanly release all open resources used by your module
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.
Request the module to manage the given brok. There a lot of different possible broks to manage.
module “main” method. Only used by external modules.
This file is to be imported by every Shinken service component: Arbiter, Scheduler, etc. It just checks for the main requirement of Shinken.
Bases: shinken.satellitelink.SatelliteLink
TODO: Add some comment about this class for the doc
Bases: shinken.satellitelink.SatelliteLinks
TODO: Add some comment about this class for the doc
alias of BrokerLink
Bases: shinken.action.Action
ODO: Add some comment about this class for the doc
return a copy of the check but just what is important for execution So we remove the ref and all
Bases: shinken.commandcall.DummyCommandCall
This class is use when a service, contact or host define a command with args.
We want to get the command and the args with ! splitting. but don’t forget to protect against the ! to do not split them
Bases: object
Bases: object
Bases: exceptions.Exception
Bases: shinken.daterange.Daterange
Bases: shinken.daterange.Daterange
Bases: shinken.daterange.Daterange
Bases: shinken.daterange.Daterange
Bases: shinken.daterange.Daterange
Bases: shinken.daterange.Daterange
Bases: object
DB is a generic class for SQL Database
Create a INSERT query in table with all data of data (a dict)
Bases: shinken.db.DB
DBMysql is a MySQL access database class
Bases: shinken.db.DB
Manage connection and query execution against Oracle databases.
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
- (
- ) (
- ___...(——-)-....___
.-“” ) ( “”-.
.-‘``’|-._ ) _.-|
/ .–.| “”—...........—”“ |
/ / | | | | | |
_..—”“` /`“”—.._
.-‘ / ‘-.
: `-.__ __.-‘ : : ) “”—...—”” ( :
‘._ “–...___...–” _.’
Bases: shinken.action.Action
TODO: Add some comment about this class for the doc
Bases: object
Bases: exceptions.Exception
Bases: object
Bases: object
Bases: exceptions.Exception
Bases: exceptions.Exception
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.
Shinken logger class, wrapping access to Python logging standard library.
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
We load the object where we will put log broks with the ‘add’ method
Old log method, kept for NAGIOS compatibility What strings should not use the new format ??
The shinken logging wrapper can write to a local file if needed and return the file descriptor so we can avoid to close it.
Bases: shinken.borg.Borg
Please Add a Docstring to describe the class here
Bases: shinken.action.Action
Please Add a Docstring to describe the class here
Bases: shinken.satellitelink.SatelliteLink
This class is the link between Arbiter and Poller. With it, arbiter can see if a poller is alive, and can send it new configuration
Bases: shinken.satellitelink.SatelliteLinks
Please Add a Docstring to describe the class here
alias of PollerLink
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.
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).
Bases: shinken.property.Property
Please Add a Docstring to describe the class here
Bases: shinken.property.Property
Please Add a Docstring to describe the class here
Bases: shinken.property.Property
Please Add a Docstring to describe the class here
Bases: shinken.property.Property
Please Add a Docstring to describe the class here
Bases: shinken.property.Property
Please Add a Docstring to describe the class here
Bases: shinken.satellitelink.SatelliteLink
Please Add a Docstring to describe the class here
Bases: shinken.satellitelink.SatelliteLinks
Please Add a Docstring to describe the class here
alias of ReactionnerLink
Bases: shinken.satellitelink.SatelliteLink
Please Add a Docstring to describe the class here
Bases: shinken.satellitelink.SatelliteLinks
Please Add a Docstring to describe the class here
alias of ReceiverLink
This class is an interface for Reactionner and Poller daemons A Reactionner listens to a port for the configuration from the Arbiter The conf contains the schedulers where actionners will gather actions.
The Reactionner keeps on listening to the Arbiter (one a timeout)
Bases: shinken.daemon.Daemon
Please Add a Docstring to describe the class here
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...)
Bases: shinken.daemon.Interface
Bases: shinken.daemon.Interface
Interface for Schedulers If we are passive, they connect to this and send/get actions
Bases: shinken.daemon.Interface
Interface for various stats about poller/reactionner activity
Bases: exceptions.Exception
Bases: shinken.satellite.BaseSatellite
Our main APP class
Bases: shinken.objects.item.Item
SatelliteLink is a common Class for link to satellite for Arbiter with Conf Dispatcher.
Bases: shinken.satellitelink.SatelliteLink
Please Add a Docstring to describe the class here
Bases: shinken.satellitelink.SatelliteLinks
Please Add a Docstring to describe the class here
alias of SchedulerLink
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;
v defaults to None.
(add reverse=True for reverse ordering).
(add reverse=True for reverse ordering).
D.__iter__() <==> iter(D) <==> D.iterkeys() -> an iterator over sorted keys (add reverse=True for reverse ordering).
(add reverse=True for reverse ordering).
If key is not found, d is returned if given, otherwise KeyError is raised
the largest key; raise KeyError if D is empty.
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)