Web Obs Manual
User Manual:
Open the PDF directly: View PDF .
Page Count: 75
Download | |
Open PDF In Browser | View PDF |
WebObs : An integrated web-based system for networks management and data monitoring in observatories User and Administration Manual François Beauducel and Didier Lafon Institut de Physique du Globe de Paris Observatories Release v2.1.2, April 2019 ii Contents Introduction 1 Installation 1.1 Overview . . . . . . . . . . . 1.2 System requirements . . . . 1.2.1 System and package . 1.2.2 Software requirements 1.3 Initial installation . . . . . . 1.4 Upgrades . . . . . . . . . . . 1.5 qsys - query configuration . . 1.6 Configuration files syntax . . 1.7 WebObs tree . . . . . . . . 1.8 License . . . . . . . . . . . . vii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 1 2 2 3 3 4 5 6 2 Reference 2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . 2.2 Nodes: Elementary WebObs Objects . . . . . . . . 2.2.1 Create, edit or delete a NODE . . . . . . . 2.2.2 Names and codes . . . . . . . . . . . . . . 2.2.3 Lifetime and validity . . . . . . . . . . . . . 2.2.4 Grids memberships . . . . . . . . . . . . . 2.2.5 Geographic location . . . . . . . . . . . . . 2.2.6 Transmission . . . . . . . . . . . . . . . . . 2.2.7 Proc’s parameters and data status . . . . . 2.2.8 Features . . . . . . . . . . . . . . . . . . . 2.2.9 Installation, information and access . . . . . 2.2.10 Photos, diagrams and associated documents 2.2.11 Project . . . . . . . . . . . . . . . . . . . . 2.2.12 Events . . . . . . . . . . . . . . . . . . . . 2.3 Grids: networks of nodes . . . . . . . . . . . . . . 2.3.1 Views . . . . . . . . . . . . . . . . . . . . 2.3.2 Procs . . . . . . . . . . . . . . . . . . . . 2.3.3 Forms . . . . . . . . . . . . . . . . . . . . 2.3.4 Project . . . . . . . . . . . . . . . . . . . . 2.3.5 Events . . . . . . . . . . . . . . . . . . . . 2.3.6 TMap: GRIDS diagram . . . . . . . . . . . 2.4 Events Logging . . . . . . . . . . . . . . . . . . . 2.5 Web pages . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Main menu . . . . . . . . . . . . . . . . . 2.5.2 Home page . . . . . . . . . . . . . . . . . 2.5.3 Wiki pages . . . . . . . . . . . . . . . . . . 2.5.4 Tools pages . . . . . . . . . . . . . . . . . 2.5.5 Application pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7 7 9 9 9 9 10 11 11 13 13 13 13 13 14 15 16 16 16 16 17 17 18 18 18 18 18 18 3 Built-in applications 3.1 The Gazette . . . . . . . . . 3.1.1 Overview . . . . . . . 3.1.2 Configuration . . . . 3.1.3 Display/Edit Gazette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 19 19 19 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii . . . . iv CONTENTS 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 GRIDMAPS and LOCASTAT: maps of georeferenced nodes . . . 3.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.2 GRIDMAPS . . . . . . . . . . . . . . . . . . . . . . . . 3.2.3 LOCASTAT . . . . . . . . . . . . . . . . . . . . . . . . SEFRAN3/MC3: seismic chart and bulletin . . . . . . . . . . . 3.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 SEFRAN3 installation . . . . . . . . . . . . . . . . . . . 3.3.3 MC3 configuration . . . . . . . . . . . . . . . . . . . . 3.3.4 Links with earthquake event catalogs . . . . . . . . . . . GENPLOT: generic time series . . . . . . . . . . . . . . . . . . 3.4.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . HYPOMAP: Earthquake hypocenter maps from seismic catalog 3.5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . HELICORDER: Seismic helicorder . . . . . . . . . . . . . . . . 3.6.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . RSAM: Realtime Seismic Amplitude Measurement . . . . . . . . 3.7.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . GNSS: GPS time series, vectors and modelling . . . . . . . . . . 3.8.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . EXTENSO: Extensometry time series and vectors . . . . . . . . 3.9.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.9.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . TILT: Tiltmetry time series, vectors and modelling . . . . . . . 3.10.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.10.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . METEO: meteorological time series . . . . . . . . . . . . . . . . 3.11.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . WATERS: chemical analysis . . . . . . . . . . . . . . . . . . . . 3.12.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.12.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . PROCS graph and data request . . . . . . . . . . . . . . . . . . 3.13.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13.2 Description . . . . . . . . . . . . . . . . . . . . . . . . 3.13.3 Configuration . . . . . . . . . . . . . . . . . . . . . . . Data formats available for PROCS . . . . . . . . . . . . . . . . 3.14.1 Waveforms formats . . . . . . . . . . . . . . . . . . . . 3.14.2 Generic time series . . . . . . . . . . . . . . . . . . . . 3.14.3 Quakes catalogs . . . . . . . . . . . . . . . . . . . . . . 3.14.4 GNSS solutions . . . . . . . . . . . . . . . . . . . . . . 3.14.5 Other specific formats . . . . . . . . . . . . . . . . . . . 4 Administration 4.1 Users, Groups and Authorizations . . . . . . . . . . . . . 4.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . 4.1.2 Users table and Groups table . . . . . . . . . . . 4.1.3 Resource tables . . . . . . . . . . . . . . . . . . 4.1.4 Managing Users and Authorizations . . . . . . . 4.1.5 Developing with Users and Authorizations system 4.1.6 Adding a new user . . . . . . . . . . . . . . . . . 4.2 PostBoard . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Event names . . . . . . . . . . . . . . . . . . . . 4.2.3 Managing PostBoard Subscriptions . . . . . . . . 4.2.4 Developing with Notifications . . . . . . . . . . . 4.3 Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 21 21 22 23 23 24 27 29 29 29 30 31 31 31 33 33 33 34 34 34 36 36 36 38 38 38 39 39 39 40 40 40 42 42 42 43 43 43 44 44 44 45 46 47 47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 49 49 49 50 50 50 50 50 50 51 51 52 52 CONTENTS 4.4 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 WOC 4.4.1 v Overview . . . . . . . . . . . Configuration and Tables . . Jobs selection and execution Scheduler manager . . . . . Scheduler runs . . . . . . . . Scheduler status . . . . . . . Scheduler command line . . . . . . . . . . . . . . . . . . . Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Developments 5.1 Use PROC’s output graphics facilities . . 5.1.1 Graphs per time scale . . . . . . . 5.1.2 Graphs per event . . . . . . . . . 5.2 SUPERPROCS: Templates for applications 5.2.1 Superprocs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 53 54 54 55 55 56 57 58 . . . . . . . . . . . . . . . . . . . . . . . . development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 59 59 60 60 60 Appendix 61 Acknowledgments 65 vi CONTENTS Introduction Seismological and Volcanological observatories have common needs and often common practical problems for multi disciplinary data monitoring applications. In fact, access to integrated data in real-time and estimation of measurements uncertainties are keys for an efficient interpretation and decision making. But instruments variety, data sampling, heterogeneity of acquisition systems lead to difficulties that may hinder crisis management. Since early 2001, we faced this problem in the Guadeloupe volcanological observatory and we developed an operational system that attempts to answer these questions in the context of a pluri-instrumental observatory. Based on a single computer server, open source scripts (Perl, Bash, Matlab with compiled binaries, Octave, Python) and a Web interface (Apache), the system named WebObs proposes: • an extended database for networks management, stations and sensors (maps, station file with log history, technical characteristics, meta-data, photos and associated documents); • web-form interfaces for manual data input/editing and export (like geochemical analysis, repetition deformation measurements, ...); • routine data processing with dedicated automatic scripts for each technique, production of validated data outputs, static graphs on preset moving time intervals, possible e-mail alarms; • acquisition processes, stations and individual sensors status automatic check for technical control. In the special case of seismology, WebObs includes a digital stripchart multichannel continuous seismogram compatible with international standards (SEED) associated with EarthWorm 1 and SeisComP3 2 event database, event classification database, automatic shakemaps and regional catalog with associated hypocenter maps accessed through a user request form. This system leads to a real-time Internet access for integrated monitoring and becomes a strong support for scientists and technicians exchange, and is widely open to interdisciplinary real-time modeling. At the time of this document, it has been set up in different observatories where it is used as one of the main operational tool: Guadeloupe, Martinique (Lesser Antilles), La Réunion (Indian Ocean), Java (Indonesia), and Paris (France). 1 see 2 see http://www.isti.com/products/earthworm/ http://www.seiscomp3.org/ vii viii INTRODUCTION Chapter 1 Installation 1.1 Overview External Sources RawData In/Out Data $> Clients : Consoles, Browsers, Mails Apache HTTP Server Configurations + Logs NODEs Objects PROCs Procedures FORMs Requests PostBoard Daemons Perl Environments Matlab binaries Figure 1.1: WebObs big picture 1.2 1.2.1 System requirements System and package WebObs server can run on Linux and Mac OS X. It has been successfully installed/tested on: 1 VIEWs Jobs Scheduler Bash 2 CHAPTER 1. INSTALLATION • Linux 3.13.0 , x86 64 , Ubuntu 14.04 LTS • Linux 4.13.0 , x86 64 , Ubuntu 16.04 LTS • Linux 2.6.32, i386 , Debian 2.6.32-48squeeze4 • Linux version 3.2.0-4-amd64, Debian 3.2.51-1 • Linux version 3.2.0-4-amd64, Debian 4.6.3-14 • Linux version 4.9.0-5-amd64, Debian 4.9.65-3 • Mac OS X 10.11.5, Darwin 15.5.0 WebObs (browser) clients have been successfully tested with: • FireFox (up to FireFox 47) • Safari Download the WebObs latest Release and MatLab Runtime Compiler from: http://www.ipgp.fr/˜beaudu/webobs.html 1.2.2 Software requirements Required installations The following softwares will be tested for existence by the setup installation procedure: • Perl 5.14+ (setup will also check for additional Perl modules) • Apache 2.2+ • Sqlite 3.7.9 • ImageMagick 6.6.9 (convert+identify) • Mutt 1.5+ • MatLab MCR R2011b Bundled software The following lists softwares included in WebObs package: • SeisComP3 (slinktool + arclink fetch) • JavaScript extensions: – JQuery – flot – markItUp – MultiMarkDown – overlib 1.3 Initial installation You must have root privileges to execute WebObs installation. Installation procedure: • Choose/create your target WebObs directory, and cd to it. For demonstration purposes in this document we will use /opt/webobs/ as the target WebObs directory. • Download WebObs package and MatLab RunTime Compiler. For demonstration purposes in this document we will use WebObs-2.1.2.tgz as the WebObs package. 1.4. UPGRADES 3 • Choose/create the system’s WebObs user+group (aka WebObs Owner) if you don’t want setup procedure to create one itself. The WebObs user, and its corresponding group, is the required WebObs administration account. It must have a home directory. It will be the owner of the WebObs CONF,LOGS,DATA,WWW,OUTx directories. The Apache http server user will be made a member of WebObs user’s group. The WebObs user can be used to launch the WebObs Scheduler and Postboard daemons. • Untar WebObs package. This will create/populate the WebObs version subdirectory: /opt/webobs/WebObs2.1.2. • Run the setup procedure (again, with root privileges): – must be called as /opt/webobs/WebObs-2.1.2/SETUP/setup – setup will gather information/location from your system/environment, check for some dependencies (see Requirements section above), build the WebObs structure, optionaly customize Apache’s WebObs Virtual Host, set required system’s ownerships and access-rights, and populate your brand new WebObs with ready to use demonstration data and templates. – once completed, setup will display WebObs configuration (see qsys command below). – WebObs now ready, you need to activate the scheduler, postboard and (re)start Apache http server. 1.4 Upgrades You must have root privileges to execute WebObs upgrades. The setup procedure used for Initial Installation, is also used to upgrade WebObs to a new release. It will automatically detect that an upgrade is intended rather than a first time installation. Upgrade procedure: • Download WebObs package corresponding to the version you want to upgrade to. • Untar WebObs package. • Run the setup procedure (/opt/webobs/WebObs-2.1.2/SETUP/setup). • setup reports Version changes and important information in the SETUP.CONF.README file. Please read it carefully. • setup will also, if you choose to do so, walk through executions of vimdiffs between your configuration files and corresponding non-customized WebObs version configurations that were changed / added. 1.5 qsys - query configuration qsys script, also automatically executed when setup ends, will display your base WebObs configuration. qsys example ... oooooWoooooo .. W . oo .. ............ o .. o .. W . oo . ........ ...... .. oW . oo . . . .. .. . .. .. .. . . W . W .. . ............. o .... W . W ............. o ......... oWWWoo . W .W . . . ............ o ..... W W. .. . WWWWo .... . W .W . Wo . . Wxxxxx .... W .W . WWW . WxxxxxxW ... ... W .W . WWWWWxxxx xxxxW .......... W Wo .. o o W x x x x x x W x x x x x x x x x x o ........ W . x x x x x x x x x x x x x x W x x x x x x x x x W ....... W . x x x x x x x x x x x x x W W W W W x x x x x x W ..... oW . W x x x x x x x x x W x x W W W W W W W x x x x x W W o .. W . oxxxxxxxxxxxxxWWWWWWWxxxxxxxWW . oWxxxxxxxxxxxxxWWWWWWWWxxxWW . o W x x x x x x x x x x x x W W W W W x W .. W ... oWWWxxxWWWWo .. W __ __ __ \ V V / \ _ /\ _ / ___ / -_ ) \ ___ | _ | | __ | ’_ \ | _ . __ / ___ / _ \ \ ___ / _ | | __ | ’_ \ | _ . __ / ___ (_ - < / __ / Id: ipgp Version: WebObs -2.0.0 Owner: Root: Config: Logs: webobs [ webobs ] / opt / webobs / opt / webobs / CONF / WEBOBS . rc / opt / webobs / LOGS MCR: / usr / local / MATLAB / M A T L A B _ C o m p i l e r _ R u n t i m e / v7 ... Rawdata: / opt / rawdata Sefran: / opt / sefran HTTP: http: // webobs . ipgp / etc / apache2 / sites - available / webobs running on Apache /2.2.22 ( Ubuntu ) Scheduler: not running PostBoard: not running qsys run 2014 -08 -08 12 :05:06 4 CHAPTER 1. INSTALLATION /etc/webobs.d apache virtualhost Document Root CONF/ DATA/ LOGS/ OUTG/ OUTR/ WWW/ CODE DOC WebObs-Version/ DOC/ CODE/ SETUP/ WebObs-Version.tgz WebObs-Version.tgz.md5 MCR_R2011b_glnx*_installer.zip MATLAB_Compiler_Runtime/ SEFRAN/ RAWDATA/ Figure 1.2: Overview of WebObs installed disk structure 1.6 Configuration files syntax WebObs configuration files (*.rc, *.conf, or *.cnf) used to customize your installation and described in this document, typically define one functionnal parameter (key) per line, made up of one or more associated values (fields). They 1.7. WEBOBS TREE 5 can share the same set set of syntactic rules for parsing/interpretation: 1) In order to be parsed/interpreted according to the following rules, the files must contain a so-called ’definition line’ (identified with = in column 1) as the first interpreted line. This definition line is also used to further define parsing, that comes in two (2) flavors: =key|value =key|name1|...|nameN one value per key (Perl’s equiv. $X{key} =>value) multiple named values per key (Perl’s equiv. $X{key}{name1} =>value) 2) Any text following a # is considered a comment and discarded. 3) Blank lines are discarded, leading and trailing blanks too. 4) Fields separator character, within interpreted lines, is |(pipe). 5) | and # characters that must belong to a field value may be ’escaped’ (ie. not interpreted as separator or comment respectively) by prefixing them with a \. 6) Field value substitution (interpolation) is allowed in =key|value format: ${key} in value $WEBOBS{key} in value 1.7 will be replaced with the value of the key |value pair of the current file. will be replaced with the value of the WebObs main configuration key value. WebObs tree CONF/ WEBOBS.rc *.{rc,conf,cnf} FORMS/ formname/ PROCS/ procname/ VIEWS/ viewname/ GRIDS2FORMS/ PROC.pname.formname GRIDS2NODES/ PROC.pname.nodename VIEW.vname.nodename configurations main WebObs configuration file other configuration files FORMS definitions definitions for FORM formname PROCS definitions definitions for PROC procname VIEWS definitions definitions for VIEW viewname links from PROCs to FORMS ->../formname links from GRIDs to NODES ->../../DATA/NODES/nodename ->../../DATA/NODES/nodename CODE/ bin/ cgi-bin/ css/ html/ icons/ js/ matlab/ shells/ tplates/ WebObs code executables Perl CGIs HTML Style Sheets static HTML pages HTML icons, static images javascript matlab (+ compiled) bash commands configurations templates DATA/ DB/ *.DAT DEM/ NODES/ nodename/ *.txt *.cnf *.clb DOCUMENTS/ FEATURES/ data built-in tools data Digital Elevation Model files NODES configurations and data nodename system features descriptions configuration calibration file documents features 6 CHAPTER 1. INSTALLATION INTERVENTIONS/ PHOTOS/ 1.8 events log pictures DOC/ documentations LOGS/ tools, appl, daemons logs OUTG/ PROC.procname/ exports/ graphs/ maps/ events/ batch Procs Outputs PROC procname outputs OUTR/ 20140720 084340 85.199.99.199 userX/ REQUEST.rc PROC.procname/ graphs/ Procs Requests Outputs Dated Request Request parameters Requested Proc outputs License Chapter 2 Reference 2.1 Overview Description Location Map Description VIEW PROC Location Map FORM Raw Data Raw Format Superproc NODE 1 NODE 2 NODE 3 NODE n Feature A Feature D Feature B Feature E Graphs Table Display Data Editor CSV Export Exports Feature C Location Map Location Map Documents Documents Project Project Events Events Gazette Events Calibration Proc param. 2.2 Nodes: Elementary WebObs Objects A NODE is the central WebObs element associated with following attributes: • a long name (NAME) and short name (ALIAS); • an optional short description (TYPE); • a lifetime period with start and end dates (both optional); • an optional location (latitude, longitude, elevation) associated with a location map (graph), Google Maps and Google Earth links; 7 8 CHAPTER 2. REFERENCE • optional text contents for ”informations”, ”installation” and ”access”; • an optional sensor description associated with a calibration table of channels parameters; • a list of user-defined features (also free text contents); • attached documents, photos and diagrams; • a project; • events log associated with date and operator list; • a list of associated grids (VIEWS and/or PROCS, see 2.3); • a validity flag (for admin users); • optional functional parameters when the NODE is associated to a PROC: data code (FID), network code (FDSN), data format (RAWFORMAT) and source (RAWDATA), time zone (TZ), acquisition period and delay, and a calibration file that describes each channel characteristics and history: – date and time of validity; – channel number, name, unit, code, S/N, offset, factor, gain, min/max values, azimuth, latitude, longitude, elevation, depth, sampling frequency, dynamic, location code. Examples of what a NODE can be: • an instrumental station or a part of it, • a site or place for data sampling or measurement, • a place of any interest, • a mobile equipment, an instrument, a building, a vehicle, ... • a journal board, an event description (e.g. an historical earthquake), ... NODES.rc = key | value PATH_NODES | $WEBOBS { ROOT_DATA }/ NODES S P A T H _I N T E R V E N T IO N S | EVENTS SPATH_PHOTOS | PHOTOS S PATH_DOCUMENTS | DOCUMENTS SPATH_SCHEMES | SCHEMES SPATH_FEATURES | FEATURES S PATH_THUMBNAILS | THUMBNAILS P A T H _ E V E N T N O D E _ T R A S H | $WEBOBS { ROOT_DATA }/ trash / EVENTNODE P ATH_NODE_TRASH | $WEBOBS { ROOT_DATA }/ trash / NODES E VE NT N OD E _N O TE BO O K | NO E V E N T N O D E _ N O T I F Y _ D E F A U L T | NO # list of c a t e g o r i e s ( valid keys are : grid , alias , feature , author , remote , startdate , enddate , title , comment , notebook , outcome ) E V E N T _ S E A R C H _ C A T E G O R Y _ L I S T | grid , alias , feature , author , remote , startdate , title , comment , notebook , outcome E V E N T _ S E A R C H _ M A X D I S P L A Y _ L I S T | 15 ,50 ,75 ,100 E V E N T _ S E A R C H _ D E F A U L T | alias E V E N T _ S E A R C H _ D E F A U L T 2 | comment CGI_SHOW | showNODE . pl CGI_SRCH | srchNODES . pl CGI_FORM | formNODE . pl THUMBNAILS_ON | ALL T HUMBNAILS_PIXH | 100 T HUMBNAILS_PIXV | 100 THUMBNAILS_EXT | jpg FILE_NETWORKS | $WEBOBS { ROOT_CONF }/ networkcodes . csv F ILE_NODES2NODES | $WEBOBS { ROOT_CONF }/ nodes2nodes . rc FILE_TELE | $WEBOBS { ROOT_CONF }/ TRANStypes . conf FILE_POS | $WEBOBS { ROOT_CONF }/ POSITIONtypes . conf F I LE_ FIL TER_ NOT ES | $WEBOBS { PATH_DATA_WEB }/ N o t e s _ F i l t r e _ S t a t i o n s . txt # node ’ s status ( t h r e s h o l d in %) SQL_DB_STATUS | $WEBOBS { PATH_DATA_DB }/ NODESSTATUS . db S T A T U S _ T H R E S H O L D _ W A R N I N G | 90 S T A T U S _ T H R E S H O L D _ C R I T I C A L | 10 S T A T U S _ S T A N D B Y _ V A L U E | -1 2.2. NODES: ELEMENTARY WEBOBS OBJECTS 2.2.1 9 Create, edit or delete a NODE Modifying NODE is possible only through a GRID (see next section 2.3). Creation of new NODE or edition of an existing NODE deserves to USERS with edit level for the associated GRID. Deletion of a NODE is reserved to administrator level USERS. 2.2.2 Names and codes Main code (ID) Each NODE has a unique ID code in WebObs . The code can be any string of characters, but it is recommended to use a comprehensive and rational code (see appendix 5.8) when creating a new NODE. Attribution of this unique code deserves to USERS with administrator level when creating a new NODE. It cannot be modified after. Name The long NAME of a NODE is used for display purposes in tables and graphs. It cannot be empty. The NAME is displayed in the main GRID’s table in front of the corresponding NODE. Alias (short name) The ALIAS is the short name of a NODE, used for display purposes in table and graphs. It cannot be empty. The ALIAS is displayed in the main GRID’s table in front of the corresponding NODE. Type The TYPE of a NODE is an optional free string that will be used for any short description of the NODE. The TYPE is displayed in the main GRID’s table in front of the corresponding NODE. 2.2.3 Lifetime and validity Start/end dates Start and end dates of a NODE define the period of activity of this NODE. Both or any of these two dates can be undefined or incompletely defined, while respecting the ISO 8601 standard: Date values are ordered from the most to the least significant: year, month and day; any number of values may be dropped from any of the date representations, but in the order from the least to the most significant. For example, 1976 and 2005-04 are both reduced precision valid dates. The lifetime of a NODE has potential impact on processes that use this NODE or associated data. Valid NODE Independently of the lifetime period, a NODE can be valid or invalid. When invalid, a NODE is simply ignored by most of the WebObs processes and invisible for standard USERS. Nevertheless, if a USER has an administrator level , he will be able to see an invalid NODE in the lists and tables. 2.2.4 Grids memberships A NODE can be associated with one or more GRIDS. See section 2.3. 10 2.2.5 CHAPTER 2. REFERENCE Geographic location A NODE can be georeferenced using latitude, longitude and elevation coordinates on Earth. When a NODE has valid coordinates defined, a location map will be automatically built (see below and section 3.2.3), and it will appear on associated GRID’s maps (see section 2.3). WGS84 coordinates Latitude and longitude must be in the WGS84 geodetic reference system, and expressed in decimal form, using negative value for southern latitude and western longitude. Use the dot as decimal point (not coma). In the NODE’s display page, coordinates are presented in different formats: DDD.ddddd (decimal degrees), DDD◦ MM.mmm’ (degrees and decimal minutes) and DDD◦ MM’SS.s” (degrees, minutes and decimal secondes). The coordinates are displayed in the main GRID’s table in front of the corresponding NODE. Also, the Universal Transverse Mercator (UTM) projection is computed and displayed in the NODE’s page. Timestamp and type of coordinates This optional information provides the timestamp (date) of coordinates, and a type of positioning from a list. POSITIONtypes.conf = key | value # D e f i n i t i o n s of P o s i t i o n n i n g types # # Cle : type used in scripts , forms , database , ... # Nom : c o r r e s p o n d i n g text string to be d i s p l a y e d # # Cle | Nom 0 | unknown 1 | map 2 | GPS meas . Google Maps API link Link to Google Maps API is available if the NODE has coordinates. The link will open a pop-up window. This functionality is associated with some variables in the main configuration file WEBOBS.rc: WEBOBS.rc (excerpt) C GI_GOOGLE_MAPS | googleMAPS . pl G OOGLE_MAPS_LINK | 1 G OOGLE_MAPS_API | http :// maps . google . com / maps ? file = api G O O G L E_ M A P S _ A P I _K E Y G O O G L E _ M A P S _ L I N K _ I N F O | See with Google Maps ( ATTENTION : error ~20 m ) G OOGLE_MAPS_ICON | / icons / gdot . png G OOGLE_MAPS_TYPE | G_HYBRID_MAP G O O G L E _ M A P S _ W I D T H _ V A L U E | 500 G O O G L E _ M A P S _ H E I G H T _ V A L U E | 500 G O O G L E _ M A P S _ Z O O M _ V A L U E | 17 Google Earth KML link Link to Google Earth KML file is available if the NODE has coordinates. The link will download a local KML file, which may be open with local application Google Earth (if installed). This functionality is associated with some variables in the main configuration file WEBOBS.rc: WEBOBS.rc (excerpt) G O OGL E_E ARTH _LI NK | 1 G O O G L E _ E A R T H _ L I N K _ I N F O | KML file for Google Earth ( ATTENTION : error ~20 m ) I M A G E _ L O G O _ G O O G L E _ E A R T H | / icons / google / google_earth . gif 2.2. NODES: ELEMENTARY WEBOBS OBJECTS 11 Location map A location map with 4 different scales is automatically made and updated by LOCASTAT application (see section 3.2.3 for associated parameters), using the coordinates of the NODE. 2.2.6 Transmission When a NODE represents, for instance, an instrumental station with data transmission, the type of transmission can defined using a reference list (below) and other NODEs can be defined as intermediate repeaters or final acquisition point. The transmission chain is displayed with dynamic links to associated NODEs. It appears also on the location map (see section 3.2.3) and the GRID maps (see section 3.2.2). Type Type of transmission is defined in a list of transmission type associated with plot line style, width and color. TRANStypes.conf # WEBOBS # # T r a n s m i s s i o n types d e f i n i t i o n s # # key : used in { show , form } NODE . pl and r e a d n o d e . m # name : name # style : line style ( Matlab style : - , - - , -. ,:) # width : line width # rgb : line color red , green , blue ( values between 0 and 1) # = key | name | style | width | rgb # 0 | -| none |0|0 ,0 ,0 1 | Analog Radio | -|1|0 ,0 ,0 2 | Hard - wired | -.|1|0 ,0 ,0 3 | Phone / GSM |:|1|0 ,0 ,0 4 | Laser | - -|1|1 ,0 ,0 5 | Wireless | -|.75|0 ,0 ,0 6 | Satellite |:|2|0 ,0 ,0 Acquisition and repeaters The transmission chain is described by defining a list of NODE’s ID, from station to acquisition. 2.2.7 Proc’s parameters and data status When associated with a PROC (see section 2.3.2), data from a NODE is used to produce outputs. Several additional parameters must be defined for this. Network code A NODE can be associated with a standard network code, from the International Federation of Digital Seismograph Networks (FDSN) 1 . This is mostly the case for permanent seismological stations. This code is mandatory when using Arclink or Seedlink data requests (see sections 3.14.1 and 3.14.1). The list of network codes is also described at IRIS 2 . The official FDSN codes list can be overwritten using a local configuration file CONF/networkcodes.csv. Raw format A list of possible data format that overwrites, if selected, the RAWFORMAT parameter in the PROC/*.conf. This allows to associate different data format/source to the NODEs associated to a single PROC. 1 see 2 see http://www.fdsn.org/ http://www.iris.edu/ds/nodes/dmc/services/network-codes/ 12 CHAPTER 2. REFERENCE Raw data source A free text string that overwrites, if not blank, the RAWDATA parameter in the PROC/*.conf. This allows to associate different data format/source to the NODEs associated to a single PROC. FID A FID code is a short string which may contain a functional code (or a coma-separated list of codes) that will be used by associated PROCs. For example, it can be the official station code for a seismic station or a GNSS receiver, while the data files will contain this code. It is generally set to the same string as the ALIAS. Some PROCS are able to deal with a coma-separated list, as gnss: this allows to define multiple codes pointing to different data, and associate them to a single station. FID * Some raw formats may need additional codes or parameters to process data from the NODE. It is possible to define specific parameters with the prefix FID : they will be listed and editable below the main FID. Creation/edit of a FID SUBNAME is reserved to USERS with administrator level. Time zone Time zone is the offset delay from UTC, expressed in hours. Examples: +0 is UTC, −4 is Lesser Antilles time. Acquisition period Acquisition period defines the normal time interval between two data sample, expressed in days. Examples: 1/24 corresponds to 1 sample per hour, 1/86400 is 1 Hz sampling. This value might be used to compute average acquisition performance rating (see below). Acquisition delay This value defines the maximum delay allowed between the last available data and the present time, expressed in days. This delay is used to determine the NODE’s status (see below). Status and link to data If the associated PROC is set to compute the NODE status, the following information is displayed: • last status check timestamp; • sampling rate performance (in %): number of valid samples over the last time period, compared to theoretical acquisition period (see above); • status (in %): existence of valid samples in the last time delay for all channels. The status informations are displayed in the main GRID’s table in front of the corresponding NODE. If the associated PROC produces output graphs, direct links to each outputs are available. Channels parameters (calibration file) For most of PROCS, it is mandatory to define a list of data channels. This can be done through a “calibration file” that contains description and detailed parameters of the NODE’s data channels: date and time of validity, name, unit, S/N, 2.2. NODES: ELEMENTARY WEBOBS OBJECTS 13 functional code, gain and multiplier factors, offset, min/max values, sensor azimuth, location and depth, sampling frequency, digital dynamic and “location code” (SEED standard). Each channel must have one or more series of parameters. The date and time of validity applies until real-time or next line of parameters for this channel number. Each PROC might be associated to a selection of channels. Active channels appear in bold font, while inactive appear in gray. 2.2.8 Features Each NODE can have user-defined features which are free text contents (HTML and Wiki syntax allowed) that appear in the main table as a series of table cells. List of user-defined features Feature name is limited to short names and must avoid special characters. Edit the list of features to be displayed using the NODE configuration form. Features with void content won’t be displayed for USERS without edit or admin rights. Node-features-nodes association list It is possible to associate a NODE’s feature to an other NODE as its feature’s children. An automatic link will be displayed in the feature’s table cell before the text content of the feature. In the children NODE page, the parent feature will appear with automatic name ”feature of” and a link to the parent NODE. Configuring the node2node association list is made by editing a configuration file containing a 3-field definition (pipe delimited): nodes2nodes.rc (excerpt) PARENT_NODEID | featurename | CH IL D RE N_ NO D EI D 2.2.9 Installation, information and access These 3 fields are free-length text content. Wiki syntax allowed. 2.2.10 Photos, diagrams and associated documents Three different types of documents can be uploaded and associated to a NODE: • Photos: any JPEG file that will be displayed as thumbnail with a link to full screen mode; • Diagrams: any image or picture file (JPEG, GIF, PNG, PDF, ...) that will be displayed as thumbnail with a link to the full resolution image; • Documents: any file (PDF, DOC, TXT, ...) that will be downloadable and sometimes displayed through the navigator. 2.2.11 Project A NODE may have one (and only one) PROJECT description: a free-length text file, accepting MultiMarkDown syntax, a list of users and possible associated photos. Project is a special EVENT without date. 2.2.12 Events A NODE can be associated to dated events. A NODE event has following characteristics: • start date and time; • end date & time; • a title; • a content of free-length text, • author(s) from the list of WebObs users; 14 CHAPTER 2. REFERENCE • selected feature (from the node’s feature list); • sensor/data outcome flag; • notebook number (optional); • notebook forward flag (optional); • associated photos (image files). An event can include one or more sub-events (children). Event files accept the MultiMarkDown syntax. See EVENTS LOGGING section (2.4) for a description of Nodes and Grids events coding. 2.3 Grids: networks of nodes A GRID is a group of NODES. Each NODE can be associated to one or multiple GRIDS. There is two kind of GRIDS: • A VIEW is a list of NODES we simply want to group to be seen or accessed together, • A PROC is a list of NODES associated to a common data processing that produces outputs (graphs and/or elaborated data), and/or optional editable data FORMS. GRIDS are presented through a sorted table allowing access to dedicated page for each GRID with: • purpose (text content); • specifications: operator owner, number of NODES, type, optional external link; • list of NODES: a complete table with alias, names, location, start/end dates, type, project, status (for active PROC); ... • an interactive location map (if NODES have location coordinates); • informations (text content); • references (text content); • a graphical representation of NODES links with associated GRIDS. Text content sections are editable with Wiki syntax possibilities. GRIDS.rc = key | value # title for default " all grids " display ( l i s t G R I D S . pl ) S HOW_GRIDS_TITLE | Grids # grids table options SHOW_TYPE | Y SHOW_OWNER | Y # nodes table options D E F A U LT _ C O O R D I N AT E S | latlon D E F A U L T _ N O D E S _ F I L T E R | all D E F A U L T _ P R O J E C T _ F I L T E R | on # ===== do not edit below this line ===== # ( p a r a m e t e r s only for b a c k w a r d c o m p a t i b i l y purpose ) CGI_SHOW_GRID | showGRID . pl CGI_SHOW_GRIDS | listGRIDS . pl PATH_GRIDS | $WEBOBS { ROOT_DATA }/ GRIDS S P A T H _I N T E R V E N T IO N S | EVENTS SPATH_PHOTOS | PHOTOS S PATH_DOCUMENTS | DOCUMENTS SPATH_SCHEMES | SCHEMAS SPATH_FEATURES | FEATURES S PATH_THUMBNAILS | THUMBNAILS P A T H _ E V E N T G R I D _ T R A S H | $WEBOBS { ROOT_DATA }/ trash / EVNTRASH D ES CR I PT I ON _ SU FF I X | _description . txt P ROTOCOLE_SUFFIX | _protocole . txt BIBLIO_SUFFIX | _bibliography . txt 2.3. GRIDS: NETWORKS OF NODES 2.3.1 15 Views A VIEW is a simple group of NODES. To create a new VIEW, go to any GRID table page (menu GRIDS, VIEWS or PROCS) and click on the edit icon in the Name header of table, enter an unique short name and click Edit. This will open the GRID configuration editor. The form allows to freely edit the parameters file (key/value pairs), to select the Domain and to associate/disassociate NODES. VIEW.DEFAULT template = key | value # Generic VIEW te m p l a t e for use with cgi - bin / f o r m G R I D . pl NAME | Generic View OWNCODE | ? TYPE | URL | http :// myview . org COPYRIGHT | MyView # node p a r a m e t e r s ( display and maps ) NODE_NAME | node NODE_MARKER | ^ NODE_SIZE | 15 NODE_RGB | red NODE_FONTSIZE | 12 # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | DEM_SRTM1 | NO All the following parameters are valid for GRIDS, that is any VIEW or PROC (see the next section). GRID name and attributes • NAME: Character string for the GRID long name. This name will appear in the GRID page and maps of NODES. • OWNCODE: Character string for the GRID’s owner name. This name will be displayed in the GRIDS tables and GRID summary, if SHOW OWNER key is true in GRIDS.rc. For backward compatibility, the key might contains a short code with corresponding long names in CONF/OWNERS.conf. • TYPE: Character string giving a short attribute to the GRID, if SHOW TYPE key is true in GRIDS.rc. • URL: Optional URL related to the GRID. Any valid URL is allowed, e.g. an external web link. • COPYRIGHT: Optional character string for the copyright of the GRID. NODES attributes • NODE NAME: Short name of a generic NODE. This name will be used instead of “node” in tables and maps. • NODE MARKER: Type of marker used to plot NODES on maps. See valid markers in table 5.3. • NODE SIZE: Size of the NODE marker for maps (in points). • NODE RGB: Color of the NODE marker for maps: it can be a color name string (see CODE/matlab/htm2rgb.m for a list of standard colors), or a vector of 3 scalars (red,green,blue), each value between 0 and 1. • NODE FONTSIZE: If not empty, font size to display NODE’s alias names on maps besides the marker. Digital Elevation Model (DEM) By default, WebObs will use SRTM/ETOPO global topographic database to plot maps of NODES. It is possible for each GRID to define a specific DEM which might be more accurate or more appropriate to make maps. • DEM FILE: is not empty, must be an absolute path filename. The file must be in Arcinfo format using latitude/longitude coordinates and elevations in meters, by default. • DEM TYPE: when set to UTM, considers the file in UTM projection (eastern/northern coordinates). The conversion might take some time for large DEM, so latitude/longitude DEM is still preferred. • DEM FORCED: by default, if the area to be plotted is larger than the user DEM limits, the DEM will be ignored. When set to YES, this option forces the use of user DEM. This might lead to NaN gray areas on the map. • DEM COPYRIGHT: optional character string for DEM copyright. • DEM SRTM1: if no user defined DEM is set nor valid, set to YES to use SRTM1 (30m resolution) DEM instead of default SRTM3 (90m). 16 CHAPTER 2. REFERENCE The standard behavior of WebObs for DEM loading is, by order of priority: 1. use of user defined DEM if set and valid; 2. if DEM SRTM1 is true and number or tiles does not exceed SRTM1 MAX TILES value in WEBOBS.rc (default is 4 tiles), then loading SRTM1 30m resolution DEM; 3. if number or tiles does not exceed SRTM MAX TILES value in WEBOBS.rc (default is 25 tiles), then loading SRTM3 90m resolution DEM; 4. if ETOPO1 database has been properly installed and configured (see PATH DATA DEM ETOPO in WEBOBS.rc), then use of ETOPO1 1.8km resolution global DEM; 5. last, use of ETOPO5 9km resolution DEM (included in the WebObs distribution). 2.3.2 Procs A PROC is a list of NODES that are associated to a specific and common data processing called SUPERPROC. It has the same basic parameters as VIEWS (see previous section 2.3.1) plus additional settings that depend on the process you want to achieve. WebObs proposes some built-in SUPERPROCS (see chapter 3), each of them are specific. There is on default SUPERPROC called ’genplot’ which is a simple plot of time series data (see section 3.4). To create a new PROC, go to any GRID table page (menu GRIDS, VIEWS or PROCS) and click on the edit icon in the Name header of table, select “PROC: Generic time series” in the Grid type list, enter an unique short name and click Edit. This will open the PROC configuration editor. The form allows to freely edit the parameters file (key/value pairs), to select the Domain, optional FORM and to associate/disassociate NODES. 2.3.3 Forms A FORM is a web interface for manual data input, edit, display and export. A FORM is an optional tool of a PROC that defines a specific database format that contains data from associated NODES. Some SUPERPROCS are working specifically with FORM databases. 2.3.4 Project A GRID may have one (and only one) PROJECT description: a free-length text file, accepting Wiki syntax. Project is a special EVENT, see EVENTS LOGGING for a description of Project. 2.3.5 Events A GRID can have events: free-length text files with timestamp. An event can include one or more sub-events (children). Event files accept the Wiki syntax. See EVENTS LOGGING section for a description of Nodes and Grids events. 2.4. EVENTS LOGGING 2.3.6 2.4 17 TMap: GRIDS diagram Events Logging Nodes and Grids can have EVENT. These events are free timestamped text files (Wifi syntax being supported), editable by users having at least Write authorization on the corresponding Node or Grid. Events live in specific repositories (known as INTERVENTIONS), and are managed thru functions of the CODE/cgi-bin/WebObs/Events.pm module and CODE/cgibin/vedit.pl . Their filenames reflect both their Node or Grid membership and their timestamp. An event may also have attached images (PHOTOS) and/or sub-events: both are collectively referred to as EVENT EXTENSIONS. Subevents are themselves events, thus building up a tree structure for each event. Events base directories (interventions) $GRIDS { PATH_GRIDS }/ gridtype / gridname / $GRIDS { S P A T H _ I N T E R V E N T I O N S }/ $NODES { PATH_NODES }/ nodename / $NODES { S P A T H _ I N T E R V E N T I O N S }/ Events ’trash’ directories (for deleted events) $NODES { P A T H _ E V E N T N O D E _ T R A S H } $GRIDS { P A T H _ E V E N T G R I D _ T R A S H } Events files and extensions naming conventions event_file e vent_extensions event name v NA := := := := := := event . txt event / name_YYYY - MM - DD_HH - MM { _v } | name_YYYY - MM - DD_NA { _v } { gridname | nodename } so - called version number ( automatically generated to make event name unique ) " NA " for unknown / undefined HH - MM Special event file: the Project only one allowed per Node or Grid : project_file := name_Projet . txt Unfolded example for node NODEA INTERVENTIONS $NODES { PATH_NODES }/ NODEA / $NODES { S P A T H _ I N T E R V E N T I O N S }/ NODEA_Projet . txt NODEA_2001 -01 -01 _20 -00. txt Event 2001 -01 -01 _20 -00 file NODEA_2001 -01 -01 _20 -00/ Event 2001 -01 -01 _20 -00 extensions PHOTOS / Event 2001 -01 -01 _20 -00 photos 18 CHAPTER 2. REFERENCE *.[ jpg , pdf ] THUMBNAILS / NODEA_2002 -02 -02 _02 -02. txt subEvent 2002 -02 -02 _02 -02 NODEA_2002 -02 -02 _02 -02/ subEvent 2002 -02 -02 _02 -02 extensions PHOTOS / subEvent 2002 -02 -02 _02 -02 photos *.[ jpg , pdf ] THUMBNAILS NODEA_2003 -03 -03 _03 -03. txt subsubEvent 2003 -03 -03 _03 -03 NODEA_2010 -02 -02 _22 -30. txt Event 2010 -02 -02 _22 -30 2.5 Web pages 2.5.1 Main menu 2.5.2 Home page 2.5.3 Wiki pages 2.5.4 Tools pages 2.5.5 Application pages Chapter 3 Built-in applications 3.1 3.1.1 The Gazette Overview The GAZETTE is the observatory’s logbook and calendar. It is a collection of articles in a relational DB table. An article is defined by: • a Start and an End timestamp, • a Category (from a predefined/editable list), • a list of Users (WebObs-registered and additional), • a Place, • a Subject. The GAZETTE has its own html interfaces for visualization and edition, implemented in CODE/cgi-bin/WebObs/Gazette.pm and CODE/cgi-bin/Gazette.pl modules. 3.1.2 Configuration The GAZETTE is defined by a configuration file, whose location is pointed to by the main WebObs configuration variable GAZETTE CONF. Among other parameters, GAZETTE CONF file points to the Gazette DataBase (DB NAME) and the Gazette categories definitions (CATEGORIES FILE). The GAZETTE also uses the WebObs authorization mechanism with one resource associated to each category, plus one generic resource representing all categories. These resources belong to the authorization ’misc’ type (authmisc table), and are identified as ”GAZETTEcategoryKey ” (eg. GAZETTEMissions, GAZETTEField). WEBOBS.rc (excerpt) GAZETTE_CONF | $ { ROOT_CONF }/ Gazette . rc Gazette.rc = key | value DB_NAME | $WEBOBS { PATH_DATA_DB }/ Gazette . db C ATEGORIES_FILE | $WEBOBS { ROOT_CONF }/ G a z e t t e _ c a t e g o r i e s . conf BANG | 2001 TITLE | Gazette FUTURE_YEARS | 2 ACTIVE_GID | DUTY E M P T Y _S E L E C T I O N _M S G | No match found C A L E N DA R _ W E E K N U MB E R | VERTICAL S H O W _ BY D A T E _ O N G OI N G | TEXT C A L E N D A R _ T R U N C L E N G T H | 25 DEFAULT_VIEW | calendar DEFAULT_DATE | thisweek D EFAULT_CATEGORY | 19 20 CHAPTER 3. BUILT-IN APPLICATIONS Gazette categories.conf # Gazette articl e s c a t e g o r i e s # # - Key : value used by scripts , forms fields , database , ... # ATT : a single word with NO special c h a r a c t e r nor space # ATT : r e s e r v e d keys = " ALL " # Key is also used as prefix for a u t h o r i z a t i o n r e s o u r c e names ( G A Z E T T E _ k e y ) # - Name : long name for user i n t e r f a c e # - RGB : color of text display ( HTML / CSS format ) # - RGBlight : c o r r e s p o n d i n g color used as b a c k g r o u n d # - Auto : categor y is a u t o m a t i c ( not s e l e c t a b l e in form ) # - Format : any string from : ndol , ndlo , ldon , dlon , andol , or adon # encod i n g fields order of appearance , where : # n = name ( o p e r a t o r ) , d = date , o = comment , l = place , a = others # # Allowed m o d i f i c a t i o n s : # - modify Name , RGB or Level values # - add new keys # # Forbidden : # - modify / delete e x i s t i n g Keys ( or c o r r e s p o n d i n g Keys must be updated in # the da t a b a s e file ) # - d u p l i c a t e r e s e r v e d Keys , or delete them # = Key | Name | RGB | RGBlight | Auto | Format ALL | All |\#000000|\#7 F7F7F |1 Duty | Duty Scientist |\# EFC700 |\# F6E27F |0| ndol Missions | Staff Missions |\# DD5555 |\# FFD4D4 |0| ndlo Holiday | Off / Holiday |\# DD5555 |\# EDA9A9 |0| ndol Field | Field work |\#00 BB00 |\#7 FDC7F |0| ldon Meeting | Meeting / Officials |\#007 F7F |\#7 FBEBE |0| dlon Media | Medias |\#5555 FF |\# D4D4FF |0| dlon Outreach | Outreach |\#5555 FF |\# D4D4FF |0| dlon Teaching | Teaching |\#5555 FF |\# A9A9FE |0| dlon Visitor | Visitors |\# B200FF |\# D87FFE |0| andol Training | Students Training |\# B200FF |\# FF7FFF |0| adon Building | Buildings |\#777777|\# CCFF66 |0| ldon Misc | Misc |\#777777|\# BABABA |0| dlon Event | Events |\# ED7C3F |\# DE8F65 |1| ldon The GAZETTE also includes holidays definitions that can be adapted to any country using a specifications file pointed to by FILE DAYSOFF in the main WebObs configuration WEBOBS.rc . WEBOBS.rc (excerpt) FILE_DAYSOFF | $ { ROOT_CONF }/ Holidays . conf Holidays.conf (example) # List of some i n t e r n a t i o n a l public h o l i d a y s # # C o n f i g u r a t i o n file read by s u b f u n c t i o n " r e a d F e r i e s " in WebObs :: Dates # File defined by the WEBOBS . rc key F I L E _ D A Y S O F F # # - EXP : e x p r e s s i o n used by the Linux f u n c t i o n ’ date -d " EXP " ’ to d e t e r m i n e the date # with p o s s i b l e p a r a m e t e r s : # $Y = current year # $PQ = Easter Sunday # $PQ n = n days from Easter Sunday # - Name : name of the day # # # EXP | Name $Y -01 -01 | New Year $PQ 1 | Easter Monday $PQ 39 | Ascension $PQ 50 | Pentecost Monday $Y -08 -15 | Assomption $Y -11 -01 | All Saints ’ Day $Y -12 -25 | Christmas 3.1.3 Display/Edit Gazette CODE/cgi-bin/Gazette.pl is the html interface used to request and display the Gazette. The greyed banner of the page is a selection form used to specify what and how Gazette articles should be displayed: • What : Date or Date-range selection – via a monthly calendar – using predefined periods • What : Category and Filter 3.2. GRIDMAPS AND LOCASTAT: MAPS OF GEOREFERENCED NODES 21 Figure 3.1: Examples of GRID’s maps created by GRIDMAPS. • How – – – – – : Presentation Calendar: a calendar-type weekly table, List by categories: a list sorted by categories, List by date: a list sorted by chronological start-date, iCalendar: iCal format text, dump: reserved for administrators, raw DB-table display The banner also displays a ’Create Article’ button to trigger the edition of a new article. Note: ’Event’ category is not editable through html interface. Developer’s note: A Gazette display html code can also be imported into other pages using the WebObs/Gazette.pm Show function. See description in Gazette.pm perldoc and Welcome.pl page as an example. 3.2 3.2.1 GRIDMAPS and LOCASTAT: maps of georeferenced nodes Overview Any NODE may be associated with a location with geographic coordinates. A PROC might use these coordinates for a specific processing, e.g. for tilt or gnss deformation modelling, or to produce dedicated maps. There is also two built-in applications that will use these coordinates: GRIDMAPS and LOCASTAT. 3.2.2 GRIDMAPS When a NODE is associated to a GRID, WebObs will automatically produce maps indicating these NODES. Configuration Each GRID map is depending on two configuration files: one is common for all grids to define the basemap parameters: GRIDMAPS.rc = key | value 22 CHAPTER 3. BUILT-IN APPLICATIONS NAME | Networks # --- basemap options # paper size ( maximum width / height ) P APERSIZE_INCHES | 10 # density ( in pixels per inch ) for P o s t S c r i p t to PNG c o n v e r t i o n DPI | 100 # basemap DEM r e n d e r i n g options ( see CODE / matlab / dem . m d o c u m e n t a t i o n ) LINEWIDTH | 1.5 LANDCOLORMAP | landcolor SEACOLORMAP | seacolor C OLOR_LIGHTENING | 2 LIGHT_AZIMUTH | -45 LIGHT_CONTRAST | 1 # o v e r s a m p l i n g in case of too small image OVERSAMPLING | 500 # minimum size of map around NODES MIN_SIZE_KM | 1 # maximum X / Y ratio in case of a u t o m a t i c sizing around NODES MAX_XYRATIO | 1.5 BORDER_ADD | 0.1 DEM_SRTM1 | N # --- contour lines CONTOURLINES | Y C ONTOURLINES_RGB | .5 ,.5 ,.5 C O N T O U R L I N E S _ M I N O R _ L I N E W I D T H | .1 CONTOURLINES_MAJOR_LINEWIDTH |1 C ON TO U RL I NE S _L AB E L | Y # adds t r a n s m i s s i o n lines between NODES ( if defined ) P L OT_ TRA NSMI SSI ON | Y # list of GRID keys a v a i l a b l e for edit in request R E Q U E S T _ G R I D _ K E Y L I S T | NODE_SIZE , NODE_RGB , NODE_FONTSIZE , NODE_MARKER SUBMIT_COMMAND | $WEBOBS { JOB_MCC } gridmaps S UBMIT_RESOURCE | gridmaps and the other is the configuration file of the GRID itself to define the parameters associated to NODES (see for example the VIEW example in section 2.3.1). Activation GRIDMAPS is set by default when installing WebObs . It should be active at the first scheduler start. Parameters are as follows: jid: res: xeq1: interval: logpath: valid: gridmaps gridmaps $WEBOBS{JOB MCC} gridmaps 86400 gridmaps Y You may check if it runs correctly in the Scheduler Runs page (see Section 4.3). 3.2.3 LOCASTAT The location map appears in each NODE page if coordinates are defined. The map is automatically made and updated by LOCASTAT application. Maps are updated when the map timestamp is older than NODE’s configuration file. So to force the update of a location map, you may modify any parameter in the NODE configuration, typically the coordinates values or positioning date. The map contains 4 maps at different scales, all centered on the NODE position, from left to right with a progressive zoom effect. Basemaps are built from the free worldwide topography data SRTM 1 and specific colormap and rendering methods. It is possible to specify a user-defined DEM (Digital Elevation Model) for the highest resolution scale map (right frame). LOCASTAT.rc = key | value # --- wide - scale left frame F RAME0_WIDTH_KM | 100 # intermediate - scale middle - top frame 1 see http://www2.jpl.nasa.gov/srtm/ 3.3. SEFRAN3/MC3: SEISMIC CHART AND BULLETIN 23 Figure 3.2: Example of NODE’s map created by LOCASTAT. F RAME1_WIDTH_KM | 30 F RAME1_SCALE_KM | 10 # --- intermediate - scale middle - bottom frame F RAME2_WIDTH_KM | 5 F RAME2_SCALE_KM | 2 F R AME 2_R ESAM PLI NG | 200 # --- high - r e s o l u t i o n right frame ( in UTM ) F RAME3_WIDTH_KM | 1.5 F RAME3_SCALE_KM | .5 F R AME 3_R ESAM PLI NG | 400 FRAME3_SRTM1 | NO # --- optional user - defined DEM frame ( right ) = > applies to all nodes # DEM grid filena m e ( ArcInfo format ) F RAME3_DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON F RAME3_DEM_TYPE | UTM COPYRIGHT2 | MyDEM DPI | 80 LINEWIDTH | 1.5 COLORMAP | landcolor C OLOR_LIGHTENING | 1.2 LIGHT_AZIMUTH | -45 LIGHT_CONTRAST | 1 SEACOLOR | [0.7 ,0.9 ,1] P L OT_ TRA NSMI SSI ON | Y 3.3 3.3.1 SEFRAN3/MC3: seismic chart and bulletin Overview The SEFRAN3 is a graphical interface to operate seismic data flux, manual and semi-automatic detection of events, and earthquake catalog bulletin management. The name “SefraN” is a contraction of Sefram Numérique; it comes from a 70’s paper strip-chart recording instrument from the French factory SEFRAM R , used during decades in French observatories. Starting 2001, the system has been replaced by a numerical simulation using local data files archives in SUDS format. SEFRAN3 is the third version of SefraN which now uses data flow from SeedLink protocol. A second tool called “Main Courante” hereafter named MC3, is a database of seismic events that is linked to SEFRAN3 interface and possibly to external earthquake catalogs like a local SeisComP3 or any FDSN-webservice compatible database like EMSC or USGS. 24 CHAPTER 3. BUILT-IN APPLICATIONS UPDATE_HOURS DATASOURCE (delay) LATENCY_SECONDS archive update realtime update DATASOURCE (protocole2) DATASOURCE (protocole1) BROOMWAGON_UPDATE_HOURS BROOMWAGON_UPDATE_HOURS Real-time frozen archive BROOMWAGON_DELAY_HOURS (1) BROOMWAGON_DELAY_HOURS (2) Figure 3.3: Schematic diagram of SEFRAN3 main parameters. The SEFRAN3 works with a fixed selection of channels (up to 15) coming from a single server source, that will be displayed together as time series using 2 different time scales (normal and high) that simulate the paper speed. SEFRAN3 has 4 different GUI: 1. Main page showing hourly thumbnail images of seismic signals for a given period of time. Identified events are shown as overlaying colored tags. Bottom part of the page is showing realtime state of each channel with some statistics on the data quality. There is two display modes: • real-time automatic refreshing page, for the last X hours/days of data; • any date selection for one or more days. 2. One hour display of full-resolution image in a wide window that can be spanned and scrolled through time. 3. A form showing a single event at high-speed time resolution of seismic signals, with possibility of editing data and submitting to the database. 4. A detailed table of events list with date selection, filters, and dynamic graphs. Notice: SEFRAN3 is using extensively the network connection (for data flux) and external programs like arclink fetch (from SeisComP3 ), slinktool (from IRIS) and convert (from ImageMagick). If you experience any trouble, check first the network, the data availability on servers, and the third-party programs. You might add the variable DEBUG|Y in the configuration file to make the logs more verbose. 3.3.2 SEFRAN3 installation SEFRAN3 is based on 1-minute images of seismic traces. It works within a loop that will end after a minimum duration run. Each loop will scan the existing images on disk, and make new images (real-time first, then look at older periods for gaps) or update them using broom wagons that check the data completeness after some time delay. There is also a short delay of few seconds to take into account the data flux lateness from real-time, and a longer delay to switch from SeedLink data request (convenient for real-time data flux) to ArcLink data request (convenient for archived data). Figure 3.3 is a summary of main parameters. Configuration files To configure a new SEFRAN3, copy the template files SEFRAN3.conf and SEFRAN3 Channels.conf to, for example, MYSEFRAN.conf and MYSEFRAN Channels.conf. MYSEFRAN Channels.conf file sets the channel list. Each channel is defined by its alias (a short code used for display), the stream string (used for the data request), the sensitivity factor (to convert counts to m/s), the filter (median, trend or spline removal), the peak-to-peak signal amplitude, and the color. A good conduct is to order the channels from North to South, and give different colors for specific regions. There is no limit to the number of channels, but a maximum of 15 channels is recommended for a normal screen resolution. MYSEFRAN.conf file is the main configuration file. It defines a lot of things like output paths, server address and all parameters of graphical outputs and SEFRAN3 behavior. SEFRAN3 Channels.conf # SEFRAN3 templa t e c h a n n n e l file # 3.3. SEFRAN3/MC3: SEISMIC CHART AND BULLETIN 25 # D e f i n i t i o n of the SEFRAN3 c h a n n e l s : # - Alias : channel alias code ( for display ) # - Stream : channel stream full name ( Network . Station . LocId . Channel ) # - S e n s i t i v i t y : s e n s i t i v i t y factor ( in counts per m / s ) # - Filter : applyes a filter to the signal : # [ X ]: c o n s t a n t offset value [ X ] ( in count ) # median : median value c o r r e c t i o n ( f o r m e r l y ’ auto ’) # trend : linear detrend c o r r e c t i o n # sp [ X ]: spline filter using [ X ] seconds i n t e r v a l points # ([ X ] is a p o s i t i v e integer ) # [ ft ][ fn ][ N ] ,[ F ] ,[ S ]: digital filters # ft = ’lp ’ ( lowpass ) , ’hp ’ ( h i g h p a s s ) , # ’bp ’ ( b a n d p a s s ) or ’bs ’ ( b a n d s t o p ); # fn = ’bu ’ ( B u t t e r w o r t h ) , ’be ’ ( Bessel ) , # ’c1 ’ or ’c2 ’ ( C h e b y s h e v type I or II ); # N = p o s i t i v e integer ; # F = f r e q u e n c y ( in Hz ) , use [ FL , FH ] for ’bp ’ # and ’bs ’ type ; # S = s t o p b a n d a t t e n u a t i o n / ripple ( in dB ) for # C h e b y s h e v only . # - PP : define the signal a m p l i t u d e ( peak - to - peak , in m / s ) # - RGB : define the signal color ( HTML format : hexa or s t a n d a r d name ) # A T T E N T I O N : for hexa format use double - quote "# FF0000 " to avoid comment ! # # # Alias Stream Sensitivity Filter PP RGB COYC G . COYC .00. LHZ 5.944420 E +09 hpbu3 ,0.2 5e -5 " # 008800" FDF G . FDF .00. LHZ 2.516580 E +09 median 5e -5 " # 008800" SSB G . SSB .00. LHZ 5.977820 E +09 median 5e -5 " # FF0000 " MBO G . MBO .00. LHZ 4.998380 E +09 median 5e -5 " # FF0000 " NOUC G . NOUC .00. LHZ 5.931530 E +09 median 5e -5 " # FF0000 " # NOUC G . NOUC .00. LHZ 5 . 9 3 1 5 3 0 E +09 hpbu3 ,0.2 5e -5 "# FF0000 " PPTF G . PPTF .00. LHZ 5.680760 E +09 median 5e -5 " # FFA500 " # PPTF G . PPTF .00. LHZ 5 . 6 8 0 7 6 0 E +09 hpbu3 ,0.3 5e -5 "# FFA500 " RER G . RER .00. LHZ 5.643860 E +09 median 5e -5 " # FFA500 " TAM G . TAM .00. LHZ 3.885600 E +09 median 5e -5 " # 000088" UNM G . UNM .00. LHZ 5.615490 E +09 median 5e -5 " # 000088" SEFRAN3.conf = key | value # ########################################################### # SEFRAN3 c o n f i g u r a t i o n file # ########################################################### TITRE | SEFRAN3 : GEOSCOPE World Seismicity BANG | 2014 ROOT | $WEBOBS { SEFRAN_ROOT }/ sefran3 CHANNEL_CONF | $WEBOBS { ROOT_CONF }/ S E F R A N 3 _ C h a n n e ls . conf CSS | SEFRAN3 . css BIGARROWS | YES PATH_WEB | $WEBOBS { S E F R A N _ R O O T _ A L I A S }/ sefran3 PATH_TMP | / tmp / sefran3 # sub - d i r e c t o r i e s : not m o d i f i a b l e after a first run ! P AT H_ I MA G ES _ MI NU T E | minute P ATH_IMAGES_HOUR | hour P AT H_ I MA G ES _ HE AD E R | header # --- Data source and format # combined format : D A T A S O U R C E | p r o t o c o l e 1 ; p r o t o c o l 2 ; delay DATASOURCE | slink :// $ { SE ED LI N K_ SE R VE R }; arclink :// $ { A RCLINK_ SERVER }? user = $ { ARCLINK_USER }; $ { A R C L I N K _ D E L A Y _ HO U R S } # notes : # p r o t o c o l e 1 is real - time data # p r o t o c o l e 2 is a r c h i v e d data # delay is time limit ( in hour ) to switch from p r o t o c o l e 1 to p r o t o c o l e 2 # p r o t o c o l e s can be slink , arclink , fdsnws or file ( m i n i s e e d ) # examples : # D A T A S O U R C E | slink :// r t s e r v e r . ipgp . fr :18000; arclink :// eida . ipgp . fr :18001? user = sefran3 ;12 # D A T A S O U R C E | slink :// r t s e r v e r . ipgp . fr :18000; fdsnws :// http :// rtpriv - cdd . ipgp . fr / fdsnws / d a t a s e l e c t /1/ query ?;2 # latency delay for r e a l t i m e data L ATENCY_SECONDS | $ { S E E D L I N K _ D E L A Y _ S E C O N D S } # seedLink server : source of real - time data ( needed to display the status table ) S EEDLINK_SERVER | rtserver . ipgp . fr :18000 S E E D L I N K _ S E R V E R _ T I M E O U T _ S E C O N D S | 30 # for backward c o m p a t i b i l i t y only ( to be used for default D A T A S O U R C E if needed )! S E E D L I N K _ D E L A Y _ S E C O N D S | 300 ARCLINK_SERVER | eida . ipgp . fr :18001 ARCLINK_USER | sefran3 A R C L I NK _ D E L A Y _ H OU R S | 12 # cleans ove rlaps in data streams CLEAN_OVERLAPS | 1 # --- Run - time p a r a m e t e r s # moving time window which is p r o c e s s e d UPDATE_HOURS | 6 26 CHAPTER 3. BUILT-IN APPLICATIONS # minimum beat of the main loop ( in seconds ) BEAT | 2 # minimum loop runtime before exit M I N _ R UN T I M E _ S E C ON D S | 600 # maximum number of p r o c e s s e d images in a single run M A X_I MAG ES_I N_R UN | 10 # --- B r o o m w a g o n : r e p r o c e s s images if needed , after a while B R OOM WAG ON_A CTI VE | 0 # minimum age ( s ) of an image to be c o n s i d e r e d ( in hour ) # multiple b r o o m w a g o n allowed in a coma - s e p a r a t e d list B R O O M W A G O N _ D E L A Y _ H O U R S | 2 ,12 # time window which will be p r o c e s s e d BROOMWAGON_UPDATE_HOURS |1 # threshold parameters BROOMWAGON_MAX_DEAD_CHANNELS |1 B R O O M W A G O N _ M A X _ G A P _ F A C T O R | 0.2 # extra seconds of signal needed for filters FILTER_EXTRA_SECONDS |0 # --- A s s o c i a t e d " Main C o u r a n t e " ( seismic b u l l e t i n ) MC3_NAME | MC3 M C 3_E VEN T_OP ACI TY | 0.4 D ISPLAY_LAST_MC | 2 DISPLAY_LAST_MC_HOURS |1 # main page refrech ( in real - time mode ) D I S P L A Y _ R E F R E S H _ S E C O N D S | 60 REF_NORTC | 1 # max number of days ( in a page ) DISPLAY_DAYS | 7 # --- Main g r a p h i c a l p a r a m e t e r s # pixel - per - inch for all PNG images output VALUE_PPI | 100 # image height ( in inches ): 7.8 means 780 pixels at 100 ppi HEIGHT_INCH | 7.8 # e q u i v a l e n t paper speed in inches per minute VALUE_SPEED | 1.2 # paper high - speed ( in / mn ) V ALUE_SPEED_HIGH | 4.8 # i n t e r t r a c e : 1 means no overlap , 0.8 means 20% overlap INTERTRACE | 0.8 T RACE_LINEWIDTH | 1 # to obtain better PNG , images are o v e r s a m p l e d PRINT_OVERSAMPLING_FACTOR |2 # labels for minute - image ( in pixels ) L ABEL_TOP_HEIGHT | 23 L A B E L _B O T T O M _ H E IG H T | 55 XTICK_INTERVAL_SECONDS |1 X T I C K _ L A B E L _ I N T E R V A L _ S E C O N D S | 10 # --- Hourly t h u m b n a i l s ( sizes in pixels ) HOURLY_WIDTH | 900 HOURLY_HEIGHT | 90 H O U R L Y _ C O N V E R T _ G A M M A | 0.4 LASTHOUR_WIDTH | 320 NOTES | $WEBOBS { PAT H _U SE RS _ HT ML }/ Sefran3_Notes . htm MENU_FILE | $WEBOBS { PA T H_ US E RS _H TM L }/ Sefran3_Menu . htm T I M E _ IN T E R V A L S _ CO N F | $WEBOBS { ROOT_CONF }/ S E F R A N 3 _ T i m e I n t e r v a l s . conf TIME_INTERVALS_DEFAULT_VALUE |6 # channel status t h r e s h o l d STATUS_OFFSET_WARNING |2 STATUS_OFFSET_CRITICAL |5 S T A T U S _ N O I S E _ W A R N I N G | 1e -6 S T A T U S _ N O I S E _ C R I T I C A L | 5e -6 S T A T U S _ D E L A Y _ W A R N I N G | 300 S T A T U S _ D E L A Y _ C R I T I C A L | 86400 Activation To activate the SEFRAN3, add a new job in the scheduler, for example with following parameters: jid: res: xeq1: xeq2: interval: logpath: valid: mysefran mysefran $WEBOBS{JOB MCC} sefran3 MYSEFRAN 600 mysefran Y 3.3. SEFRAN3/MC3: SEISMIC CHART AND BULLETIN 27 After activation, check that it runs correctly in the Scheduler Runs page (see Section 4.3). To access the main SEFRAN3 page, use the following URL (can be set for instance in the menu bar): /cgi-bin/sefran3.pl?header=1&s3=MYSEFRAN Further options are available to access all display possibilities. See perldoc CODE/cgi-bin/sefran3.pl. 3.3.3 MC3 configuration MC3.conf = key | value # ############################################################################## # MC3 Main Couran t e c o n f i g u r a t i o n p a r a m e t e r s # ############################################################################## TITLE | Main Courante Seismicity BANG | 2014 ROOT | $WEBOBS { SEFRAN_ROOT }/ mc3 PATH_WEB | $WEBOBS { S E F R A N _ R O O T _ A L I A S }/ mc3 E VENT_CODES_CONF | $WEBOBS { ROOT_CONF }/ MC3_Codes . conf DURATIONS_CONF | $WEBOBS { ROOT_CONF }/ MC3_Durations . conf A MPLITUDES_CONF | $WEBOBS { ROOT_CONF }/ MC3 _Amplit udes . conf T AB LE _ HE A DE R S_ CO N F | $WEBOBS { ROOT_CONF }/ MC3_Headers . conf PATH_SC3_QML | PATH_TMP | $WEBOBS { SEFRAN_ROOT }/ tmp PATH_TMP_WEB | $WEBOBS { S E F R A N _ R O O T _ A L I A S }/ tmp PATH_FILES | files PATH_IMAGES | images FILE_PREFIX | MC_ FRAME_WIDTH | 600 WINDOW_LENGTH_MINUTE |5 IMAGES_MAX_CAT | 60 # default table i n t e r v a l display ( in days ) D EF AU L T_ T AB L E_ DA Y S | 30 # local time zone : used only for date / hour s e l e c t i o n ( display and s t a t i s t i c s ) - data always remain in UTC ! S ELECT_LOCAL_TZ | 0 DEFAULT_SELECT_LOCAL |N NOTES | $WEBOBS { PAT H _U SE RS _ HT ML }/ MC3_Notes . htm FILTER_POPUP | $WEBOBS { P AT H_ U SE RS _H T ML }/ M C 3 _ F i l t e r _ P o p U p . htm # external catalog visit link ( formely U S G S _ U R L ) VISIT_LINK | EMSC # V I S I T _ L I N K | < A href =" https :// e a r t h q u a k e . usgs . gov / e a r t h q u a k e s / map " target =" _blank " > USGS # USGS_URL | https :// e a r t h q u a k e . usgs . gov / e a r t h q u a k e s / map AUTOPRINT | 0 PRINTER | CSS | MC3 . css P _WAVE_VELOCITY | 6 VP_VS_RATIO | 1.75 # set to 0 to keep the S - P value when c h a n g i n g P - phase NEW_P_CLEAR_S | 1 # default a m p l i t u d e value for new event : see M C 3 _ A m p l i t u d e . conf for valid keys D E FAU LT_ AMPL ITU DE | AVERAGE # default type value for new event : see M C 3 _ C o d e s . conf for valid keys DEFAULT_TYPE | UNKNOWN # small ruler p a r a m e t e r s ( o b s o l e t e ) RULER_DISPLAY | 0 RULER_LENGTH | 60 RULER_TICKS | 5 R U LER _TI CKS_ LAB EL | 10 RULER_POS_DX | 0 RULER_POS_DY | -50 # shakemaps SHAKEMAPS | 0 SHAKEMAPS_PATH | $WEBOBS { SEFRAN_ROOT }/ B3 SHAKEMAPS_URN | $WEBOBS { URN_SEFRAN }/ B3 T REMBLEMAPS_PROC | B3 # Cities for event l o c a t i o n # -------------------------------------------CITIES | $WEBOBS { ROOT_CONF }/ Cities . conf CITIES_PLACE | Guadeloupe # for MC2 c o m p a t i b i l t y P A T H _ D E S T I N A T I O N _ S I G N A U X | $WEBOBS { SEFRAN_ROOT }/ A_Depouiller W E B _ D E S T I N A T I O N _ S I G N A U X | $WEBOBS { S E F R A N _ R O O T _ A L I A S }/ A_Depouiller HYPO_USE_FMT0 | HYPO_USE_FMT1 | $WEBOBS { OVPFHYP_PATH } DISPLAY_LOCATION_DEFAULT |1 28 CHAPTER 3. BUILT-IN APPLICATIONS L O C A T IO N _ M I N _ P H AS E S | 4 # ===== S e i s C o m P 3 d a t a b a s e p a r a m e t e r s ===== S C3_EVENTS_ROOT | $WEBOBS { SEFRAN_ROOT }/ sc3_events # 4 - letter prefix of events ID S C 3 _ E V E N T S _ I D _ P R E F I X | abcd # time window to scan new events ( in days ) S C3_UPDATE_DAYS | 15 SC3_USER | SC3 # comma s e p a r a t e d list of u n w a n t e d event types ( not i m p o r t e d in MC3 ) S C 3 _ E V E N T _ T Y P E S _ B L A C K L I S T | not existing # comma s e p a r a t e d list of u n w a n t e d event types for d i s p l a y i n g l o c a t i o n in MC3 S C 3 _ E V E N T _ T Y P E S _ N O L O C A T I O N | outside of network interest , not locatable # wo2sc3 module p a r a m e t e r s W O2SC3_HOSTNAME | localhost WO2SC3_PORT | 30003 WO2SC3_MOD_ID | 1 W O2SC3_MOD_TYPE | 1 # ===== FDSN W e b S e r v i c e event p a r a m e t e r s ===== # Uses S C 3 _ E V E N T _ T Y P E S _ B L A C K L I S T , S C 3 _ E V E N T _ T Y P E S _ N O L O C A T I O N and S C 3 _ U P D A T E _ D A Y S # Default server ( when only one ) F D SNW S_E VENT S_U RL | https :// earthquake . usgs . gov / fdsnws / event /1/ query ? # W e b S e r v i c e options for catalog search : area of interest , m a g n i t u d e of i n t e r e s t F D S N W S _ E V E N T S _ S E A R C H | minmagnitude =6 # W e b S e r v i c e options for event details r e t r i e v a l : include a r r i v a l s F D S N W S _ E V E N T S _ D E T A I L | i n c l u d e a l l m a g n i t u d e s = false & i n c l u d e a l l o r i g i n s = false # Extra EMSC FDSN events server ( may have more than one ) F D S N W S _ E V E N T S _ U R L _ E M S C | https :// earthquake . usgs . gov / fdsnws / event /1/ query ? # W e b S e r v i c e options for catalog search : area of interest , m a g n i t u d e of i n t e r e s t F D S N W S _ E V E N T S _ S E A R C H _ E M S C | minmagnitude =5& maxmagnitude =6& minlatitude =11& maxlatitude =19& minlongitude = -64& maxlongitude = -59 # W e b S e r v i c e options for event details r e t r i e v a l : include a r r i v a l s F D S N W S _ E V E N T S _ D E T A I L _ E M S C | i n c l u d e a l l m a g n i t u d e s = false & i n c l u d e a l l o r i g i n s = false & i n cl ud ea r ri va ls = true MC3 Codes.conf # WEBOBS # C o n f i g u r a t i o n file for seismic b u l l e t i n " Main C o u r a n t e " # # Input to mc3 . pl and sefran3 . pl , to define events . # # key = Event - type code as r e c o r d e d in files # [ Note : UNKNOWN and AUTO are R E S E R V E D k e y w o r d s ] # # Name = Full text of event - type as p r e s e n t e d to user # # Color = A s s o c i a t e d color in display / graphs ... html hexa format # RRGGBB # # Md = how to compute d u r a t i o n m a g n i t u d e : # 1 = r e q u i r e s d u r a t i o n and S - P # 0 = r e q u i r e s d u r a t i o n only ( assumes S - P = 0 if not defined ) # -1 = never compute # # asVT = wether event is counted as VT in seismic b u l l e t i n # 1 = yes # 0 = no # # asRF = wether event is counted as r o c k f a l l in seismic b u l l e t i n # 1 = yes # 0 = no # # Location = wether l o c a t i o n info will be d i s p l a y e d # 1 = yes ( except if SC3 type in the S C 3 _ E V E N T _ T Y P E S _ N O L O C A T I O N list ) # 0 = no # # WO2SC3 = wether S e i s C o m P 3 eventID c r e a t i o n is checked # 1 = yes # 0 = no # = key | Name | Color | BgColor | Md | asVT | asRF | Location | WO2SC3 # UNKNOWN | Unknown event |\#535353|\# FFFFFF | -1|0|0|1|1 VOLCTECT | Volcano - Tectonic |\# FA8072 |\# FFFFFF |0|1|0|1|1 VOLCLP | Volcanic Long - Periode |\# DC143C |\# FFFFFF |0|0|0|1|1 VOLCTREMOR | Volcanic Tremor |\# FF4500 |\# FFFFFF | -1|0|0|1|1 ROCKFALL | Rockfall / Landslide |\#8 B4513 |\# FFFFFF | -1|0|1|0|1 TECT | Tectonic |\#228 B22 |\# FFFFFF |1|0|1|1|1 TELE | Teleseism |\# ADFF2F |\# FFFFFF |1|0|0|0|0 TPHASE |T - Phase |\#4682 B4 |\# FFFFFF | -1|0|0|0|0 SOUND | Sound |\#7 FFFD4 |\# FFFFFF | -1|0|0|0|0 ANTHROP | Anthropogenic |\# FFD700 |\# FFFFFF |1|0|0|1|0 AUTO | AUTOMATIC |\#808080|\# F6CECE | -1|0|0|1|0 COMMENT | Comment |\# FFFF22 |\#666666| -1|0|0|0|0 MC3 Amplitudes.conf # WEBOBS # C o n f i g u r a t i o n file for MC3 a m p l i t u d e signals d e f i n i t i o n 3.4. GENPLOT: GENERIC TIME SERIES 29 # # - Key = key for d a t a b a s e ( do not modify or erase ) # - Name = name for display # - Value = n u m e r i c a l value ( in signal units , i . e . , m / s or counts ) , will be # used for a m p l i t u d e event s e l e c t i o n ( with o p e r a t o r s <= - >=) # # Key | Name | Value WEAK | Weak |0 AVERAGE | Average |500 STRONG | Strong |1000 OVERSCALE | Overscale |2000 MC3 Durations.conf # WEBOBS # C o n f i g u r a t i o n file for MC3 signal d u r a t i o n s d e f i n i t i o n # # - Key = key for d a t a b a s e ( do not modify or erase ) # - Name = name for display # - Sec = number of seconds # # Key | Name | Sec s | seconds |1 mn | minutes |60 h | hours |3600 d | days |86400 3.3.4 Links with earthquake event catalogs SeisComP3 EarthWorm 3.4 3.4.1 GENPLOT: generic time series Overview GENPLOT is the default superproc to plot time series from any source of data, particularly the time series formats (see section 3.14.2). GENPLOT is able to produce graphics and text outputs from data channels of associated NODES. All the outputs will be processed for a list of preset time scales, which can be any of the following: • a fixed duration (expressed in hour, day, week, month or year) until the present time (moving window); • a window from a reference date until present time (extending window); • all available data. GENPLOT will produce, for each time scale: • one graph per NODE showing separated subplot for each selected channel; • one summary graph combining all NODES on each channel subplot using different colors. The plotted channels for the per-node and summary graphs are both configurable using respectively NODE CHANNELS and SUMMARY CHANNELS. Titles and line and marker style can also be configured: • set PERNODE TITLE and/or SUMMARY TITLE to customize the title; • set PERNODE LINESTYLE and/or SUMMARY LINESTYLE to a line specification string, a combination of two components: – a line type (see possible values in table 5.4), – a marker symbol type (see possible values in table 5.3), to choose between drawing markers and/or line and define their style; note you might specify a marker only with no line, then only the markers are plotted; • the line width and marker size can be different for each time scale using respectively LINEWIDTHLIST and MARKERSIZELIST, that should both define a size to use (in pt) for each of the timescales defined in TIMESCALELIST, coma separated values; • colors are chosen automatically by the proc: for the summary graph it will be one color per node, for the per-node graph it will be one color per channel. 30 3.4.2 CHAPTER 3. BUILT-IN APPLICATIONS Configuration Some parameter keys of GENPLOT are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). GENPLOT template = key | value # Generic PROC te m p l a t e # It can be used for i n s t a n c e with s u p e r p r o c genplot ( generic time series ). # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / genplot . m for further i n f o r m a t i o n . # long name of the PROC NAME | Generic time series # proc TYPE and OWNER TYPE | OWNCODE | ? # default raw data format ( might be o v e r w r i t t e n in each node ) RAWFORMAT | # raw data path ( might be o v e r w r i t t e n in each node ) RAWDATA | $WEBOBS { ROOT_RAWD }/ myproc # URN link to data URNDATA | / rawdata / myproc DEM_SRTM1 | N # optional user - defined DEM ( Arcinfo format , lat / lon ) # DEM_FILE | $WEBOBS { P A T H _ D A T A _ D E M }/ h i g h r e s d e m _ l a t l o n . asc # DEM_TYPE | LATLON # D E M _ C O P Y R I G H T | DEM : myDEM # time zone for outputs TZ | 0 # a d d i t i o n n a l ext e r n a l link ( s ): TEXT1 , URL1 ; TEXT2 , URL2 ;... URL | # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) # T I M E S C A L E L I S T valid suffix : h ( hour ) , d ( day ) , w ( week ) , m ( month ) , y ( year ) # T I M E S C A L E L I S T r e s e r v e d words are : all ( all a v a i l a b l e data ) , ref ( r e f e r e n c e date until now ) TIMESCALELIST | 24 h ,01 y DECIMATELIST | 1 ,1 CUMULATELIST | 1 ,1 DATESTRLIST | -1 , -1 MARKERSIZELIST | 6 ,2 LINEWIDTHLIST | 2 ,1 STATUSLIST | 1 ,0 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } genplot $SELFREF S UBMIT_RESOURCE | myproc # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # --- node p a r a m e t e r s NODE_NAME | node NODE_SIZE | 10 NODE_RGB | Red NODE_FONTSIZE | 10 NODE_MARKER | s # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf # --- page format and outputs # optional paper size width , height in inches PAPER_SIZE | # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # l a n d s c a p e format for all outputs LANDSCAPE | NO # maximum number of s u b p l o t s in a s t a n d a r d page height P AGE_MAX_SUBPLOT | 8 # makes a PDF file for each graph ( in a d d i t i o n to PNG , EPS and JPG t h u m b n a i l ) PDFOUTPUT | NO # main logo file LOGO_FILE | $WEBOBS { LOGO_DEFAULT } LOGO_HEIGHT | $WEBOBS { LOGO_HEIGHT } # main c o p y r i g h t 3.5. HYPOMAP: EARTHQUAKE HYPOCENTER MAPS FROM SEISMIC CATALOG 31 COPYRIGHT | MyProc # optional s e c o n d a r y logo file LOGO2_FILE | LOGO2_HEIGHT | $WEBOBS { LOGO_HEIGHT } # optional s e c o n d a r y c o p y r i g h t COPYRIGHT2 | # exports text data files EXPORTS | YES # --- data p r o c e s s i n g and plot # removes data picks using median filter (% of min / max values ) P I C K S _C L E A N _ P E R CE N T | 0 # replaces flat signal ( two c o n s e c u t i v e i d e n t i c a l values ) by NaN FLAT_IS_NAN | NO # applies a median filter to the data MEDIAN_FILTER_SAMPLES |0 # s u p e r i m p o s e a moving average on N samples MOVING_AVERAGE_SAMPLES |0 # set to YES to plot c o n t i n u o u s line i g n o r i n g gaps C ONTINUOUS_PLOT | NO # set Y - axis with a log scale YLOGSCALE | NO # --- per node graphs # coma s e p a r a t e d list of c h a n n e l s to plot ( default is all c h a n n e l s ) NODE_CHANNELS | # graph title PERNODE_TITLE | {\ fontsize {14}{\ bf$node_alias : $node_name } ( $timescale )} # line style : c o m b i n a t i o n of a marker and / or a line type ( see user ’ s manual ) P E RNO DE_ LINE STY LE | # set to YES to s u b s t r a c t the first data value in all plots P ERNODE_RELATIVE | NO # --- summary graph ( all nodes t o g e t h e r ) # comment this key to not plot the summary graph SUMMARYLIST | # coma s e p a r a t e d list of c h a n n e l s to plot ( default is all c h a n n e l s ) S UMMARY_CHANNELS | # graph title SUMMARY_TITLE | {\ fontsize {14}{\ bf$ { NAME }} ( $timescale )} # line style : c o m b i n a t i o n of a marker and / or a line type ( see user ’ s manual ) S U MMA RY_ LINE STY LE | # set to YES to s u b s t r a c t the first data value in all plots S UMMARY_RELATIVE | NO Time scales 3.5 HYPOMAP: Earthquake hypocenter maps from seismic catalog 3.5.1 Overview 3.5.2 Configuration Some parameter keys of HYPOMAP are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). HYPOMAP template = key | value # Generic PROC te m p l a t e for s u p e r p r o c hypomap # S u p e r f o r m a t is ’ quakes ’: see r e a d f m t d a t a _ q u a k e s . m for c o m p a t i b l e R A W F O R M A T defined # in a s s o c i a t e d NODE ’ s R A W F O R M A T field # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / hypomap . m for further i n f o r m a t i o n . # long name of the PROC NAME | Earthquake hypocenter maps from seismic catalog # proc TYPE and OWNER code ( see OWNERS . conf for O W N C O D E s ) RAWFORMAT | quakes TYPE | OWNCODE | ? # raw data path RAWDATA | # URN link to data URNDATA | # time zone for outputs TZ | 0 # a d d i t i o n n a l URL URL | # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) # T I M E S C A L E L I S T valid suffix : h ( hour ) , d ( day ) , w ( week ) , m ( month ) , y ( year ) TIMESCALELIST | 01 y ,10 y , all 32 CHAPTER 3. BUILT-IN APPLICATIONS DATESTRLIST | -1 , -1 , -1 MARKERSIZELIST | 5 ,3 ,2 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # a d d i t i o n a l summary graphs k e y w o r d s ( comma s e p a r a t e d ) SUMMARYLIST | Antilles , Guadeloupe , Martinique # SUMMARYLIST | Soufriere S UMMARY_CHANNELS | # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } hypomap $SELFREF S UBMIT_RESOURCE | hypomap # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME , SUMMARYLIST , LATLIM , LONLIM , MAGLIM , DEPLIM , PLOT_BG_ALL , BUBBLE_PLOT # node p a r a m e t e r s NODE_NAME | node NODE_SIZE | 10 NODE_RGB | 1 ,0 ,0 NODE_FONTSIZE | 10 NODE_MARKER | o # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # value = 1 to produce EPS graphs POSTSCRIPT | 1 # value = 1 to export text data files EXPORTS | 1 # main logo file LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png # s e c o n d a r y logo file LOGO2_FILE | # main c o p y r i g h t COPYRIGHT | IPGP # secondary copyright COPYRIGHT2 | # --- proc specif i c p a r a m e t e r s # for catalog data request E V E N T T Y P E _ E X C L U D E D _ L I S T | not existing , not locatable , outside of network interest , sonic boom , duplicate , other event E V E N T S T A T U S _ E X C L U D E D _ L I S T | automatic E V E N T C O M M E N T _ E X C L U D E D _ R E G E X P | AUTOMATIC SC3_LISTEVT | LATLIM | 13 ,19 LONLIM | -64 , -58 MAGLIM | 3 ,10 DEPLIM | -10 ,300 MSKLIM | 1 ,12 GAPLIM | 0 ,360 RMSLIM | 0 ,1 ERHLIM | 0 ,100 ERZLIM | 0 ,100 NPHLIM | 3 , Inf CLALIM | 0 ,4 QUALITY_FILTER | 0.7 # for graph M ARKER_LINEWIDTH | 1 PLOT_BG_ALL | .3 DEM_OPT | ’ WaterMark ’ ,2 , ’ FontSize ’ ,7 SHAPE_FILE | $WEBOBS { P AT H_ D AT A_ SH A PE }/ an t il le s_ f au lt s . bln # S T A T I O N S _ G R I D | VIEW . # H y p o c e n t e r s without i n d i v i d u a l circle line (1 yes , 0 no ) BUBBLE_PLOT | 1 # -- Maps of areas : d u p l i c a t e M A P _ a r e a n a m e _ * keys to make s p e c i f i c maps M AP_Area1_TITLE | Area1 - Lesser Antilles # map limits : lon0 , lat0 , width ( in degree ) or former lon1 , lon2 , lat1 , lat2 ( in degree ) M AP_Area1_XYLIM | -61 ,16 ,6 # m a g n i t u d e limits ( for size scale only , not a filter ) M AP_Area1_MAGLIM | 3 ,7 # depth limits ( for color scale only , not a filter ) M AP_Area1_DEPLIM | -2 ,200 # 1 or 2 op tional profile ( s ) # Profile 1 ( bottom ): center latitude , center longitude , azimuth ( degree North ) , lateral d i s t a n c e ( km ) , depth ( km ) M AP _A r ea 1 _P R OF IL E 1 | -61.4651 ,16.5138 ,55 ,100 ,200 # Profile 2 ( right ): same p a r a m e t e r s as profile1 , but drawn on the right side of the map # Colormap used : must specify the number of colors M AP _A r ea 1 _C O LO RM A P | jet (256) # Color r e f e r e n c e for markers : ’ depth ’ ( default ) or ’ time ’ M AP _A r ea 1 _C O LO RR E F | time 3.6. HELICORDER: SEISMIC HELICORDER 33 # Optional time plot : give a list of p a r a m e t e r s ( versus time ) == > alpha version not fully f u n c t i o n a l # M A P _ A r e a 1 _ T I M E P L O T | latitude , longitude , depth , magnitude , profile1 , p r o f i l e 2 3.6 HELICORDER: Seismic helicorder 3.6.1 Overview 3.6.2 Configuration Some parameter keys of HELICORDER are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). HELICORDER template = key | value # H e l i c o r d e r PROC t e m p l a t e # Makes h e l i c o r d e r s from node channels , using " events " output type . # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / h e l i c o r d e r . m for further i n f o r m a t i o n . # long name of the PROC NAME | Helicorder # proc TYPE and OWNER code ( see OWNERS . conf for O W N C O D E s ) TYPE | OWNCODE | ? RAWFORMAT | # raw data path RAWDATA | # URN link to data URNDATA | / rawdata / myproc # time zone for outputs TZ | 0 # a d d i t i o n n a l URL URL | # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) # T I M E S C A L E L I S T valid suffix : h ( hour ) , d ( day ) , w ( week ) , m ( month ) , y ( year ) TIMESCALELIST | 02 d DECIMATELIST | 1 CUMULATELIST | 1 DATESTRLIST | -1 LINEWIDTHLIST | 1 MARKERSIZELIST | 4 STATUSLIST | 1 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } helicorder $SELFREF S UBMIT_RESOURCE | helicorder # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME , HELICORDER_DURATION_DAYS , HELICORDER_TURNS , HELICORDER_SCALE , HELICORDER_PAPER_COLOR , HELICORDER_PAPER_CO # node p a r a m e t e r s NODE_NAME | node NODE_SIZE | 10 NODE_RGB | 1 ,0 ,0 NODE_FONTSIZE | 10 NODE_MARKER | o # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | DEM_SRTM1 | N # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # l a n d s c a p e format for all outputs LANDSCAPE | Y # value = 1 to produce EPS graphs POSTSCRIPT | 1 # value = 1 to export text data files EXPORTS | 1 # main logo file 34 CHAPTER 3. BUILT-IN APPLICATIONS LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png # s e c o n d a r y logo file LOGO2_FILE | # main c o p y r i g h t COPYRIGHT | MyProc # secondary copyright COPYRIGHT2 | # S T R E A M _ C H A N N E L _ S E L E C T O R | HHZ # D A T A L I N K _ D E L A Y _ S E C O N D S |600 # --- proc ’ s spe c i f i c p a r a m e t e r s # main durat ion for a single graph HELICORDER_DURATION_DAYS |1 # number of turns per d u r a t i o n H ELICORDER_TURNS | 24*2 # vertical scale ( r e l a t i v e to the signal s t a n d a r d d e v i a t i o n ) H ELICORDER_SCALE | 100 # b a c k g r o u n d paper color ( accepts html names , see CODE / matlab / htm2rgb . m ) H E L I C O R D E R _ P A P E R _ C O L O R | #0 F0F0F # trace color or color list # H E L I C O R D E R _ T R A C E _ C O L O R | black , red , mediumblue , green H E L I C O R D E R _ T R A C E _ C O L O R | whitesmoke # ytick labels HELICORDER_YTICK_HOURS |2 # g a l v a n o m e t e r ro t a t i o n effect ( use 0 to unset ) H E LIC ORD ER_R ADI US | 1 # traces trend effect H ELICORDER_TREND | N # vertical time d i r e c t i o n H EL IC O RD E R_ T OP DO W N | N # --- data p r o c e s s i n g # removes data picks using median filter (% of min / max values ) P I C K S _C L E A N _ P E R CE N T | 0 # replaces flat signal ( two c o n s e c u t i v e i d e n t i c a l values ) by NaN FLAT_IS_NAN | NO # applies a median filter to the data MEDIAN_FILTER_SAMPLES |0 3.7 RSAM: Realtime Seismic Amplitude Measurement 3.7.1 Overview 3.7.2 Configuration Some parameter keys of RSAM are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). RSAM template = key | value # RSAM PROC templ a t e # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / rsam . m for further i n f o r m a t i o n . # long name of the PROC NAME | Realtime Seismic Amplitude Measurement # proc TYPE and OWNER TYPE | OWNCODE | ? # default raw data format ( might be o v e r w r i t t e n in each node ) RAWFORMAT | # raw data path ( might be o v e r w r i t t e n in each node ) RAWDATA | # URN link to data URNDATA | / rawdata / myproc # a d d i t i o n n a l URL URL | # time zone for outputs TZ | 0 # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) # T I M E S C A L E L I S T valid suffix : h ( hour ) , d ( day ) , w ( week ) , m ( month ) , y ( year ) TIMESCALELIST | 04 h ,24 h DECIMATELIST | 1 ,1 CUMULATELIST | 1 ,1 DATESTRLIST | -1 , -1 MARKERSIZELIST | 2 ,1 LINEWIDTHLIST | .2 ,.1 STATUSLIST | 1 ,0 REF_DATE | 2017 -07 -13 12:00:00 3.7. RSAM: REALTIME SEISMIC AMPLITUDE MEASUREMENT # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } rsam $SELFREF S UBMIT_RESOURCE | rsam # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME , REF_DATE # --- node p a r a m e t e r s NODE_NAME | node NODE_SIZE | 10 NODE_RGB | Red NODE_FONTSIZE | 10 NODE_MARKER | s # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) # DEM_FILE | $WEBOBS { P A T H _ D A T A _ D E M }/ e x a m p l e d e m . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | DEM_SRTM1 | Y # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf # --- page format and outputs # optional paper size width , height in inches PAPER_SIZE | # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # l a n d s c a p e format for all outputs LANDSCAPE | NO # maximum number of s u b p l o t s in a s t a n d a r d page height P AGE_MAX_SUBPLOT | 8 # makes a PDF file for each graph ( in a d d i t i o n to PNG , EPS and JPG t h u m b n a i l ) PDFOUTPUT | NO # main logo file LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png # main c o p y r i g h t COPYRIGHT | Processing by Taisne et al ./ IPGP / EOS # optional s e c o n d a r y logo file LOGO2_FILE | # optional s e c o n d a r y c o p y r i g h t COPYRIGHT2 | # events file to plot in the b a c k g r o u n d of each graph # E V E N T S _ F I L E | $WEBOBS { R O O T _ C O N F }/ e v e n t s _ W o r l d . conf # exports text data files # EXPORTS | YES # --- data p r o c e s s i n g and plot # removes data picks using median filter (% of min / max values ) P I C K S _C L E A N _ P E R CE N T | 0 # replaces flat signal ( two c o n s e c u t i v e i d e n t i c a l values ) by NaN FLAT_IS_NAN | NO # applies a median filter to the data MEDIAN_FILTER_SAMPLES |0 # s u p e r i m p o s e a moving average on N samples M O V I N G _ A V E R A G E _ S A M P L E S | 12*60 # set to YES to plot c o n t i n u o u s line i g n o r i n g gaps C ONTINUOUS_PLOT | NO # set Y - axis with a log scale YLOGSCALE | YES # --- per node graphs # graph title PERNODE_TITLE | {\ fontsize {14}{\ bf$node_alias : $node_name } ( $timescale )} # line style P E RNO DE_ LINE STY LE | # --- summary graph ( all nodes t o g e t h e r ) # comment this key to not plot the summary graph SUMMARYLIST | SOURCEMAP # coma s e p a r a t e d list of c h a n n e l s to plot ( default is all c h a n n e l s ) S UMMARY_CHANNELS | 1 # graph title SUMMARY_TITLE | {\ fontsize {14}{\ bf$ { NAME }} ( $timescale )} # line style S U MMA RY_ LINE STY LE | # --- source mapping # number of maps will be N * N ( allowed values are 1 ,2 ,3 or 4) SOURCEMAP_N | 3 S OU RC E MA P _C O LO RM A P | jet S O U R C E M A P _ C O L O R M A P _ A L P H A | 0 ,1 S OURCEMAP_CAXIS | 0 ,2e -5 S OU RC E MA P _P L OT _M A X | Y 35 36 3.8 CHAPTER 3. BUILT-IN APPLICATIONS GNSS: GPS time series, vectors and modelling 3.8.1 Overview 3.8.2 Configuration Some parameter keys of GNSS are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). GNSS template = key | value # Generic PROC te m p l a t e for s u p e r p r o c gnss # S u p e r f o r m a t is ’ gnss ’: see r e a d f m t d a t a _ g n s s . m for c o m p a t i b l e R A W F O R M A T defined # in a s s o c i a t e d NODE ’ s R A W F O R M A T field # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / gnss . m for further i n f o r m a t i o n . # long name of the PROC NAME | GNSS time series , vectors and modelling RAWFORMAT | gipsy RAWDATA | $WEBOBS { ROOT_RAWD }/ gipsy URNDATA | $WEBOBS { URN_RAWD }/ gipsy # time zone for outputs TZ | 0 # a d d i t i o n n a l ext e r n a l link ( s ): TEXT1 , URL1 ; TEXT2 , URL2 ;... URL | # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) TIMESCALELIST | 01 y , all DECIMATELIST | CUMULATELIST | DATESTRLIST | -1 , -1 MARKERSIZELIST | 3 ,1 LINEWIDTHLIST | 1 ,.1 STATUSLIST | 1 ,0 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # summary graphs SUMMARYLIST | VECTORS , BASELINES , MODELLING , MODELTIME # for s c h e d u l e r r e q u e s t s SUBMIT_COMMAND | $WEBOBS { JOB_MCC } gnss $SELFREF S UBMIT_RESOURCE | gipsy # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME , SUMMARYLIST , V E CT O R S _ R E L A T I V E DEM_SRTM1 | N # optional user - defined DEM ( Arcinfo format , lat / lon ) # DEM_FILE | $WEBOBS { P A T H _ D A T A _ D E M }/ h i g h r e s d e m _ l a t l o n . asc # DEM_TYPE | LATLON # D E M _ C O P Y R I G H T | DEM : myDEM # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf PAPER_SIZE | 8 ,11 PPI | 100 LANDSCAPE | N PLOT_GRID | N FONTSIZE | 8 POSTSCRIPT | 1 EXPORTS | 1 LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png LOGO2_FILE | COPYRIGHT | Processing by Beauducel et al ./ IPGP COPYRIGHT2 | NODE_NAME | station NODE_MARKER | o NODE_SIZE | 6 NODE_RGB | 1 ,0 ,0 NODE_FONTSIZE | 8 # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # -------------------------------------------------------------------# specific proc ’ s p a r a m e t e r s 3.8. GNSS: GPS TIME SERIES, VECTORS AND MODELLING 37 # maximum error on p o s i t i o n ( in m ) before e x c l u d i n g the data from graphs and c a l c u l a t i o n s F IL TE R _M A X_ E RR OR _ M | 1 P I C K S _C L E A N _ P E R CE N T | 0 T REND_ERROR_MODE | 1 # minimum time window ( in days ) needed to compute a trend TREND_MIN_DAYS | 1 # ITRF r e f e r e n c e ( this is a string d i s p l a y e d on graph title , not f u n c t i o n a l ) ITRF_REF | ITRF08 # Relative veloc i t y r e f e r e n c e E ,N , U ( mm / yr ) from ITRF = c o n s t a n t trend # s u b s t r a c t e d to all data before any other p r o c e s s i n g VELOCITY_REF | 0 ,0 ,0 V E L O C I T Y _ R E F _ O R I G I N _ D A T E | 2000 -01 -01 # PERNODE graphs P E RNO DE_ LINE STY LE | o PERNODE_TITLE | {\ fontsize {14}{\ bf$node_alias : $node_name - $ { ITRF_REF }} ( $timescale )} # SUMMARY graphs S U MMA RY_ LINE STY LE | o SUMMARY_TITLE | {\ fontsize {14}{\ bf$ { NAME } - $ { ITRF_REF }} ( $timescale )} # B A S E L I N E S graphs # - default beha v i o r : all pairs of nodes , with p o s s i b l e node e x c l u s i o n and / or node r e f e r e n c e list BASELINES_EXCLUDED_NODELIST | BASELINES_REF_NODELIST | # - fixed pairs : REF1 , STA1 ; REF2 , STA1 , STA2 , STA5 B A S E L IN E S _ N O D E P AI R S | B ASELINES_TITLE | {\ fontsize {14}{\ bf$ { NAME } - Baselines } ( $timescale )} BASELINES_UNIT | mm B ASELINES_YLABEL | $ r ef _n od e _a li a s ( $ { B ASELINE S_UNIT }) B A S E L IN E S _ L I N E S TY L E | . # VECTORS : e x c l u d i n g NODES from graphs and c a l c u l a t i o n s VECTORS_EXCLUDED_NODELIST | V ECTORS_RELATIVE | N # VECTORS : if V E C T O R S _ R E L A T I V E is Y , s u b s t r a c t s a r e f e r e n c e vector in V E C T O R S _ V E L O C I T Y _ R E F : # - void ( default ): a u t o m a t i c mean v e l o c i t y ( average vector of all NODES ) # - NODE ’ s FID name or list of NODES : use the v e l o c i t y vector ( or mean v e l o c i t y vector ) # - E ,N , U : sets fixed offset values ( in mm / yr ) VECTORS_VELOCITY_REF | VECTORS_RELATIVE_HORIZONTAL_ONLY |Y VECTORS_TITLE | {\ fontsize {14}{\ bf$ { NAME } - Velocity vectors } ( $timescale )} V E C T O RS _ M I N _ S I Z E_ K M | 10 V E C T O RS _ M A X _ X Y R AT I O | 1.5 V EC TO R S_ A RR O WS HA P E | .15 ,.15 ,.12 ,.03 # defines a main target ( latitude , l o n g i t u d e c o o r d i n a t e s ) G NS S_ T AR G ET _ LA TL O N | # M O D E L L I N G graph # e x c l u d i n g NODES from graphs and c a l c u l a t i o n s MODELLING_EXCLUDED_NODELIST | # ignores vertic a l c o m p o n e n t MODELLING_HORIZONTAL_ONLY |Y # r e c o m p u t e s rel a t i v e v e l o c i t i e s before m o d e l l i n g ( instead of vectors results ) MODELLING_FORCE_RELATIVE |N # m o d e l l i n g source : ’ isotropic ’ ( f o r m e r l y ’ mogi ’) or ’ pcdm ’ ( point C o m p o u n d D i s l o c a t i o n Model ) M O D E L L I N G _ S O U R C E _ T Y P E | isotropic # misfit norm c a l c u l a t i o n : ’L1 ’ ( default ) or ’L2 ’ M O D E L L I N G _ M I S F I T N O R M | L1 # a priori h o r i z o n t a l error around the target or grid center ( in STD , km ) , 0 = no a priori MODELLING_APRIORI_HSTD_KM |0 # set a minimum error on displacements , a b s o l u t e ( mm ) and r e l a t i v e (%) to avoid NaN PDF when misfit is too high MODELLING_MINERROR_MM |5 MODELLING_MINERROR_PERCENT |1 # i n d i c a t e s the best source s o l u t i o n on graph M O D E L LI N G _ P L O T _ BE S T | Y # adds resid ual arrows ( data - model ) MODELLING_PLOT_RESIDUAL |Y # number of sigma ( STD ) to compute u n c e r t a i n t y i n t e r v a l s for best model M ODELLING_SIGMAS | 1 # color r e f e r e n c e for model space : ’ pdf ’ or ’ volpdf ’ ( source volume sign x pdf , new default ) M OD EL L IN G _C O LO RR E F | volpdf M OD EL L IN G _C O LO RM A P | jet (256) M O D E L L I N G _ C O L O R _ S H A D I N G | 0.8 M O D E L LI N G _ M A X _ D EP T H | 8000 M O DEL LIN G_BO RDE RS | 5000 M O D E L LI N G _ G R I D _ SI Z E | 51 M ODELLING_TITLE | {\ fontsize {14}{\ bf$ { NAME } - Source modelling } ( $timescale )} # specific pCDM p a r a m e t e r s for M O D E L L I N G MODELLING_PCDM_ITERATIONS |5 M O D E L L I N G _ P C D M _ R A N D O M _ S A M P L I N G | 100000 M O DEL LIN G_PC DM_ NU | 0.25 M O D E L LI N G _ P C D M _ AL I M | 0 ,1 M O D E L LI N G _ P C D M _ BL I M | 0 ,1 M O D E L L I N G _ P C D M _ O X L I M | -45 ,45 M O D E L L I N G _ P C D M _ O Y L I M | -45 ,45 38 CHAPTER 3. BUILT-IN APPLICATIONS M O D E L L I N G _ P C D M _ O Z L I M | -45 ,45 M O D E L L I N G _ P C D M _ H E A T M A P _ G R I D | 50 M O D E L L I N G _ P C D M _ H E A T M A P _ S A T U R A T I O N | 0.4 MODELLING_PCDM_HEATMAP_SMOOTH_SPAN |5 MODELLING_PCDM_HEATMAP_SMOOTH_DEGREE |1 MODELLING_PCDM_NEW_THRESHOLD |2 M O D E L L I N G _ P C D M _ N E W _ L I M I T _ E D G E _ R A T I O | 20 MODELLING_PCDM_NEW_LIMIT_EXTEND |1 MODELLING_PCDM_SUPPLEMENTARY_GRAPHS |N # M O D E L T I M E : defines the moving periods , minimum sampling , maximum models # [ NOTE ] M O D E L T I M E always uses an i s o t r o p i c source M O D E L T I M E _ P E R I O D _ D A Y | 30 ,15 MODELTIME_SAMPLING_DAY |2 M O D E L T I M E _ M A X _ M O D E L S | 50 M ODELTIME_TITLE | {\ fontsize {14}{\ bf$name - Source best model timeline } ( $timescale )} 3.9 EXTENSO: Extensometry time series and vectors 3.9.1 Overview 3.9.2 Configuration Some parameter keys of EXTENSO are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). EXTENSO template = key | value # Generic PROC te m p l a t e for s u p e r p r o c extenso # This PROC must be a s s o c i a t e d with the FORM " EXTENSO " which c o n t a i n s # c o m p a t i b l e data and needed c o m p l e m e n t a r y c o n f i g u r a t i o n files . # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / extenso . m for further i n f o r m a t i o n . NAME | Extensometry time series and vectors RAWDATA | URNDATA | TZ | -4 URL | # lists of p a r a m e t e r s ( number of coma - s e p a r a t e d rows must be c o n s i s t e n t ) TIMESCALELIST | 10 y , all DECIMATELIST | CUMULATELIST | DATESTRLIST | -1 , -1 MARKERSIZELIST | 16 ,12 LINEWIDTHLIST | 2 ,1 STATUSLIST | 1 ,0 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # a d d i t i o n a l summary graphs k e y w o r d s ( comma s e p a r a t e d ) SUMMARYLIST | VECTORS # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | S UBMIT_RESOURCE | myproc NODE_NAME | site NODE_MARKER | ^ NODE_RGB | 1 ,0 ,0 NODE_SIZE | 10 # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 MAP1_XYLIM | -61.66805 , -61.65972 ,16.03889 ,16.04722 DEM_SRTM1 | N # optional user - defined DEM ( Arcinfo format , lat / lon ) # DEM_FILE | $WEBOBS { P A T H _ D A T A _ D E M }/ h i g h r e s d e m _ l a t l o n . asc # DEM_TYPE | LATLON # D E M _ C O P Y R I G H T | DEM : myDEM # time zone for outputs TZ | 0 # a d d i t i o n n a l ext e r n a l link ( s ): TEXT1 , URL1 ; TEXT2 , URL2 ;... URL | # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf 3.10. TILT: TILTMETRY TIME SERIES, VECTORS AND MODELLING 39 PPI | 100 POSTSCRIPT | 1 EXPORTS | 1 LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png LOGO2_FILE | COPYRIGHT | Processing by Beauducel et al ./ IPGP COPYRIGHT2 | # specific PROC ’ s p a r a m e t e r s F I L T E R_ M A X _ E R R O R_ M M | 10 ZONE1_NAME | Zone Nord ZONE1_NODELIST | FNW1 , DUP1 , DUP2 , DUP3 , FNO1 ZONE2_NAME | Zone Sud - Est ZONE2_NODELIST | NAP1 , F8J1 , BLK1 , LCX1 , CSD1 ZONE3_NAME | Zone Sud ZONE3_NODELIST | DOL1 , DOL2 , PEY1 , F302 , F303 V E C T O R S _ E X C L U D E D _ N O D E L I S T | BAT0 , HOU1 V EC TO R S_ A RR O WS HA P E | .15 ,.1 ,.1 ,.04 VECTORS_VELOCITY_SCALE |0 V E C T O RS _ M I N _ S I Z E_ K M | .5 V E C T O RS _ M A X _ X Y R AT I O | 2 3.10 TILT: Tiltmetry time series, vectors and modelling 3.10.1 Overview 3.10.2 Configuration Some parameter keys of TILT are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). TILT template = key | value # Generic PROC te m p l a t e for s u p e r p r o c tilt # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / tilt . m for further i n f o r m a t i o n . # long name of the PROC NAME | Tiltmetry time series , vectors and modelling # proc TYPE and OWNER code ( see OWNERS . conf for O W N C O D E s ) TYPE | OWNCODE | ? RAWFORMAT | # raw data path RAWDATA | # URN link to data # URNDATA |/ rawdata / myproc # time zone for outputs TZ | +0 # a d d i t i o n n a l URL URL | # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) # T I M E S C A L E L I S T valid suffix : h ( hour ) , d ( day ) , w ( week ) , m ( month ) , y ( year ) TIMESCALELIST | 24 h ,01 w DECIMATELIST | 1 ,1 CUMULATELIST | 1 ,1 DATESTRLIST | -1 , -1 MARKERSIZELIST | 6 ,3 LINEWIDTHLIST | 1 ,1 STATUSLIST | 1 ,0 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # a d d i t i o n a l summary graphs k e y w o r d s ( comma s e p a r a t e d ) SUMMARYLIST | VECTORS , MODELLING S UMMARY_CHANNELS | 1 ,2 ,3 # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } tilt $SELFREF S UBMIT_RESOURCE | myproc # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME , VECTORS_EXCLUDED_NODELIST , M O D E L L I N G _ E X C L U D E D _ N O D E L I S T # node p a r a m e t e r s NODE_NAME | station NODE_SIZE | 10 NODE_RGB | 1 ,0 ,0 NODE_FONTSIZE | 10 NODE_MARKER | o 40 CHAPTER 3. BUILT-IN APPLICATIONS # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png COPYRIGHT | Processing by Beauducel et al ./ IPGP LOGO2_FILE | COPYRIGHT2 | # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # value = 1 to produce EPS graphs POSTSCRIPT | 1 # value = 1 to export text data files EXPORTS | 1 P I C K S _C L E A N _ P E R CE N T | 0 FLAT_IS_NAN | NO # applies a median filter to the data MEDIAN_FILTER_SAMPLES |0 T REND_ERROR_MODE | 1 # defines the cha n n e l s TILTX_CHANNEL | 1 TILTY_CHANNEL | 2 T E M P E RA T U R E _ C H A NN E L | 3 T IL T_ T AR G ET _ LA TL O N | PERNODE_TEMPERATURE_BACKGROUND |N P E R N O D E _ T E M P E R A T U R E _ C O L O R | 1 ,.7 ,.7 MOTION_EXCLUDED_NODELIST | M OT IO N _M I N_ S IZ E_ K M | 10 M OT IO N _M A X_ X YR AT I O | 1.5 M O T I O N _ T I M E _ C O L O R M A P | jet (256) MOTION_DEM_OPT | ’ colormap ’ ,.5* ones (64 ,3) , ’ watermark ’ ,2 , ’ interp ’ , ’ legend ’ MOTION_TITLE | {\ fontsize {14}{\ bf$name } ( $timescale )} VECTORS_TITLE | {\ fontsize {14}{\ bf$name } ( $timescale )} VECTORS_EXCLUDED_NODELIST | V ECTORS_DEM_OPT | ’ watermark ’ ,2 , ’ interp ’ , ’ legend ’ VECTORS_VELOCITY_SCALE | V E C T O RS _ M I N _ S I Z E_ K M | 10 V E C T O RS _ M A X _ X Y R AT I O | 1.5 V EC TO R S_ A RR O WS HA P E | .1 ,.1 ,.08 ,.02 M ODELLING_TITLE | {\ fontsize {14}{\ bf$name } ( $timescale )} MODELLING_EXCLUDED_NODELIST | M O D E L LI N G _ M A X _ D EP T H | 5000 M O DEL LIN G_BO RDE RS | 2500 M O D E L LI N G _ G R I D _ SI Z E | 100 M ODELLING_SIGMAS | 1 3.11 METEO: meteorological time series 3.11.1 Overview 3.11.2 Configuration Some parameter keys of METEO are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). METEO template = key | value # Generic PROC te m p l a t e for s u p e r p r o c meteo # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / meteo . m for data format and further i n f o r m a t i o n . # long name of the PROC NAME | Meteorological time series RAWDATA | $WEBOBS { ROOT_RAWD }/ campbell RAWFORMAT | cr10xasc 3.11. METEO: METEOROLOGICAL TIME SERIES # proc TYPE and OWNER code ( see OWNERS . conf for O W N C O D E s ) TYPE | OWNCODE | ? LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png TZ | 0 # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) TIMESCALELIST | 24 h ,30 d ,01 y ,10 y , all DECIMATELIST | 1 ,1 ,6 ,6 ,6 CUMULATELIST | 1/24 ,1 ,1 ,30 ,30 DATESTRLIST | -1 , -1 , -1 , -1 , -1 MARKERSIZELIST | 6 ,4 ,2 ,1 ,1 LINEWIDTHLIST | 1 ,1 ,1 ,1 ,1 STATUSLIST | 1 ,0 ,0 ,0 ,0 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | # SUMMARYLIST | # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } meteo $SELFREF S UBMIT_RESOURCE | mymeteo # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME # node p a r a m e t e r s NODE_NAME | station NODE_SIZE | 15 NODE_RGB | 1 ,0 ,0 NODE_FONTSIZE | 10 NODE_MARKER | o # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # l a n d s c a p e format for all outputs LANDSCAPE | N # value = 1 to produce EPS graphs POSTSCRIPT | 1 # value = 1 to export text data files EXPORTS | 1 # main logo file LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png # s e c o n d a r y logo file LOGO2_FILE | # main c o p y r i g h t COPYRIGHT | MyProc # secondary copyright COPYRIGHT2 | # -------------------------------------------------------------------# specific proc ’ s p a r a m e t e r s RAIN_CHANNEL | 6 R AIN_CUMSUM_DATA | NO W IN D_ S PE E D_ C HA NN E L | 5 WIND_AZIMUTH_CHANNEL |4 WIND_ROSE_STEP | 10 XY_CHANNELS | 3 ,8 NODE_CHANNELS | 1 ,2 ,7 ,4 ,5 ,3 ,8 R A I N _ A L E R T _ T H R E S H O L D | 50 R A I N _ AL E R T _ I N T E RV A L | 1 R AIN_ALERT_DELAY | 3 RAIN_ALERT_RGB | 1 ,.3 ,.3 R A I N _ A L E R T _ D E L A Y _ R G B | 1 ,.6 ,.6 41 42 CHAPTER 3. BUILT-IN APPLICATIONS 3.12 WATERS: chemical analysis 3.12.1 Overview 3.12.2 Configuration Some parameter keys of WATERS are common for all PROCS and GRIDS so are identical with the VIEW configuration (see section 2.3.1). WATERS template = key | value # Generic PROC te m p l a t e for s u p e r p r o c waters # This PROC must be a s s o c i a t e d with the FORM " EAUX " which c o n t a i n s c o m p a t i b l e # data and needed c o m p l e m e n t a r y c o n f i g u r a t i o n files . # See $WEBOBS { R O O T _ C O D E }/ matlab / s u p e r p r o c s / waters . m for further i n f o r m a t i o n . # long name of the PROC NAME | Waters chemical analysis # proc TYPE and OWNER code ( see OWNERS . conf for O W N C O D E s ) TYPE | OWNCODE | ? LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png TZ | 0 # auto refresh of graphic display D I S P L A Y _ A U T O R E F R E S H _ S E C O N D S | 3600 # lists of p a r a m e t e r s ( number of comma - s e p a r a t e d rows must be c o n s i s t e n t ) TIMESCALELIST | 10 y ,50 y , all DECIMATELIST | CUMULATELIST | DATESTRLIST | 10 ,10 ,10 MARKERSIZELIST | 4 ,2 ,2 LINEWIDTHLIST | 1 ,.5 ,.1 STATUSLIST | 1 ,0 ,0 # defines a r e f e r e n c e date to use with ’ ref ’ t i m e s c a l e in T I M E S C A L E L I S T REF_DATE | SUMMARYLIST | # e x e c u t i o n command ( for runproc shell ) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } waters $SELFREF S UBMIT_RESOURCE | waters # list of keys ed i t a b l e in r e q u e s t s R EQUEST_KEYLIST | NAME # node p a r a m e t e r s NODE_NAME | spring NODE_SIZE | 15 NODE_RGB | 0 ,1 ,1 NODE_FONTSIZE | 10 NODE_MARKER | s # file for b a c k g r o u n d time r e f e r e n c e d events EVENTS_FILE | $WEBOBS { ROOT_CONF }/ events_World . conf # --- optional user - defined DEM , in ArcInfo format ( o v e r w r i t e s SRTM / ETOPO default ) DEM_FILE | $WEBOBS { PATH_DATA_DEM }/ exampledem . asc # DEM c o o r d i n a t e system : UTM or LATLON DEM_TYPE | LATLON DEM_COPYRIGHT | # g r a p h i c a l density for PNG outputs ( in pixel per inches ) PPI | 100 # l a n d s c a p e format for all outputs LANDSCAPE | N # value = 1 to produce EPS graphs POSTSCRIPT | 1 # value = 1 to export text data files EXPORTS | 1 # main logo file LOGO_FILE | $WEBOBS { ROOT_CODE }/ icons / ipgp / logo_WOVS . png # s e c o n d a r y logo file LOGO2_FILE | # main c o p y r i g h t COPYRIGHT | MyProc # secondary copyright COPYRIGHT2 | 3.13. PROCS GRAPH AND DATA REQUEST 3.13 PROCS graph and data request 3.13.1 Overview 43 A dedicated form /cgi-bin/formREQ.pl allows to make user request to get any outputs (graphs and data) from PROCS sharing the same set of time span and parameters, mostly independent from the SCHEDULER’s jobs. The identified USER has to be authorized for reading on the PROC to perform a request on it. 3.13.2 Description The form presents a list of available PROCS with empty check boxes. One or more PROCS can be selected, in that case a parameter list might appear for each of selected PROC, allowing the user to change the values. Please note there is no validity check of the values so a request may fail in case of invalid fields. The main parameter to define is the date and time span: Start date and End date with time. Default is the last full month. A list of preset dates is also available. The date and time must be in UT. Also some output parameters can be defined: • TZ: the output time zone, in hours. Will affect graphs and data exports. • Date format: the format of dates for time series plots axis ticks label. • Cumulate: time for cumulating data (when cumulative allowed in the PROC), in day. Use fraction or any arithmetic formula if needed. • Decimate: number of sample for decimation of the raw data (time series). • Marker size: maker size in points (if the PROC uses markers). • Line width: line width in points (if the PROC uses lines). • PPI: resolution for PNG output images, in pixel per inch. • Postscript: outputs the EPS vector graphic images (default is cheched). • PDF: outputs a PDF version of images. • Exports: outputs data (text files or others depending on the PROC). After submit the request, each of the PROC will be submitted to SCHEDULER as specific jobs. The name of the job is made from date and time of the request, hostname and user login name. The run of each PROC can be followed on the scheduler runs page. If a job ends with success, a notification email is sent to the user through the POSTBOARD. The email provides two links: a first to access the request results (graphs and exports) through a web interface similar to the routine PROC graphs. The second link allows to download a .tgz archive containing all images and files of the request. 44 CHAPTER 3. BUILT-IN APPLICATIONS A dedicated page is also available to access request results: /cgi-bin/showREQ.pl. The page will show the user’s requests and results (if the request job has ended successfully), or all the existing requests for ADMIN users. 3.13.3 Configuration PROC.conf (excerpt) SUBMIT_COMMAND | $WEBOBS { JOB_MCC } genplot $SELFREF S UBMIT_RESOURCE | myproc R EQUEST_KEYLIST | NAME , SUMMARY_RELATIVE , P E R N O D E _ L I N E S T Y L E The request form displays any PROC containing a not-empty SUBMIT COMMAND parameter in its configuration. This parameter is the routine execution command line, ie. equivalent to the value of a XEQ1 in the SCHEDULER (see scheduler.pl doc) and, as such, supporting $WEBOBS parameters substitution. The SUBMIT RESOURCE is the optional routine execution mutex name (process lock) of as defined in SCHEDULER if the PROC is one of the routine jobs. This is to avoid possible conflicts of simultaneous runs. Optionally, the REQUEST KEYLIST parameter is used to specify a list of comma-separated keys of existing parameters, that will be presented to the user so that (s)he will have a chance to overwrite corresponding values for request execution. The user defined output parameters Date format, Cumulate, Decimate, Marker size and Line width correspond to table values DATESTRLIST, CUMULATELIST, DECIMATELIST, MARKERSIZELIST and LINEWIDTHLIST, respectively. The list of available preset values for PPI resolution, marker size and line width can be defined in WEBOBS.rc : WEBOBS.rc (excerpt) REQ_PPI_LIST | 75 ,100 ,150 ,300 ,600 R E Q _ M AR K E R S I Z E _ LI S T | 1 ,2 ,4 ,6 ,10 ,15 ,20 R EQ _L I NE W ID T H_ LI S T | 0.1 ,0.25 ,0.5 ,1 ,1.5 ,2 ,3 To use the notification email facility, POSTBOARD must be running, and the special event formreq. must be defined and valid (see WebObs Users Manager page). 3.14 Data formats available for PROCS Formats are defined for a whole PROC in the RAWFORMAT PROC’s variable, or for individual NODE in the RAWFORMAT NODE’s parameter which overwrites the PROC value. The RAWDATA PROC’s variable can be defined for all associated NODES, and any individual NODE’s RAWDATA may overwrite it. A special variable $FID might be used and will be replaced by each NODE’s value. For most of the formats, the Calibration File of each associated NODE will define the list of available channels and associated parameters. See the source codes CODE/matlab/readfmtdata.m help for more details. 3.14.1 Waveforms formats These formats are standards in seismology for waveforms data, but they are also used for other types of geophysical sensors. The standards use local files in specific format or dedicated protocol request from distant servers. Particularly, the full channel stream must be defined for each NODE, i.e.: NET STA CHA LOC network code station code channel code location code FDSN NETWORK CODE NODE’s parameter FID NODE’s parameter calibration file “Chan. Code” channel parameter calibration file “LC” channel parameter {miniseed}: miniSEED files Single of multiple local files in miniSEED format. RAWDATA defines the filename(s) using standard bash syntax (accepts wildcards). Some limitations may apply due to bash line size limit. {seedlink}: SeedLink request SeedLink protocol request from a distant or local server. RAWDATA defines the server with host:port. The format uses external program slinktool defined by the WEBOBS.rc SLINKTOOL PRGM parameter. DATALINK DELAY SECONDS defines the delay in seconds from real-time for the last data. 3.14. DATA FORMATS AVAILABLE FOR PROCS 45 {arclink}: SeisComP3 ArcLink request ArcLink protocol request from a distant or local server. RAWDATA defines the server with host:port. Optional parameter ARCLINK USER can be defined (default user is ’wo’). The format uses external program arclink fetch defined by the WEBOBS.rc ARCLINKFETCH PRGM parameter. {combined}: SeisComP3 combined SeedLink/ArcLink request The combined format will use SeedLink protocol for recent data and ArcLink protocol for data older than a delay. RAWDATA must contain the string seedlinkhost:seedlinkport;arclinkhost:arclinkport;delayhours. It will use both external programs defined in WEBOBS.rc SLINKTOOL PRGM and ARCLINKFETCH PRGM parameters. {fdsnws-dataselect}: FDSN web-service dataselect request Distant waveform request using the FDSN web-service protocol available at most of seismological data centers. RAWDATA must contain the base URL, for example: http://service.iris.edu/fdsnws/dataselect/1/query? for IRIS. {winston}: EarthWorm Winston wave server request EarthWorm Winston wave server (WWS) protocol request from a distant or local server. RAWDATA defines the server with host:port. 3.14.2 Generic time series These formats will return time series of data channels, like the waveform formats do but usually the data sampling frequency is lower than for seismic waveforms, so it can be managed using data files stored in local directories. Number of channels depends on the data and can be selected and calibrated using the NODE’s calibration file. {ascii}: Generic ASCII text files Attempt to read generic text files with regular data columns. RAWDATA contains the full path and filename(s) using bash wildcard facilities. The data files must be organized as regular columns of numbers (strings will produce a column of NaN), any separator character, and the date and time must be defined as 3 (year, month, day) or 6 columns (year, month, day, hour, minute, second) at some place (default is the 6 first columns). If there is no calibration file for a NODE, the header line will be used to get the channel names. For this format you may define optional additional FID * keys for each NODE to specify the format: FID FS FID TIMECOLS FID NF FID HEADERLINES field separator character (default is semicolumn), index vector of columns defining date&time in order: year month day hour minute second, number of data columns in the file, considering all non-numeric as separator (default is automatic), number of header lines (default is 1). Generic ASCII format example 1: time + data channels 1 to 3. Date ; 06/06/2017 18:00:00; 06/06/2017 18:00:09; P_0 ; 752.579529; 724.445852; SO2_0 ; -0.061299; -0.071515; H2S_0 ; -0.031172; -0.024938; FID * parameters to read example 1 file. FID_FS | ; FID_TIMECOLS | 3 ,2 ,1 ,4 ,5 ,6 FID_NF | 9 F ID_HEADERLINES | 1 Generic ASCII format example 2: data channel 1 (all NaN) + time + data channels 2 to 4. VMAB VMAB VMAB 01/01/12 01/01/12 01/01/12 06:20:11 06:40:11 07:00:11 132 135 133 338 337 336 40.6 40.7 40.6 FID * parameters to read example 2 file. FID_FS | \ t FID_TIMECOLS | 4 ,3 ,2 ,5 ,6 ,7 FID_NF | 10 F ID_HEADERLINES | 0 46 CHAPTER 3. BUILT-IN APPLICATIONS {sql-table}: SQL-table request Request to a SQL database using external program mysql. RAWDATA must contain the full command that will return the data in the text format yyyy-mm-dd HH:MM:SS data1 data2 data3 .... The command must include two variables $date1 and $date2 that will be replaced by the timespan request. Example: mysql -h host -u user -ppasswd -Ddatabase -N -B -e ’SELECT time,data1,data2,data3 from $FID WHERE time between ”$date1” and ”$date2”;’ will make a request from the database at server host on the table $FID and return timestamp and data columns. The calibration file must define these 3 channels in that order. {cr10xasc}: Campbell Scientific CR10X ASCII files Daily data files from data loggers CR10X archived in a specific directory structure. RAWDATA contains the main directory path, in which files are stored in the following subpath and name: FID/YYYY/YYYYMMDD.DAT. Each file has the data format: PRGM,yyyy,doy,HM,data1,data2, ... ,dataN, where PRGM is the program number, yyyy the 4-digit year, doy the day of the year (ordinal day), HM the hour and minute with leading blanks, and the data. Campbell CR10X format example 121 ,2013 ,365 ,2340 ,8.6971 , -20.168 ,0 ,91.3 ,22.48 ,0 ,826.42 ,12.514 ,99999 ,0 ,0 121 ,2013 ,365 ,2350 ,8.7294 , -20.016 ,0 ,88.4 ,20.02 ,0 ,826.43 ,12.521 ,99999 ,0 ,0 {t0a5}: Campbell Scientific T0A5 ASCII files Daily data files from Campbell Scientific data loggers in the T0A5 output format, archived in a specific directory structure. RAWDATA contains the main directory path, in which files are stored in the following subpath and name: FID/YYYY/FIDYYYYDDD.DAT. Each file has the data format: ”yyyy-mm-dd HH:MM:SS”,data1,data2, ... ,dataN. Campbell T0A5 format example "2014 -01 -11 00:00:00" ,68148 ,12.1 ,16.07 ,15.29 ,100 ,938 ,0.02 ,0.02 ,0 ,7.875425 ,98.67353 ,10.86884 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 "2014 -01 -11 00:10:00" ,68149 ,12.1 ,15.96 ,14.76 ,100 ,938 ,0.021 ,0.021 ,0 ,7.200668 ,101.9742 ,11.35311 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 {porkyasc}: USGS Porky ASCII files Daily data files from USGS Porky data systems, archived in a specific directory structure. RAWDATA contains the main directory path, in which files are stored in the following subpath and name: FID/YYYY/YYYYMMDD.DAT. Each file has the data format: DD-MMM-YYYY HH:MM data1 data2 ... dataN. USGS Porky format example 01 - JAN -2014 00:00 01 - JAN -2014 00:05 3.14.3 00000 00001 00029 00040 00013 00010 03181 03182 00001 -00998 -00998 -00998 00001 -00998 -00998 -00998 Quakes catalogs These are specific formats for PROCS dedicated to earthquake catalogs. These formats returns a list of event with preset channels, like Latitude, Longitude, Depth, Magnitude, etc... There is no calibration file (if it exists it will be ignored). It is possible to link this format with a Main Courante (MC3) database using the NODE’s FID MC3 with the MC3 name. In that case some information from MC3 might be associated to identified events. An other specificity of these formats is that all catalogs from different associated NODES will be concatenated in a single data matrix. This allows to merge for instance, a distance worldwide catalog like USGS (for large earthquakes), a local catalog from a local network, and an historical catalog in an old-fashion file format. {hyp71sum2k}: Quake Hypo71 summary lines year 2000 compatible Single file in the HYPO71 ASCII format identified by RAWDATA with full filename and path. The standard format is completed by two last columns: SCode for a 5-letter identification code, and File for the waveform filename. Note the file is column formatted, without any delimiter, there is no leading zeros but blanks, and the longitude value is positive towards the West. 3.14. DATA FORMATS AVAILABLE FOR PROCS 47 HYPO71 format example # DATE ORIGIN LAT_N 18430208 1440 00.00 16 -44.00 20141005 1819 07.34 14 -48.70 LON_W DEPTH MAG NO GAP DMIN RMS ERH ERZ Q 61 -10.00 000.00 8.00 00 000 00.0 0.00 00.0 00.0 0 61 -10.33 -0.24 D 1.52 8 166 0.3 0.26 0.6 0.8 C SCode File TE9GM EB1 20141005 _181900 . mq0 {fdsnws-event}: Quake FDSN WebServices event request Distant event data request using the FDSN web-service protocol available at most of seismological data centers. It accepts the QuakeML 1.2 format only. RAWDATA must contain the base URL, for example: http://service.iris.edu/fdsnws/event/1/query? for IRIS. {scevtlog-xml}: Quake SeisComP3-xml files Reads a files architecture created by the SeisComP3 scevtlog module. RAWDATA defines the path root where events are stored in a subdirectory structure as YYYY/MM/DD/eventID/eventID.last.xml in the SC3ML format. 3.14.4 GNSS solutions These are specific formats for PROCS dedicated to positioning data from GNSS (Global Network Satellite Systems) like GPS or GLONASS. These formats returns preset channels: Eastern, Northern, Vertical and Orbit type. {gipsy-tdp}: JPL GIPSY-OASIS TDP files TDP (Time Dependant Parameter) files results of the JPL GIPSY-OASIS processing in IRTF. The format uses only the position part of the data: Time Dinit Dfinal error STA c ssss where Time is GPS date in seconds past J2000, c is the component in geocentric referential, ssss the station name. P.RAWDATA contains the path root directory where daily solutions files are stores in a subdirectory structure as FID/YYYY/FID/YYYY-MM-DD.FID.tdp*. GIPSY-OASIS TDP format example 476712000.0000 476712000.0000 476712000.0000 17 9 7 . 1 1 4 6 0 4 0 0 0 0 0 -5375.91966100000 29 2 0 . 3 4 9 7 1 8 0 0 0 0 0 1 7 9 7 . 11 4 6 3 3 8 4 4 2 1 -5375.91974126823 2 9 2 0 . 34 9 7 5 9 7 7 4 7 2 9.751 E -07 2.297 E -06 1.377 E -06 STA Z STA Y STA X ABD0 ABD0 ABD0 {globkval}: MIT GAMIT-GLOBK VAL files Single file output of Gamit-GlobK processing in ITRF referencing. P.RAWDATA defines the full path filename of the .VAL result file which contains solution timeseries for each component and each station. GAMIT-GLOBK VAL format example Combination of ALL networks ILAM_GPS to E Solution 1 + 32197594.810 m 2012 12 19 11 59 2012 12 20 11 59 ... 2013 12 17 11 59 Wmean Slope 32197 594.8099 0 32197 594.8108 7 0.00626 0.00433 -0.00183 -0.00090 0.00626 0.00433 32197 594.8186 6 0.00519 -0.00799 0.00519 32197594.8184 m + - 0.0003 from 15.01 + 0.84 mm / yr , WRMS Combination of ALL networks ILAM_GPS to U Solution 1 + 2012 12 19 11 59 2012 12 20 11 59 ... 2013 12 17 11 59 Wmean Slope 3.14.5 340 data . WRMS 5.2 mm , NRMS 1.19 3.1 mm , NRMS 0.70 , dur 0.99 <> 2013.41 yr -0.750 m -0.74977 -0.74919 0.01910 0.01048 0.01410 0.01471 0.01910 0.01048 -0.80060 0.01370 -0.02614 0.01370 -0.7686 m + - 0.0006 from -10.66 + 2.20 mm / yr , WRMS 340 data . WRMS 9.3 mm , NRMS 0.82 8.8 mm , NRMS 0.78 , dur 0.99 <> 2013.41 yr Other specific formats These formats are basically time series but the channels are predefined. 48 CHAPTER 3. BUILT-IN APPLICATIONS {teqc-qc}: TEQC Rinex quality check {naqs-soh}: NAQS State of Health {wodbform}: WebObs database forms This format is not selectable. It becomes active automatically when a PROC is associated to a FORM and its specific database. In that case the data columns are determined by the FORM type. Chapter 4 Administration 4.1 4.1.1 Users, Groups and Authorizations Overview WebObs uses its own AUTHORIZATION system, in addition to the Apache Authentication system, to identify its HTTP USERS and control their individual ACCESS-RIGHTS to WebObs RESOURCES (ie. logical entities refering to files, processes, html-pages, whatever). AUTHORIZATION system elements: • a USERS TABLE that further identifies the USERS defined in the Apache Authentication files (eg. .htpasswd), • a GROUPS TABLE that merely defines groups of USERS, to simplify (reduce number of) access-rights definitions, • RESOURCES are fully identified as resourceType.resourceName, • RESOURCES TABLES are the resourceType tables containing their own resourceName descriptions, • a resourceName description defines the relationship uid-or-gid has access-rights, • Supported access-rights are: – R = 1 Read – E = 2 Edit = Read + Write – A = 4 Admin = Edit + Create/Delete 4.1.2 Users table and Groups table A WebObs USER is identified by its LOGIN (string) as also defined in the HTTP Authentication system. A row in the USERS TABLE further defines a USER with the following information: • LOGIN • FULLNAME, the user’s name • UID, a short identification string, usually the user’s name initials, to be used for access-rights and other functionnal needs • EMAIL, the email address (somebody@somewhere) used by the WebObs POSTBOARD system, Two special UIDs are reserved for system use: • ? to identify a GUEST user (granted to undefined users for temporary/limited access to WebObs ), • ! to identify the WEBOBS OWNER. Records of the GROUPS TABLE associate UIDs to GROUP names (aka GID). A GID must starts with a ’+’ sign. A USER may be a member of more than one GROUP. A USER inherits all access-rights defined for the GROUP(s) it belongs to. Four (4) special GROUPs are pre-defined in WebObs : +ADMIN, +DUTY, +OBSERVER and +VISITOR. They are initially used to define access-rights to WebObs built-in tools and/or applications. 49 50 CHAPTER 4. ADMINISTRATION 4.1.3 Resource tables The fully qualified name of a WebObs RESOURCE is resourceType.resourceName. There are five (5) resourceType tables: authviews, authprocs, authforms, authwikis corresponding to the base WebObs objects and authmisc for any additional, unclassified, resourceNames definitions. They are already populated with resourceNames related to WebObs built-in tools and applications. The special resourceName ”*” stands for ”all resourceNames of this resourceType”. resourceNames are strings, defined and documented by the developers of the WebObs tools or applications. 4.1.4 Managing Users and Authorizations The USERS ADMIN page /cgi-bin/usersMgr.pl (built-in tool), initially restricted to the +ADMIN group, is used to create/modify/delete user and resources definitions. USERS and RESOURCE TABLES have customization variables in the main configuration file WEBOBS.rc: WEBOBS.rc (excerpt) SQL_DB_USERS | $ { ROOT_CONF }/ WEBOBSUSERS . db S QL_TABLE_USERS | users S Q L _ T AB L E _ A U T H P RO C S | authprocs S Q L _ T AB L E _ A U T H V IE W S | authviews S Q L _ T AB L E _ A U T H F OR M S | authforms S Q L _ T AB L E _ A U T H W IK I S | authwikis S QL _T A BL E _A U TH MI S C | authmisc S QL_TABLE_GROUPS | groups 4.1.5 Developing with Users and Authorizations system The WebObs::Users perl module is the built-in interface to the USERS/AUTHORIZATIONS objects and functions system. Detailed programming information can be found in its ’perldoc’ documentation, such as: • global variables USERS, USERIDS and CLIENT • the special ’path-like’ specification for resourceNames • functions: allUsers, clientHasRead, clientHasEdit, clientHasAdm, listRNames Developers may add/define/use their own resourceName(s) for their specific needs. 4.1.6 Adding a new user Registration of a new user is done in 3 steps: 1. new user must fill the form (see screenshot 4.1) by connecting to WebObs interface and click ’Cancel’ when asked to login. The data (with encrypted password) will be stored as a new pipe-separated line in the file DATA/DB/reglog and an e-mail will be sent to user and WebObs owner; 2. using Users Admin interface, administrator adds the user (see section 4.1.2); 3. add manually the encrypted password as a new line to the file CONF/htpasswd; this activates the Apache user. 4.2 4.2.1 PostBoard Overview WebObs tools and applications may wish to send (email) alerting/warning/information messages to WebObs USERs when detecting special processing conditions or other events. Deciding who needs/wishes to receive such messages, and actually sending them, should be as easy as possible from the developers point of view; furthermore, WebObs administrators should be able to easily filter/choose which users should receive what, based on operationnal needs, authorizations concerns, and even user’s choice of being (or not being) alerted. The WebObs POSTBOARD system (notifications/subscriptions) addresses these needs. Elements of POSTBOARD architecture: 4.2. POSTBOARD 51 Figure 4.1: Registration form for new users. • Tools and applications simply and unconditionnaly send identified messages (NOTIFICATIONS) to POSTBOARD • NOTIFICATIONS basically look like ”eventname|senderId|message” • POSTBOARD is a daemon that tries to match the eventname of the NOTIFICATIONS it receives against active SUBSCRIPTIONS that tell it what to do: either send a mail to a UID (or GID), or trigger a command, or both • a SUBSCRIPTION is a row in the WebObs NOTIFICATIONS TABLE with the following fields: eventname validity uid subject attachment action 4.2.2 identifying the SUBSCRIPTION to match NOTIFICATIONS sent to POSTBOARD indicating active/inactive UID or GID to whom mail the NOTIFICATION subject of the mail being sent optional, path of a file to attach to mail optional, a command to be executed Event names Event names identify and associate NOTIFICATIONS to SUBSCRIPTIONS: • eventname = string[.[string]] • string.string is known as the majorname.minorname form of an event-name • majorname.minorname identifies a single subscription named majorname.minorname AND • a majorname. subscription, if defined as such (don’t forget the ending dot!), will also match all majorname.minorname notifications This is the way to define common mail/action to a set of notifications. • some eventnames are already defined for internal WebObs usage. These reserved eventnames are : eventnode , formreq. , scheduler.alert , scheduler.warning , submitrc. Example: a WebObs application may issue (notify) NOTIFICATIONs identified with myevent eventname; The SUBSCRIPTION myevent,Y,UID,mysubject,-,- is registered in the NOTIFICATION TABLE; the following mail will eventually be sent by POSTBOARD when the application notifies ”myevent||the application message” : mail for myevent notification From : we bob s@we bo b s a d d r To : UID ’ s mailaddr Subject : [ WEBOBS_ID ] mysubject User - Agent : Mutt /1. x . xx (2000 -01 -01) the application message 4.2.3 Managing PostBoard Subscriptions The USERS ADMIN page /cgi-bin/usersMgr.pl (built-in tool), initially restricted to the +ADMIN group, is used to create/modify/delete the POSTBOARD SUBSCRIPTIONs in the NOTIFICATIONS TABLE. 52 CHAPTER 4. ADMINISTRATION CODE/cgi-bin/postboard.pl is the Perl daemon. CODE/shells/postboard is the command line interface to start/stop, query status and even send NOTIFICATIONs to POSTBOARD. Usage: postboard [start|stop|status|kill|notify] POSTBOARD also has customization variables in the main configuration file WEBOBS.rc: WEBOBS.rc (excerpt) S QL_DB_POSTBOARD | $ { SQL_DB_USERS } S Q L _ T A B L E _ N O T I F I C A T I O N S | notifications P OSTBOARD_NPIPE | / tmp / WEBOBSNP P OSTBOARD_MAILER | mutt P O S T B O A R D _ M A I L E R _ O P T S | - nx P O S T B O A R D _ M A I L E R _ D E F S U B J E C T | WebObs notification 4.2.4 Developing with Notifications The WebObs::Config perl module exports the notify function to be used to send NOTIFICATIONS to POSTBOARD. The notify.m module plays the same role from MatLab code. Detailed programming information can be found in CODE/cgi-bin/postboard.pl perldoc documentation, such as: • the WebObs::Config::notify function syntax, • eventnames naming conventions, • notification string syntax: event-name|sender-id|message and automatic timestamp , • message component interpretation and special keywords, • the special submitrc. eventname, • POSTBOARD MAILER considerations, • subscription’s ACTIONs considerations 4.3 Scheduler 4.3.1 Overview The SCHEDULER is the daemon that controls the execution of WebObs batch JOBS. It has been developed to meet the following needs that, for some of them, would have been more difficult to tackle, or simply have required as much development, with a regular crontab architecture: • schedule execution of a jobs based on the elapsed time since their previous execution, • manage parallel executions of jobs, • implement a mutually exclusive locking mechanism between jobs execution, • implement a simple checking of CPU load to accept or delay jobs execution, • centralize and normalize the jobs definitions, also with run-time parameters substitutions, • standard output and error archiving and consultation, • centralize reporting/history with housekeeping and HTML interface, • accept dynamic jobs submission in addition to regular jobs, • use WebObs POSTBOARD for errors/warnings and end-of-jobs notifications, • provide both command line and HTML interfaces to JOBS and EXECUTIONS management The SCHEDULER daemon is CODE/cgi-bin/scheduler.pl whose execution is controlled with the command line interface CODE/shells/scheduler. 4.3. SCHEDULER 4.3.2 53 Configuration and Tables The main configuration file WEBOBS.rc holds the CONF SCHEDULER variable that points to the SCHEDULER’s configuration file used to customize its execution environment. Default configuration file is scheduler.rc : scheduler.rc BEAT | 2 MAX_CHILDREN | 10 PORT | 7761 SOCKET_MAXLEN | 1500; SQL_DB_JOBS | $WEBOBS { ROOT_CONF }/ WEBOBSJOBS . db DAYS_IN_RUN | 30 DITTO_LOG_MAX | 500 DITTO_NTF_MAX | 1000 CANCEL_SUBMIT | 600 CLEANUP_RUNS | 999 , zombie L OA DA V G1 _ TH R ES HO L D | 0.7 L OA DA V G5 _ TH R ES HO L D | 0.7 L O A D A VG 1 5 _ T H R E S HO L D | 0.7 LMISS_BIAS | 10 EMISS_BIAS | 4 PATH_STD | $WEBOBS { ROOT_LOGS }/ jobslogs PATH_RES | $WEBOBS { ROOT_LOGS }/ res # # # # # # # # # # # # # # # # # internal processing loop frequency in seconds maximum number of simu ltaneous ly started jobs commands ’ interpreter udp port number commands ’ interpreter max command size sqlite database for JOBS and RUNS tables number of days JOBS are kept in RUNS table controls repeating messages in log controls repeating messages notified max seconds submitted JOBS wait in Queue how to tag zombie RUNS ( unknown end of job ) max 1 - sec cpu load threshold to start JOBS max 5 - sec cpu load " max 15 - sec cpu load " seconds to delay candidates on load - threshold seconds to delay candidates on enq busy root path for all STDOUT and STDERR of JOBS directory to hold JOBS resources ( locks ) JOBS TABLE JOBS to be scheduled are uniquely identified with a JID and defined into the JOBS TABLE by the following fields: JID VALIDITY flag RESOURCE name XEQ1, XEQ2 and XEQ3 INTERVAL LOAD THRESHOLD LOGS PATH LAST START TIMESTAMP JOB’s ID unique string indicates wether JID is eligible for execution a string identifying a mutually exclusive jobs lock 3 components of the actual command that is started for JOB’s execution required elapsed time (seconds) between two executions of the JOB max CPU LOAD value to allow execution of the JOB path of the JOB’s STDOUT and STDERR files (not editable) RESOURCE syntax A RESOURCE is simply identified by its freely choosen name (a string not containing double-dash, ie –). It may also be a set of individual resources (a ’+’ separated list of names): all of these individual resources must be simultaneously free for the job to be executed. XEQ1, XEQ2, XEQ3 syntax XEQ1, XEQ2 and XEQ3 will be concatenated, in this order, to build the actual JOB command to be executed. Those fields have no special meanings for execution, except XEQ2 for LOGPATH (see below), and only one is obviously required to build a valid command; but they may ease maintenance and lisibility. They all accept variables interpolation: ie. they may specify any number of variable names from the main configuration file WEBOBS.rc, coded as $WEBOBS{variableName}. JOBS LOGS PATHS syntax JOBs can redirect/build their own STDOUT and STDERR, however the following rules are implemented as a default behavior in the SCHEDULER: • All JOBS outputs as a whole will be placed into the common $SCHED{PATH STD} directory, • JOBs’ specific LOGPATH definitions are relative to this common directory The following table shows LOGPATH syntax (left) and its full interpretation (right), where any subdirectories will be dynamically created if needed, and pid is the JOB’s PID (ie. KID) : name name/ name/name/out (null) $SCHED{PATH $SCHED{PATH $SCHED{PATH $SCHED{PATH STD}/name.std{out,err} STD}/name/pid.std{out,err} STD}/name/name/name/out.std{out,err} STD}/pid.std{out,err} 54 CHAPTER 4. ADMINISTRATION The following two redirection rules apply to any one of the above syntaxes: >name >>name (the default) overwrites previous file with same name appends to previous file with same name The following TAGS are also available in the name(s) you supply for easier specification of unique log files: {TS} {RTNE} 4.3.3 replaced with job’s start-timestamp replaced with job’s XEQ2 string, with any blanks (spaces) chars changed to underscores. Jobs selection and execution The SCHEDULER continously scan the JOBS TABLE to find CANDIDATES for execution: ie those VALID JOBS whose LAST RUN TIMESTAMP is now older than their INTERVAL. JOBS may also be submitted for immediate execution from the command line, or from another application, regardless of their INTERVAL normal delay and of their VALIDITY flag. Submitted JOBS are automatically CANDIDATES and placed in a JOB REQUEST QUEUE (JOBRQ) where they can stay no more than $SCHED{CANCEL SUBMIT} seconds. The SCHEDULER then scans all CANDIDATES, starting with the JOBRQ, to actually start (execute) JOBS that fullfill their CPU LOAD THRESHOLD and RESOURCE (lock) conditions. JOB execution’s command is the concatenation of the JID’s XEQ1, XEQ2 and XEQ3 strings, in this order, and with ${WEBOBS} variables interpolation. Started JOBS are placed into a RUNQ for monitoring and future end-of-job processing, and in the RUNS TABLE for reporting/history. CANDIDATES that are not moved to the RUNQ because they don’t fullfill their CPU LOAD THRESHOLD and RESOURCE (lock) conditions, will automatically be candidates again on the next scheduler’s beat; to avoid unnecessary overload and reporting, the scheduler may delay these jobs from being candidates again by a small amount of seconds. Delay to be used are defined by $SCHED{LMISS BIAS} for CPU LOAD THRESHOLD condition and $SCHED{LMISS BIAS} for RESOURCE busy condition. Set these to 0 to disable delay. JOBS are started as independent, parallel processes, children of the SCHEDULER, in their own process group; from there on they are known as KIDS. The SCHEDULER doesn’t forget its KIDS once it forked them ! It waits for their termination (non-blocking wait) to perform housekeeping and reporting about execution (mainly unlocking RESOURCEs, saving return code and elapsed time to update the RUNS TABLE). The precision at which JOBS are scheduled/executed is $SCHED{BEAT} seconds. Scheduler’s job RESOURCEs, used as a locking mechanism between scheduled jobs, may be shared with external processes: thus it is possible to also synchronize execution of scheduler’s jobs with non-scheduler machine’s activities and/or conditions. The Scheduler’s commands ENQ and DEQ are the unique scheduler’s entry points to the locking mechanism. Command line submit syntax • JOBS may be submitted, for immediate execution, to the SCHEDULER using CODE/shells/scheduler and its submit command • specifying the JOB comes in two flavors: – JID=; Example: scheduler submit JID=myjob – as a string defining the JOB, with the following comma-separated keywords: ∗ XEQ1: , XEQ2: and XEQ3: to specify the JOB’s command ∗ LOGPATH: optional, to specify the directory, relative to $SCHED{PATH STD}, for JOB’s STDOUT and STDERR ∗ RES: optional, JOB’s RESOURCE (lock) ∗ MAXSYSLOAD: optional, CPU LOAD THRESHOLD ∗ UID: optional, UID to be used for end-of-job notification – Example: scheduler submit ’XEQ1:perl,XEQ2:/path/to/jobtst.pl,RES:mylock,UID:DL’ Note: submitted JOBs are given a unique, negative, JID. 4.3.4 Scheduler manager The SCHEDULER MANAGER CODE/cgi-bin/schedulerMgr.pl built-in page, initially restricted to the +ADMIN group, is used to create/modify/delete JOBS of the JOBS TABLE. 4.3. SCHEDULER 4.3.5 55 Scheduler runs The SCHEDULER RUNS CODE/cgi-bin/schedulerRuns.pl built-in page, initially restricted to the +ADMIN group, is used to display the RUNS TABLE (one day at a time) along with its corresponding, zoomable TIMELINE chart, to better visualize JOBs executions elapsed times and parallelism. 4.3.6 Scheduler status Both the SCHEDULER MANAGER and SCHEDULER RUNS built-in pages show the STATUS of the SCHEDULER: 56 CHAPTER 4. ADMINISTRATION where: STARTED, PID, USER uTICK, BEAT PAUSED #JOBSTART, #JOBSEND KIDS ENQs Paths of main SCHEDULER’s files 4.3.7 when, under which PID and who started the SCHEDULER internal frequency in microseconds and main SCHEDULER loop frequency wether SCHEDULER is in PAUSE mode (not scanning JOBs, = 1) number of started and ended JOBs since ’STARTED’ number of currently started JOBs (KIDS) number of currently held JOBs’ RESOURCEs Scheduler command line The SCHEDULER command line interface is CODE/shells/scheduler. shells/scheduler me@here: / opt / webobs / CODE / shells$ ./ scheduler Usage: ./ scheduler { enq | deq | flog | jobq | kill | pause | ps | qs | quiet | resume | runq | start | status | stop | submit | verbose } CODE/shells/scheduler sub-commands : start stop pause resume enq deq kill verbose quiet status jobq runq ps flog submit start, if not already active stop, waiting for any active kids to end hold execution (suspend jobs processing) resume execution enq a resource deq a resource forced stop, not recommended log verbosity on log verbosity off display status/indicators/settings display JOBRQ display RUNQ display executing KIDS trees force log backup and cleanup place a job on the JOBRQ, requiring additional arguments, either: 1) jid=n where n is the JOB’s ID from the JOBS TABLE 2) keyword:value[,keyword:value,...] where keyword in [XEQ1,XEQ2,XEQ3,MAXSYSLOAD,LOGPATH,RES,UID] example scheduler status me@here: / opt / webobs / CODE / shells$ ./ scheduler status Pls wait ... STATTIME =2014 -02 -05 06 :04:58 STARTED =2014 -02 -05 06 :04:02 PID =6725 USER = root uTICK =1000000 BEAT =2 LOG =/ opt / webobs / LOGS / scheduler . log JOBSDB =/ opt / webobs / CONF / WEBOBSJOBS . db JOBS STDio =/ opt / webobs / LOGS / jobslogs JOBS RESource =/ opt / webobs / LOGS / res PAUSED =0 # JOBSTART =2 # JOBSEND =2 KIDS =0 ENQs =0 example runq and ps me@here: / opt / webobs / CODE / shells$ ./ scheduler runq 4.4. WOC 57 Pls wait ... RUNQ (1 40 7 21 2 13 4. 2 1 6 6 3 ) kid =7567 ORG = R uid = kidcmd =/ opt / webobs / CODE / cgi - bin / jobtester . pl 40 res = jid = -2 logfd =./ started =140721 2 1 3 5 . 2 1 9 4 logfn = undef RUNQ (1 40 7 21 1 89 0. 2 4 5 1 2 ) kid =7060 ORG = S uid = kidcmd =/ opt / webobs / CODE / matlab / bin / linux -64/ run_mcc sefran3 res = sefran3 jid = sefran logfd =./ started =1 407 21 1 8 9 0 . 4 6 8 6 4 logfn = sefran3 me@here: / opt / webobs / CODE / shells$ PID PGRP ELAPSED % CPU % MEM 2769 2769 02 :41:40 0.0 0.1 7050 7034 04 :21 0.1 0.2 7060 7060 04 :19 0.0 0.0 7068 7060 04 :18 6.7 3.3 7567 7567 00 :14 0.0 0.0 4.4 ./ scheduler ps CMD / bin / bash perl scheduler . pl -v / bin / sh / opt / webobs / CODE / matlab / bin / linux -64/ run_mcc sefran3 / opt / webobs / CODE / matlab / bin / linux -64/ sefran3 / usr / bin / perl / opt / webobs / CODE / cgi - bin / jobtester . pl 40 WOC WOC, the WebObs Console, is a command-line tool to query and update internal WebObs structures. Initially built as a developer’s set of debugging tools and coding examples, WOC also contains some WebObs administrator’s tools. WOC can be run in interactive mode, interpreting and executing woc-commands at the console’s WOC prompt, or batch mode, executing a single woc-command passed as argument. WOC is also available from a WebObs html page thru the use of woc.html + woc.js . List of woc-commands : %WEBOBS [key] -%WEBOBS value %OWNERS %DISCP [discp] %USERS [login] authres user login newuser newgroup deluser delgroup grant auth auth login %NODES [key] proc [proc] form [form] view [view] node [node] newnode node as other delnode node nodegrids [node] nodedev [node] statnodes readcfg file dbjobs newjob dbruns sys ! cmd = expr dd dump %WEBOBS key or all keys query which %WEBOBS key(s) holds value dump all %OWNRS dump %DISCP discp discipline or all dump %USERS login or all list all auth resources query DB USERS for login add a user add a users group delete a user delete a users group grant access in auth table dump login authorizations dump %NODES key or all dump PROC proc or all dump FORM form or all dump VIEW view or all dump NODE node or list node names define a new node as othernode delete a node list grids that reference node list features+devices for node (or all dev) statistics on node+grids readCfg file list all jobs definitions add a job definition list all jobs last run info print system information exec shell cmd (WebObs vars single-quoted for interpolation) exec perl expr (interactive mode only) keys of main hashes and their occurence 58 CHAPTER 4. ADMINISTRATION ddxref help quit keys of main hashes + their occurence + cross-reference this help text make a guess WOC session example WOC version 1.6 , Apr2013 At WOC prompt: command , ’ help ’ , or ’ quit ’ statnodes 14 node directories 2 nodes have no grid GCSCC21 GCSREV1 0 node has no proc 1 node has no view ISBFDF0 sys Linux 3.2.0 -67 - generic # 101 - Ubuntu SMP Tue Jul 15 17 :46:11 UTC 2014 GNU / Linux Perl $ ^ V = v5 .14.2 $ENV { PATH } = / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games: @INC : / opt / webobs / WebObs - beta -1.6.5/ CODE / cgi - bin: / etc / perl: / usr / local / lib / perl /5.14.2 : / usr / local / share / perl /5.14.2 : / usr / l $ POSIX::VERSION = 1.24 POSIX::tzname = CET CEST $ENV { TZ } = / etc / localtime -> CET -1 CEST , M3 .5.0 , M10 .5.0/3 local now: 2014 -08 -05 08 :46:33 CEST (+0200) 1407221193 (1407221193) UTC now: 2014 -08 -05 06 :46:33 1407217593 $ENV { LANG } = en_US . UTF -8 Locale ( s ) Supported / Installed: en_US = S / I ; fr_FR = S / I ; UMASK 002 PID 12492 started 1407221193 by someone (1000/1000) in / opt / webobs / CONF " WebObs - Paris " WebObs - beta -1.6.5 [/ etc / webobs . d -> / opt / webobs / CONF ] quit Bye . 4.4.1 Overview Chapter 5 Developments 5.1 Use PROC’s output graphics facilities To display PROC’s output graphics and data, WebObs uses a script named /cgi-bin/showOUTG.pl that can be used with external data. Products must be images in PNG format, with a thumbnail in JPG format and optional EPS and TXT files. The script proposes two different display formats: 1. per time scales: each image corresponds to a preset moving time window; 2. per dated events: each image is associated to a timestamp (date and time). First, you must create a new PROC using the web interface with name MYPROC for example, and from any template (choose Generic time series for instance). Then you will have to name and store image files by respecting some rules explained below. Note that all files must be readable by the apache user (in WebObs automatic processes, the files are owned by the WebObs owner and group-readable). 5.1.1 Graphs per time scale To display graphs per time scale, the PROC must define the minimum following keys: MYPROC.conf = key | value NAME | My PROC title TIMESCALELIST | ts1 , ts2 , ts3 SUMMARYLIST | SUMMARYA , SUMMARYB ts1, ts2, ts3 are 2-letter minimum length time scale keys (at least one key is needed, see Table 5.2 for valid keys and syntax). SUMMARYA and SUMMARYB are optional short names for additional summary graphs (all nodes). You may also associate NODES to this PROC if you want to show some per-node graphs. The outputs must be named and placed as: /opt/webobs/OUTG/PROC.MYPROC/graphs/SUMMARY{A,B} {ts1,ts2,ts3}.{png,jpg,eps} where .png are the full resolution images, and .jpg files (same name as .png) are the thumbnails. These two files are mandatory. Optional .eps extension containing a vectorial image will give access to it through a link. If you want to show individual associated node graphs, for instance from NODEID1, you name the files as: /opt/webobs/OUTG/PROC.MYPROC/graphs/nodeid1 {ts1,ts2,ts3}.{png,jpg,eps} Note the NODE’s ID must be written in lower case in the filename. .eps extension file is optional. You can have one data export file for each summary and node output. The files must be placed as: /opt/webobs/OUTG/PROC.MYPROC/exports/{SUMMARY*,nodeid1} {ts1,ts2,ts3}.txt If the WebObs has been installed and configured by changing the default root path and subdirectories, you might look into /etc/webobs.d/WEBOBS.rc for the following variables to define the paths: $WEBOBS{ROOT OUTG}/PROC.MYPROC/$WEBOBS{PATH OUTG GRAPHS} $WEBOBS{ROOT OUTG}/PROC.MYPROC/$WEBOBS{PATH OUTG EXPORTS} 59 60 CHAPTER 5. DEVELOPMENTS 5.1.2 Graphs per event To display graphs per event, the PROC must define only one key: MYPROC.conf = key | value NAME | My PROC title for the page title. Events must be referenced to a date (year, month, day) and will be presented sorted by month in one page per year, showing the image thumbnails. One event can contain multiple images that will be shown together as thumbnails when clicking on it. The last display level is the full scale image itself. There is no rule for eventID and images filenames (excepted the file extensions): /opt/webobs/OUTG/PROC.MYPROC/events/YYYY/MM/DD/eventID1/*.{png,jpg,eps,pdf,txt} But it is better to use self-explanatory filenames since it will be displayed as popup windows on mouse over the thumbnails. Optional extensions .eps, .pdf and .txt will give access to supplementary files through links. You must also define at least one preferred image to be display as thumbnail on the main page, by creating a symbolic link to the .jpg file. The link basename has no importance but the extension. /opt/webobs/OUTG/PROC.MYPROC/events/YYYY/MM/DD/eventID1/link.jpg → maineventimage.jpg 5.2 5.2.1 SUPERPROCS: Templates for applications development Superprocs Appendix Table 5.1: Data raw formats for PROCS # WEBOBS Raw formats d e f i n i t i o n for PROCS and NODES # # key : used in r e a d f m t d a t a .m , r e a d n o d e . m and { show , form } NODE . pl # supfmt : s u p e r f o r m a t ( for display g r o u p i n g ) # name : name for display in { show , form } NODE . pl # FID : a d d i t i o n n a l FID_x keys # # Updated : 2018 -09 -29 # = key | supfmt | name | FID # | | -| dsv | ASCII | delimiter - separated values file | PREPROCESSOR , FS , TIMECOLS , NF , HEADERLINES sql - table | DB | SQL database with simple table | miniseed | MSEED | miniSEED file | seedlink | MSEED | SEEDLink data stream | arclink | MSEED | SeisComP3 ArcLink data request | combined | MSEED | SeisComP3 SeedLink / ArcLink data request | fdsnws - dataselect | MSEED | FDSN WebServices data select | winston | EARTHWORM | EarthWorm Winston Wave Server data request | gipsy | GNSS | JPL GIPSY - OASIS . tdp file | gipsyx | GNSS | JPL GipsyX . tdp file | globkval | GNSS | MIT GAMIT / GLOBK VAL file | usgs - rneu | GNSS | USGS RNEU file | cr10xasc | CAMPBELL | Campbell Scientific CR10X data file | toa5 | CAMPBELL | Campbell Scientific TOA5 data file | tob1 | CAMPBELL | Campbell Scientific TOB1 data file | porkyasc | ASCII | USGS Porky data file | AFMALARM hyp71sum2k | QUAKE | Quake Hypo71 summary lines | MC3 , MAGTYPE_DEFAULT , M AGERR_D EFAULT fdsnws - event | QUAKE | Quake FDSN WebServices event request | MC3 , MAGTYPE_DEFAULT , MA GERR_DE FAULT scevtlog - xml | QUAKE | Quake SeisComP3 - xml files | MC3 , MAGTYPE_DEFAULT , MAGE RR_DEFAU LT mc3 | MC3 | MainCourante database | naqs - soh | ASCII | NAQS State of Health | NANOSTATYPE teqc - qc | ASCII | TEQC Rinex Quality Check | meteofrance | ASCII | Meteo - France raingauge | mat - file | WO | Matlab MAT - file | Table 5.2: Key xs xn xh xd xw xm xy xl rx all Time scale keys (x is an integer). Time scale x seconds x minutes x hours x days x weeks x months x years last x data reference to date REFx DATE all data 61 62 APPENDIX Table 5.3: Marker type list Symbol Marker . Point + Plus sign * Asterisk x Cross o Circle s Square d Diamond (vertical rhombus) ^ Upward-pointing triangle v Downward-pointing triangle > Right-pointing triangle < Left-pointing triangle p Five-pointed star (pentagram) h Six-pointed star (hexagram) Table 5.4: Symbol -: -. Table 5.5: Some R,G,B 0,0,0 1,1,1 1,0,0 0,1,0 0,0,1 1,1,0 1,0,1 0,1,1 Line Style list Line style Solid line Dashed line Dotted line Dash-dot line basic R,G,B colors Color Black White Red Green Blue Yellow Magenta Cyan Table 5.6: Some built-in colormaps Name Description jet hsv landcolor seacolor white gray hot cool bone pink copper spring summer autumn winter 63 Table 5.7: Date string format list. value Number Datenum -1 0 OK 1 OK 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 OK 24 25 26 27 28 29 OK 30 OK 31 OK “Datenum” column indicates if the format is valid for date/time string as key String automatic ’dd-mmm-yyyy HH:MM:SS’ ’dd-mmm-yyyy’ ’mm/dd/yy’ ’mmm’ ’m’ ’mm’ ’mm/dd’ ’dd’ ’ddd’ ’d’ ’yyyy’ ’yy’ ’mmmyy’ ’HH:MM:SS’ ’HH:MM:SS PM’ ’HH:MM’ ’HH:MM PM’ ’QQ-YY’ ’QQ’ ’dd/mm’ ’dd/mm/yy’ ’mmm.dd,yyyy HH:MM:SS’ ’mmm.dd,yyyy’ ’mm/dd/yyyy’ ’dd/mm/yyyy’ ’yy/mm/dd’ ’yyyy/mm/dd’ ’QQ-YYYY’ ’mmmyyyy’ ’yyyy-mm-dd’ ’yyyymmddTHHMMSS’ ’yyyy-mm-dd HH:MM:SS’ Example 01-Mar-2000 15:45:17 01-Mar-2000 03/01/00 Mar M 03 03/01 01 Wed W 2000 00 Mar00 15:45:17 3:45:17 PM 15:45 3:45 PM Q1-96 Q1 01/03 01/03/00 Mar.01,2000 15:45:17 Mar.01,2000 03/01/2000 01/03/2000 00/03/01 2000/03/01 Q1-1996 Mar2000 2000-03-01 20000301T154517 2000-03-01 15:45:17 Comment default value ISO 8601 ISO 8601 64 APPENDIX Table 5.8: Suggestion for NODE ID code: N D T S S S S Letter Code Comment N = Network I IPGP G OVSG M OVMP R OVPF P PVMBG D = Domain S Seismology D Deformations G Geophysics C Chemistry I Imagery M Meteorology P Phenomenology A Acquisition DT = Technique SB Broad-band SZ Short-period DC Continuous GPS DT Tilmetry DD Distancemetry DE Extensometry GM Magnetometry GE Electric CS Hot Springs Analysis CG Gas Analysis CD DOAS MW Weather station PJ Journal Phenomenology PE Eruption AT Transmission AB Buildings Acknowledgments A 15-year history summary. Episode I. The WebObs project was born in September 2000 when François Beauducel has been assigned to the Guadeloupe volcanological observatory in Lesser Antilles. First ideas of an integrated monitoring and management system have risen thanks to fruitful discussions with Christian Anténor-Habazac, Jean-Christophe Komorowski and Stéphane Acounis. Quickly (and dirtily) developed in about a year of sparse hours, a first version of WebObs was presented in Paris on January 2002 [2], containing most of the present content: station files, networks, automatic graphs for seismic, deformation, geochimia and weather stations, shared calendar... During the first two years of the project, there was a single developer, moreover, a scientist during its overtime work and not a dedicated computer specialist! Episode II. From August 2002 to December 2005, Didier Mallarino was the first computer engineer who invested a part of its time to improve the codes and configuration files, especially by developing more robust and flexible Perl GCI scripts [3, 4, 1]. In 2004, a version of WebObs has been partially duplicated and adapted for a public website (CDSA). Episode III. From 2006 to 2010, some code improvements where made by a second computer engineer Alexis Bosson: particularly, the system was internationalized and a first effort was made to integrate WebObs with observatory acquisition chain seismology standards [5]. During these years, the system worked in a relatively stable production state, and it was adapted and partly installed in different observatories: Paris (thanks to François Truong [6]), Addis-Abeba (thanks to Alexandre Nercessian), Martinique (thanks to Jean-Marie Saurel and Benoı̂t Costes), Montserrat (thanks to Alexis Bosson and Roderick Stewart) and later in 2012 at La Réunion (thanks to Patrice Boissier and Philippe Kowalski). Episode IV (A New Hope). In 2012, WebObs obtained its first dedicated funding support from the French Ministry of Ecology, thanks to Steve Tait, Arnaud Lemarchand and Pierre Agrinier. A very significant contribution has been made by Didier Lafon, the first computer engineer working 100% on the project. Taking advantage of 10 years of production feedback, he reassessed the whole coding concept, improved and standardized the codes, made library modules and administration tools, wrote technical documentation, put all this under a versioning control system and built the first Linux installation package. This allowed to install a first alpha and beta version at Merapi observatory (thanks to Ali A. Fahmi), then the same codes in Guadeloupe, Martinique and La Réunion observatories, and start a real collaborative development. During this last period, we welcomed additional contributors, as developers or end-users: Xavier Béguin, Jean-Marie Saurel, Stephen Roselia, Patrice Boissier, Laura Henriette, and of course all the observatory teams under the direction of Jean-Bernard de Chabalier, Valérie Clouard, Andrea Di Muro, Nicolas Villeneuve, Céline Dessert, Aline Peltier, Roberto Moretti. Episode V. In October 2018, WebObs code has been released on https://github.com/IPGP/webobs. 65 66 ACKNOWLEDGMENTS Bibliography [1] F. Beauducel. Surveillance opérationnelle des volcans français : développements récents à la Guadeloupe. Géosciences BRGM, 4:64–68, 2006. [2] F. Beauducel and C. Anténor-Habazac. Quelques éléments d’une surveillance opérationnelle... In Observatoires Volcanologiques. Institut de Physique du Globe de Paris, 2002. [3] F. Beauducel, C. Anténor-Habazac, and D. Mallarino. WEBOVS : Integrated monitoring system interface for volcano observatories. In IAVCEI General Assembly, Chile, 2004. [4] F. Beauducel, C. Anténor-Habazac, and D. Mallarino. WEBOVS: Integrated monitoring system interface for volcano observatories. In European Seismological Commission Annual Workshop, Saint-Claude Guadeloupe. IAVCEI / IPGP, 2005. [5] F. Beauducel, A. Bosson, F. Randriamora, C. Anténor-Habazac, A. Lemarchand, J.-M. Saurel, A. Nercessian, M.-P. Bouin, J.-B. de Chabalier, and V. Clouard. Recent advances in the Lesser Antilles observatories Part 2 : WebObs - an integrated web-based system for monitoring and networks management. In European Geophysical Union General Assembly, Vienna, April 2010. [6] F. Truong, X. Lalanne, and A. Chulliat. MAGIS: The information system of IPGP magnetic observatories. In Proceedings of the XIIIth IAGA Workshop on Geomagnetic Observatory Instruments, Data Acquisition and Processing, June 9-18 2008, Golden, USA, 2009. 67
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : No Page Count : 75 Page Mode : UseOutlines Author : Title : Subject : Creator : LaTeX with hyperref package Producer : pdfTeX-1.40.19 Create Date : 2019:04:10 12:55:19+07:00 Modify Date : 2019:04:10 12:55:19+07:00 Trapped : False PTEX Fullbanner : This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018) kpathsea version 6.3.0EXIF Metadata provided by EXIF.tools