galaxy.jobs.metrics.instrumenters package

This module describes the abstract interface for InstrumentPlugin.

These are responsible for collecting and formatting a coherent set of metrics.

class galaxy.jobs.metrics.instrumenters.InstrumentPlugin[source]

Bases: object

Describes how to instrument job scripts and retrieve collected metrics.

formatter = <galaxy.jobs.metrics.formatting.JobMetricFormatter object>
plugin_type

Short string providing labelling this plugin

pre_execute_instrument(job_directory)[source]

Optionally return one or more commands to instrument job. These commands will be executed on the compute server prior to the job running.

post_execute_instrument(job_directory)[source]

Optionally return one or more commands to instrument job. These commands will be executed on the compute server after the tool defined command is ran.

job_properties(job_id, job_directory)[source]

Collect properties for this plugin from specified job directory. This method will run on the Galaxy server and can assume files created in job_directory with pre_execute_instrument and post_execute_instrument are available.

Submodules

galaxy.jobs.metrics.instrumenters.cgroup module

The module describes the cgroup job metrics plugin.

class galaxy.jobs.metrics.instrumenters.cgroup.CgroupPlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Plugin that collects memory and cpu utilization from within a cgroup.

plugin_type = 'cgroup'
formatter = <galaxy.jobs.metrics.instrumenters.cgroup.CgroupPluginFormatter object>
__init__(**kwargs)[source]
post_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

galaxy.jobs.metrics.instrumenters.collectl module

The module describes the collectl job metrics plugin.

class galaxy.jobs.metrics.instrumenters.collectl.CollectlPlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Run collectl along with job to capture system and/or process data according to specified collectl subsystems.

plugin_type = 'collectl'
formatter = <galaxy.jobs.metrics.instrumenters.collectl.CollectlFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]
post_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

galaxy.jobs.metrics.instrumenters.core module

The module describes the core job metrics plugin.

class galaxy.jobs.metrics.instrumenters.core.CorePlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Simple plugin that collects data without external dependencies. In particular it currently collects value set for Galaxy slots.

plugin_type = 'core'
formatter = <galaxy.jobs.metrics.instrumenters.core.CorePluginFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]
post_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

galaxy.jobs.metrics.instrumenters.cpuinfo module

The module describes the cpuinfo job metrics plugin.

class galaxy.jobs.metrics.instrumenters.cpuinfo.CpuInfoPlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Gather information about processor configuration from /proc/cpuinfo. Linux only.

plugin_type = 'cpuinfo'
formatter = <galaxy.jobs.metrics.instrumenters.cpuinfo.CpuInfoFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

galaxy.jobs.metrics.instrumenters.env module

The module describes the env job metrics plugin.

class galaxy.jobs.metrics.instrumenters.env.EnvPlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Instrumentation plugin capable of recording all or specific environment variables for a job at runtime.

plugin_type = 'env'
formatter = <galaxy.jobs.metrics.instrumenters.env.EnvFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]

Use env to dump all environment variables to a file.

post_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

Recover environment variables dumped out on compute server and filter out specific variables if needed.

galaxy.jobs.metrics.instrumenters.hostname module

The module describes the cpuinfo job metrics plugin.

class galaxy.jobs.metrics.instrumenters.hostname.HostnamePlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Gather hostname

plugin_type = 'hostname'
formatter = <galaxy.jobs.metrics.instrumenters.hostname.HostnameFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

galaxy.jobs.metrics.instrumenters.meminfo module

The module describes the meminfo job metrics plugin.

class galaxy.jobs.metrics.instrumenters.meminfo.MemInfoPlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Gather information about processor configuration from /proc/cpuinfo. Linux only.

plugin_type = 'meminfo'
formatter = <galaxy.jobs.metrics.instrumenters.meminfo.MemInfoFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]

galaxy.jobs.metrics.instrumenters.uname module

The module describes the uname job metrics plugin.

class galaxy.jobs.metrics.instrumenters.uname.UnamePlugin(**kwargs)[source]

Bases: galaxy.jobs.metrics.instrumenters.InstrumentPlugin

Use uname to gather operating system information about remote system job is running on. Linux only.

plugin_type = 'uname'
formatter = <galaxy.jobs.metrics.instrumenters.uname.UnameFormatter object>
__init__(**kwargs)[source]
pre_execute_instrument(job_directory)[source]
job_properties(job_id, job_directory)[source]