Events Package¶
Events Package¶
This package contains all the Event importers.
EventImporter Module¶
This module contains the base class for all Event importers.
-
class
HPCStats.Importer.Events.EventImporter.EventImporter(app, db, config, cluster)¶ Bases:
HPCStats.Importer.Importer.ImporterThis is the base class common to all HPCStats Event importers. It simply defines a common set of attributes.
EventImporterFactory Module¶
This module contains the factory design pattern class that builds the appropriate EventImporter depending on what is specified in configuration.
-
class
HPCStats.Importer.Events.EventImporterFactory.EventImporterFactory¶ Bases:
objectThis class simply delivers the factory() static method, there is not point to instanciate it with an object.
-
static
factory(app, db, config, cluster)¶ This method returns the appropriate EventImporter object depending on what is specified in configuration. In case of configuration error, HPCStatsConfigurationException is raised.
-
static
EventImporterSlurm Module¶
This module contains the EventImporterSlurm class.
-
class
HPCStats.Importer.Events.EventImporterSlurm.EventImporterSlurm(app, db, config, cluster)¶ Bases:
HPCStats.Importer.Events.EventImporter.EventImporterThis EventImporter imports Events from a cluster Slurm accounting database.
-
check()¶ Check if cluster Slurm database is available for connection.
-
connect_db()¶ Connect to cluster Slurm database and set conn/cur attribute accordingly. Raises HPCStatsSourceError in case of problem.
-
disconnect_db()¶ Disconnect from cluster Slurm database.
-
get_new_events(start)¶ Get all new Events from Slurm DB since start datetime. Parameter start must be a valid datetime. Returns a list of Events. The list is empty if none found.
-
load()¶ Load Events from Slurm DB and store them into self.events list attribute.
-
merge_successive_events(events)¶ Merge successive Events in the list. For example, if the list contains 2 events on node A from X to Y and from Y to Z, this method will merge them into one event on node A from Y to Z. Ex:
[ { node: N1, reason: R1, start: X, end Y }, { node: N1, reason: R1, start: Y, end Z } ] -> [ { node: N1, reason: R1, start: X, end: Z } ]
-
static
txt_slurm_event_type(reason_uid)¶ Convert reason_uid integer that holds node state in Slurm bitmap convention to string representing this state into human readable format.
-
update()¶ Update Events in DB.
-