4240
Comment:
|
2611
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
* The LIGO-Virgo Alert System (LVAlert) [[https://git.ligo.org/lscsoft/igwn-alert|igwn-alert]] * The IGWN Alert System (LVAlert) is a prototype notification service built on Apache Kafka, using the publish-subscribe (pubsub) protocol. |
* LIGO-Virgo Alert System (LVAlert) [[https://git.ligo.org/lscsoft/igwn-alert|igwn-alert]] * The International Gravitational Wave Network Alert System (igwn-alert) is a notification service built on the Apache Kafka protocol and the pubsub extension. |
Line 6: | Line 6: |
* The API are compatible with Python 3. | |
Line 8: | Line 9: |
* We can't install lvalert by [[https://computing.docs.ligo.org/conda/environments/igwn-py37/|igwn]] on conda environment. (see [[https://git.ligo.org/lscsoft/lvalert/-/issues/19|lvalert_admin broken on both conda igwn-py2 and igwn-py37 environments]]) * because lvalert depends on legacy package (`pyxmpp`) * To install lvalert on python2, |
* The latest version is 0.1.1 (2021/11/19) |
Line 12: | Line 11: |
sudo apt install python-ligo-lvalert | pip install igwn-alert |
Line 15: | Line 14: |
== Setting in advance == * see [[https://gracedb.ligo.org/documentation/responding_to_lvalert.html|this document]] |
* help {{{ % igwn-alert -h usage: igwn-alert [-h] [-g GROUP] [-l {critical,error,warning,info,debug}] [-n NETRC] [-s SERVER] [-u USERNAME] {listen,subscriptions,topics,unsubscribe,send} ... |
Line 19: | Line 19: |
* visit [[https://lvalert-test.cgca.uwm.edu]] and activate your account. | positional arguments: {listen,subscriptions,topics,unsubscribe,send} sub-command help listen Listen for igwn-alert messages and print them to stdout. subscriptions List your subscriptions topics List available pubsub topics unsubscribe Unsubscribe from one or more topics send publish contents of a file to a pubsub topic |
Line 21: | Line 28: |
* prepare `$HOME/.netrc` * albert.einstein should be your KAGRA account. * `PASSWORD` should be the password you set at Account Activation site. {{{ $ echo 'machine lvalert.cgca.uwm.edu login albert.einstein password PASSWORD' >> ~/.netrc $ echo 'machine lvalert-playground.cgca.uwm.edu login albert.einstein password PASSWORD' >> ~/.netrc $ echo 'machine lvalert-test.cgca.uwm.edu login albert.einstein password PASSWORD' >> ~/.netrc $ chmod 0600 ~/.netrc }}} == Usage of lvalert_admin == * get a list of existing nodes {{{ $ lvalert_admin -s lvalert-playground.cgca.uwm.edu --get-nodes }}} * create a test node {{{ $ lvalert_admin -s lvalert-playground.cgca.uwm.edu --create --node test_k1det Creating node test_k1det Successfully completed operation }}} * subscribe a node {{{ $ lvalert_admin -s lvalert-playground.cgca.uwm.edu --subscribe --node test_k1det Successfully subscribed to node test_k1det }}} * remove a note {{{ $ lvalert_admin -s lvalert-playground.cgca.uwm.edu --delete --node test_k1det }}} * check current subscriptions {{{ $ lvalert_admin -s lvalert-playground.cgca.uwm.edu --subscriptions }}} * unsubscribe * This works only a node which you created. {{{ $ lvalert_admin --username hirotaka.yuzurihara -s lvalert-playground.cgca.uwm.edu --node "tagoshi-testnode" }}} == Usage of lvalert_listen and lvalert_send == * launch the lvalert_listern * this should run in the background {{{ % lvalert_listen -s lvalert-playground.cgca.uwm.edu -c /users/yuzu/work/lvalert/setting/my_l isten.ini -r listener1 & }}} * prepare the dummy alert * the real alert will be sent as JSON format. (But, I don't know the actual keys.) {{{ $ cat test1.txt {"uid": "G12345", "alert_type": "new", "far": 1e-8, "gps_time": 1301640384} $ cat test2.txt {"uid": "G12345", "alert_type": "new", "far": 1e-8} }}} * prepare configuration file * when we got the alert, the following shell script will run. (Note that this shell script can't use option.) * the details of shell script at `/users/yuzu/work/lvalert` in the Kamioka workstation. * the details of configuration files at `/users/yuzu/work/lvalert/setting` in the Kamioka workstation. {{{ $ cat my_listen.ini [test_k1det] executable = ./run_test_k1det.sh |
optional arguments: -h, --help show this help message and exit -g GROUP, --group GROUP GraceDB group name (e.g., gracedb, gracedb-playground) -l {critical,error,warning,info,debug}, --log {critical,error,warning,info,debug} Log level -n NETRC, --netrc NETRC netrc file (default: read from NETRC environment variable or ~/.netrc) -s SERVER, --server SERVER igwn-alert server hostname -u USERNAME, --username USERNAME User name (default: look up in auth.toml or .netrc) |
Line 99: | Line 42: |
* send the test alert * Although test1.txt has gps_time, test2.txt has no gps_time. {{{ $ lvalert_send --username hirotaka.yuzurihara -s lvalert-playground.cgca.uwm.edu -n test_k1det --file test1.txt |
|
Line 104: | Line 43: |
$ lvalert_send --username hirotaka.yuzurihara -s lvalert-playground.cgca.uwm.edu -n test_k1det --file test2.txt }}} |
== Setting in advance == * The authentification between the client and the server is managed by SciMMA. * The first step is to make a SCiMMa account by visiting [[https://my.hop.scimma.org/|https://my.hop.scimma.org/]]. * At this time, access to igwn-alert is limited to LIGO, Virgo, or KAGRA members. |
Line 109: | Line 49: |
== Usage == | |
Line 110: | Line 51: |
== Related links == | == Links == |
Line 112: | Line 53: |
* [[https://git.ligo.org/lscsoft/igwn-alert|git repo, igwn-alert]] * [[https://lscsoft.docs.ligo.org/igwn-alert/|igwn-alert document]] * [[https://git.ligo.org/lscsoft/igwn-alert|git repo, igwn-alert]] |
|
Line 115: | Line 59: |
* [[https://git.ligo.org/lscsoft/lvalert| git repository(lvalert)]] * [[https://gwdoc.icrr.u-tokyo.ac.jp/cgi-bin/private/DocDB/ShowDocument?docid=11522|Tagoshi-san's note]] * [[https://lscsoft.docs.ligo.org/lvalert/index.html|document of lvalert (not completed)]] |
Introduction
LIGO-Virgo Alert System (LVAlert) igwn-alert
- The International Gravitational Wave Network Alert System (igwn-alert) is a notification service built on the Apache Kafka protocol and the pubsub extension.
- It is a higher-level modification of SCIMMA's hop-client to streamline receiving and responding to alerts from GraceDB.
- This package replaces the legacy LIGO LVAlert XMPP-based alert system.
- The API are compatible with Python 3.
Install
- The latest version is 0.1.1 (2021/11/19)
pip install igwn-alert
- help
% igwn-alert -h usage: igwn-alert [-h] [-g GROUP] [-l {critical,error,warning,info,debug}] [-n NETRC] [-s SERVER] [-u USERNAME] {listen,subscriptions,topics,unsubscribe,send} ... positional arguments: {listen,subscriptions,topics,unsubscribe,send} sub-command help listen Listen for igwn-alert messages and print them to stdout. subscriptions List your subscriptions topics List available pubsub topics unsubscribe Unsubscribe from one or more topics send publish contents of a file to a pubsub topic optional arguments: -h, --help show this help message and exit -g GROUP, --group GROUP GraceDB group name (e.g., gracedb, gracedb-playground) -l {critical,error,warning,info,debug}, --log {critical,error,warning,info,debug} Log level -n NETRC, --netrc NETRC netrc file (default: read from NETRC environment variable or ~/.netrc) -s SERVER, --server SERVER igwn-alert server hostname -u USERNAME, --username USERNAME User name (default: look up in auth.toml or .netrc)
Setting in advance
- The authentification between the client and the server is managed by SciMMA.
The first step is to make a SCiMMa account by visiting https://my.hop.scimma.org/.
- At this time, access to igwn-alert is limited to LIGO, Virgo, or KAGRA members.
Usage