Workflow

Here we describe the workflow of lvcgcnd after an alert is received.

lvcgcnd is a systemd wrapper for a Python script (lvcgcn) created at install time. When lvcgcnd is started it will setup a logger and release control to pygcn specifying a callback function (process_gcn) to be called when an alert is received.

Processing Steps

The sequential list of operations after an alert is received is encapsulated in the method torosgcn.listen.process_gcn and can be summarized as follows:

  • Parse VOEvent and retrieve information for specific keywords.
  • If the alert is a mock test and DEBUG_TEST is on, pass it along, otherwise return.
  • Backup VOEvent to an XML file in the filesystem, if required in the configuration.
  • Send the alert email to people in Alert Recipients.
  • Retrieve skymap (if any) from GraceDB website.
  • Save to file a copy of skymap if required in the configuration.
  • Generate targets for each observatory using the skymap and GLADE catalog.
  • Upload GCN Notice information and targets, if any, to broker website.

If any of these steps fails with error, the custom loguru logging system will send an email to the admins specified in the configuration file.

Directory Structure

lvcgcn will make use of the following files and directories:

  • /etc/systemd/system/lvcgcnd.service: The systemd service for lvcgcn daemon.
  • /etc/lvcgcn/lvcgcn-conf.yaml: The configuration file used by lvcgcn.
  • /var/lvcgcn/log: Default directory to store logs. It can be changed in the configuration file.
  • /var/lvcgcn/skymaps: Default directory to store FITS of sky maps.
  • /var/lvcgcn/VOEvents: Default directory to store VOEvent XML files.
  • /etc/lvcgcn/GLADE_2.3.csv: Default place where lvcgcn will look for GLADE catalog CSV file.