Checklist is a Python module for verifying the real-time availability and performance metrics of seismological stations monitored by the Colombian National Seismological Network (RSNC) integrated to the architecture of data adqusition and processing based on SeisComP and linked to Siigeo database of RSNC.
This module operates on Linux and was built with Python 3.12+. To use this module, you must install the packages specified in requirements.txt. Some of the key packages are listed below:
- colorama
- openpyxl
- pandas
- seiscomp
- tqdm
Important
Although SeisComP is a required package to run this module, it's important to highlight that this module is built in a different environment to encapsulate its functionality and to avoid possible dependency conflicts from SeisComP.
To avoid dependency conflicts, we suggest using uv or pip as your preferred Python package manager and creating a virtual environment. The installation process might vary slightly depending on whether you choose Miniconda, Conda, or Mamba. In this case, we explain how to start the project using uv and pip in the following section.
Navigate to the module's root folder, ../checklist/, and execute the command to establish the virtual environment and install dependencies from pyproject.toml.
uv syncWithin of module's root folder ../checklist/, To begin the installation, create the virtual environment with this command::
python3 -m venv <ENV_NAME>Next, enable the virtual environment and install the dependencies specified in requirements.txt executing the following commands below:
source <ENV_NAME>/bin/activate
pip install -r requirements.txtThis module contains a suite of tests to confirm that all functionality operates correctly. To check the module, within module's root folder ../checklist/, enable the virtual environment and execute the following command:
python3 -m unittest discover -p "*_test.py" -vIf all tests passed correctly, the module is working properly. In other case, please contact to the developer to report the problem.
We suggest to set an alias in your bash profile for ease to use. Depending of your Python package manager, to use the module need to execute some of following commands listed below:
With uv manager:
uv run <path_to_project>/src/main.py <options>Important
uv allow us to run the module directly because it automatically load virtual environment associated with the module.
With pip manager:
source .venv/bin/activate; python3 <path_to_dir>/src/main.py <options>Note
If you are working in .191 RSNC server, it's not neccesary to declare python3, since Python environment is configured by default. In this case, you can execute the module directly with the command checklist according to the following structure:
checklist <options>where:
<path_to_dir>: Need to declare the path to the folder where the routine is stored. We recommend to include it in PATH environment variable for more convenience.<options>: There are additional parameters can be declared to activate additional parameters in the routine:+hor+helpDisplay a menu on terminal which show different avalaible options.+oor+outputExport results as csv files.+por+printDisplay delays in a user-friendly manner (day, hour, minute, seconds).+sor+statPresent performance metrics by sensor types.+snor+stat_natPresent performance metrics categorized by transmission types.+tor+timeRe-validate stations status after a specified time interval in seconds. By default is set as 30 seconds.+uor+updateIntegrate station updates from the Siigeo database++offlineShow stations with offline status. Can be combined with others filters.++intermittentShow stations with intermittent status. Can be combined with others filters.++onlineShow stations with online status. Can be combined with others filters.++serverDefine server to perform checklist. Avalaible options are: 91, 95, 232, 13, 97 and 2.
Note
For instance, if we want to verify the real-time availabity and performance metrics by sensor types of monitored RSNC stations and save the results in csv files, we can execute the following command:
checklist +s +oThis project was developed by William Eduardo Peñaranda Arévalo, Geophysical Analyst, with the supervision of Angel Agudelo, Seismologist. Both belong to the working group: Evaluation, Monitoring, and Diagnostic of Geological Dynamics at Colombian Geological Survey (SGC, acronym in spanish).
