Warning
This document is for an old release of Galaxy. You can alternatively view this page in the latest release if it exists or view the top of the latest release's documentation.
galaxy.web_stack package¶
Web application stack operations
-
class
galaxy.web_stack.
ApplicationStackLogFilter
(name='')[source]¶ Bases:
logging.Filter
-
class
galaxy.web_stack.
UWSGILogFilter
(name='')[source]¶ Bases:
logging.Filter
-
class
galaxy.web_stack.
ApplicationStack
(app=None, config=None)[source]¶ Bases:
object
-
transport_class
¶ alias of
galaxy.web_stack.transport.ApplicationStackTransport
-
log_filter_class
¶ alias of
ApplicationStackLogFilter
-
log_format
= '%(name)s %(levelname)s %(asctime)s [pN:%(processName)s,p:%(process)d,tN:%(threadName)s] %(message)s'¶
-
server_name_template
= '{server_name}'¶
-
default_app_name
= 'main'¶
-
__init__
(app=None, config=None)[source]¶ Initialize self. See help(type(self)) for accurate signature.
-
init_job_handling
(job_config)[source]¶ Automatically add pools as handlers if they are named per predefined names and there is not an explicit job handler assignment configuration.
Also automatically set the preferred assignment method if pool handlers are found and an assignment method is not explicitly configured by the administrator.
-
property
pool_name
¶
-
property
configured_pools
¶
-
property
facts
¶
-
-
class
galaxy.web_stack.
MessageApplicationStack
(app=None, config=None)[source]¶
-
class
galaxy.web_stack.
UWSGIApplicationStack
(app=None, config=None)[source]¶ Bases:
galaxy.web_stack.MessageApplicationStack
Interface to the uWSGI application stack. Supports running additional webless Galaxy workers as mules. Mules must be farmed to be communicable via uWSGI mule messaging, unfarmed mules are not supported.
Note that mules will use this as their stack class even though they start with the “webless” loading point.
-
transport_class
¶ alias of
galaxy.web_stack.transport.UWSGIFarmMessageTransport
-
log_filter_class
¶ alias of
UWSGILogFilter
-
log_format
= '%(name)s %(levelname)s %(asctime)s [pN:%(processName)s,p:%(process)d,w:%(worker_id)s,m:%(mule_id)s,tN:%(threadName)s] %(message)s'¶
-
server_name_template
= '{server_name}.{pool_name}.{instance_id}'¶
-
postfork_functions
: List[Tuple[Callable, List, Dict]] = []¶
-
localhost_addrs
= ('127.0.0.1', '[::1]')¶
-
bind_all_addrs
= ('', '0.0.0.0', '[::]')¶
-
__init__
(app=None, config=None)[source]¶ Initialize self. See help(type(self)) for accurate signature.
-
property
configured_pools
¶
-
property
instance_id
¶
-
property
facts
¶
-
-
class
galaxy.web_stack.
WeblessApplicationStack
(app=None, config=None)[source]¶ Bases:
galaxy.web_stack.ApplicationStack
-
__init__
(app=None, config=None)[source]¶ Initialize self. See help(type(self)) for accurate signature.
-
property
configured_pools
¶
-
-
galaxy.web_stack.
application_stack_class
()[source]¶ Returns the correct ApplicationStack class for the stack under which this Galaxy process is running.
Submodules¶
galaxy.web_stack.handlers module¶
Utilities for dealing with the Galaxy ‘handler’ process pattern.
A ‘handler’ is a named Python process running the Galaxy application responsible for some activity such as queuing up jobs or scheduling workflows.
-
class
galaxy.web_stack.handlers.
HANDLER_ASSIGNMENT_METHODS
(value)[source]¶ -
An enumeration.
-
MEM_SELF
= 'mem-self'¶
-
DB_SELF
= 'db-self'¶
-
DB_PREASSIGN
= 'db-preassign'¶
-
DB_TRANSACTION_ISOLATION
= 'db-transaction-isolation'¶
-
DB_SKIP_LOCKED
= 'db-skip-locked'¶
-
UWSGI_MULE_MESSAGE
= 'uwsgi-mule-message'¶
-
-
exception
galaxy.web_stack.handlers.
HandlerAssignmentSkip
[source]¶ Bases:
Exception
Exception for handler assignment methods to raise if the next method should be tried.
-
class
galaxy.web_stack.handlers.
ConfiguresHandlers
[source]¶ Bases:
object
-
DEFAULT_HANDLER_TAG
= '_default_'¶
-
property
use_messaging
¶
-
property
deterministic_handler_assignment
¶
-
property
is_handler
¶ Indicate whether the current server is configured as a handler.
- Returns
bool
Get an iterable of all configured handler tags.
Get an iterable of the current process’s configured handler tags.
-
assign_handler
(obj, configured=None, **kwargs)[source]¶ Set a job handler, flush obj
Called assignment methods should raise py:class:HandlerAssignmentSkip to indicate that the next method should be tried.
- Parameters
obj (instance of
galaxy.model.Job
or other model object with aset_handler()
method.) – Object to assign a handler to (must be a model object withhandler
attribute andlog_str
callable).configured (str or None.) – Preconfigured handler (ID, tag, or None) for the given object.
- Returns
bool – True on successful assignment, False otherwise.
-
galaxy.web_stack.message module¶
Web Application Stack worker messaging
-
class
galaxy.web_stack.message.
ApplicationStackMessageDispatcher
[source]¶ Bases:
object
-
property
handler_count
¶
-
property
-
class
galaxy.web_stack.message.
ApplicationStackMessage
(target=None, **kwargs)[source]¶ Bases:
dict
-
default_handler
= None¶
-
__init__
(target=None, **kwargs)[source]¶ Initialize self. See help(type(self)) for accurate signature.
-
bind_default_handler
(obj, name)[source]¶ Bind the default handler method to obj as attribute name.
This could also be implemented as a mixin class.
-
property
target
¶
-
property
set_target
¶
-
-
class
galaxy.web_stack.message.
ParamMessage
(target=None, params=None, **kwargs)[source]¶ Bases:
galaxy.web_stack.message.ApplicationStackMessage
-
__init__
(target=None, params=None, **kwargs)[source]¶ Initialize self. See help(type(self)) for accurate signature.
-
property
params
¶
-
-
class
galaxy.web_stack.message.
TaskMessage
(target=None, params=None, **kwargs)[source]¶ Bases:
galaxy.web_stack.message.ParamMessage
-
static
default_handler
(self, msg)[source]¶ Can be bound to an instance of any class that has message handling methods named like _handle_{task}_method
-
property
task
¶
-
static
galaxy.web_stack.transport module¶
Web application stack operations
-
class
galaxy.web_stack.transport.
ApplicationStackTransport
(app, stack, dispatcher=None)[source]¶ Bases:
object
-
SHUTDOWN_MSG
= '__SHUTDOWN__'¶
-
-
class
galaxy.web_stack.transport.
UWSGIFarmMessageTransport
(app, stack, dispatcher=None)[source]¶ Bases:
galaxy.web_stack.transport.ApplicationStackTransport
Communication via uWSGI Mule Farm messages. Communication is unidirectional (workers -> mules).