Check DSM archive files (lsu)
On each DSM, the lsu command displays the last 10 archive files. On the flux system, the lsu command runs lsu on each of the tower DSMs in succession. After 0Z, the rsync scripts copy and remove the previous day's files, so you will generally see only files for the current day. The modification time of the last file shown for each DSM should be the current time in UTC. If run a second time the size of the file should have grown.
Check Services (sstat)
The post processing of CABL data is done on the flux laptop at the BAO tower, and on porter2 at EOL. The systemd service manager is used to start and monitor the services which run the various processing steps.
To check the status of the services, use the sstat command. It displays a tree of the various services, followed by an indication of "all services seem to be running", or it will list the missing services.
On flux, the processes are running under the aster userid. On porter2 they are running under user maclean. They are started automatically by systemd at bootup.
If a process of a service isn't running, look at the system log file, /var/log/isfs/isfs.log to help track down the problem. Many of the scripts run by the services listed below also write to log files on $ISFF/projects/CABL/ISFF/logs.
On flux, the services are:
- nc_server: the NetCDF server process that writes data received by statsproc and R to the NetCDF files
- dsm_server@noqc_instrument: dsm_server process that receives and archives data from the DSMs on the tower.
- statsproc@qc_geo_notiltcor: computes statistics from the 300m tower for the qc_geo_notiltcor dataset, i.e. the files in netcdf_geo_notiltcor
- statsproc@noqc_instrument: computes statistics from the 300m tower for the noqc_instrument dataset, i.e. the files in netcdf_noqc_instrument
- rsync_dsms: script that wakes up periodically and rsync's files from the local flash drives on the tower, then does merge_nightly.sh to merge and reprocess the previous day's files.
- R_derived: runs R every 5 minutes to create derived values in the files on netcdf_geo_notiltcor
- ssh_tunnel: creates the ssh tunnel to FLAB
On porter2:
- nc_server
- cabl_flab_statsproc@qc_geo_notiltcor: computes statistics from the 300m tower for the qc_geo_notiltcor dataset, i.e. the files in netcdf_geo_notiltcor
- cabl_flab_statsproc@noqc_instrument: computes statistics from the 300m tower for the noqc_instrument dataset, i.e. the files in netcdf_noqc_instrument
- cabl_flab_statsproc2@qc_geo_notiltcor: computes statistics from the bao and ehs flux stations for the qc_geo_notiltcor dataset, i.e. the files in netcdf_geo_notiltcor
- cabl_flab_statsproc2@noqc_instrument: computes statistics from the bao and ehs flux stations for the noqc_instrument dataset, i.e. the files in netcdf_noqc_instrument
- rsync_flab: runs rsync_loop_flab.sh script, which wakes up periodically and rsync's files from flux, then does merge_nightly_flab.sh to merge and reprocess the previous day's files.
- R_derived
- proc_restarter: runs every 10 seconds to see if the user has requested to restart the statsproc services
sstat will also show rsync_loop and statsproc@trh_test services on porter2. Those are running in support of the CentNet project.
Restart real-time statistics processing (restart_statsproc)
If you make a change to the XML or a calibration file, you will usually want to restart the statsproc processes. Only if an XML change effects the archive of the raw data do you need to restart dsm_server on flux.
To restart the statsproc processes on flux or porter2, use the restart_statsproc command. On flux it does a systemctl --user restart of the two statsproc services.
On porter2 the processes are running under the maclean login, and only that user has permission to restart the services. As a work-around, restart_statsproc writes a string to the file $ISFF/projects/$PROJECT/ISFF/logs/statsproc_cmd.txt. The proc_restarter service wakes up every 10 seconds, checks that file, and if it contains the string "statsproc", does a systemctl --user restart on the four statsproc services.
Reprocess statistics
To recalculate the statistics for the whole project, run this command on an EOL server (porter2, barolo, tikal), after setting your project to CABL:
statsproc -S qc_geo_notiltcor -B "2015 feb 18 00:00" -E "2015 jun 1 00:00"
If you want to recalculate the noqc_instrument dataset, set the -S option accordingly.
The value of the NC_SERVER environment variable should be "porter2" so that the data is sent to nc_server on porter2.
On EOL systems, the default value of the DATADIR environment variable should be "merge", in which case statsproc will process all files on /scr/isfs/projects/CABL/merge. If you want to process a different set of files, for example the 50m files:
cd /scr/isfs/projects/CABL/raw_data
statsproc -S qc_geo_notiltcor 50m*
To have the R_derived service re-create the derived quantities for the whole project the next time it runs, remove this file:
rm $ISFF/projects/CABL/ISFF/logs/R_derived_last.txt
.