Setting up the Alert Production Database for ap_pipe¶
ap_pipe.py needs an existing Alert Production Database (APDB) in which to store its results. Such a database will be provided externally during operations, but developers can run make_apdb.py to set up their own database for testing. This page provides an overview of how to use make_apdb.py.
Configuring the database¶
ap_pipe.py includes information about the database location and schema in its ApPipeConfig
, and most users pass this information to the script through the --config
and --configfile
command-line options.
make_apdb.py also uses ApPipeConfig
and the --config
and --configfile
options, so users can pass exactly the same arguments to make_apdb.py and ap_pipe.py.
Supporting identical command line arguments for both scripts makes it easy to keep the database settings in sync.
For more information on the configuration options themselves, see lsst.dax.apdb.ApdbConfig
.
apdb.db_url
has no default and must be set to create a valid config.
Examples¶
Databases can be configured using direct config overrides:
make_apdb.py -c apdb.isolation_level=READ_UNCOMMITTED apdb.db_url="sqlite:///databases/apdb.db" differencer.coaddName=dcr
ap_pipe.py -c apdb.isolation_level=READ_UNCOMMITTED apdb.db_url="sqlite:///databases/apdb.db" differencer.coaddName=dcr repo --calib repo/calibs --rerun myrun --id
make_apdb.py ignores any ApPipeConfig
fields not related to the APDB (in the example, differencer.coaddName
), so there is no need to filter them out.
Databases can also be set up using config files:
make_apdb.py -C myApPipeConfig.py
ap_pipe.py repo --calib repo/calibs --rerun myrun -C myApPipeConfig.py --id