gwcelery.tasks.igwn_alert module

IGWN alert client.

gwcelery.tasks.igwn_alert.handler = {'burst_cwb': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_burst_event of gwcelery>], 'burst_mly': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_burst_event of gwcelery>], 'burst_olib': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_burst_event of gwcelery>], 'cbc_gstlal': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_cbc_event of gwcelery>], 'cbc_mbta': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_cbc_event of gwcelery>], 'cbc_pycbc': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_cbc_event of gwcelery>], 'cbc_spiir': [<@task: gwcelery.tasks.superevents.handle of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_cbc_event of gwcelery>], 'external_fermi': [<@task: gwcelery.tasks.external_triggers.handle_grb_igwn_alert of gwcelery>], 'external_integral': [<@task: gwcelery.tasks.external_triggers.handle_grb_igwn_alert of gwcelery>], 'external_snews': [<@task: gwcelery.tasks.external_triggers.handle_snews_igwn_alert of gwcelery>], 'external_swift': [<@task: gwcelery.tasks.external_triggers.handle_grb_igwn_alert of gwcelery>], 'mdc_superevent': [<@task: gwcelery.tasks.p_astro.handle of gwcelery>, <@task: gwcelery.tasks.em_bright.handle of gwcelery>, <@task: gwcelery.tasks.skymaps.handle_plot_coherence of gwcelery>, <@task: gwcelery.tasks.external_triggers.handle_grb_igwn_alert of gwcelery>, <@task: gwcelery.tasks.external_triggers.handle_snews_igwn_alert of gwcelery>, <@task: gwcelery.tasks.first2years_external.upload_external_event of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_superevent of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_posterior_samples of gwcelery>], 'superevent': [<@task: gwcelery.tasks.p_astro.handle of gwcelery>, <@task: gwcelery.tasks.em_bright.handle of gwcelery>, <@task: gwcelery.tasks.skymaps.handle_plot_coherence of gwcelery>, <@task: gwcelery.tasks.external_triggers.handle_grb_igwn_alert of gwcelery>, <@task: gwcelery.tasks.external_triggers.handle_snews_igwn_alert of gwcelery>, <@task: gwcelery.tasks.first2years_external.upload_external_event of gwcelery>, <@task: gwcelery.tasks.gwskynet.handle_cbc_superevent of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_superevent of gwcelery>, <@task: gwcelery.tasks.orchestrator.handle_posterior_samples of gwcelery>]}

Function decorator to register a handler callback for specified IGWN alert message types. The decorated function is turned into a Celery task, which will be automatically called whenever a matching IGWN alert message is received.

Parameters:
  • *keys – List of IGWN alert message types to accept

  • **kwargs – Additional keyword arguments for celery.Celery.task().

Examples

Declare a new handler like this:

@igwn_alert.handler('cbc_gstlal',
                    'cbc_spiir',
                    'cbc_pycbc',
                    'cbc_mbta')
def handle_cbc(alert_content):
    # do work here...