Skip to content

Commit c1c6ab8

Browse files
authored
Merge pull request #244 from JeffersonLab/aaust_online_monitoring_py3
Many small changes to the rootspy and incoming monitoring scripts for 2025
2 parents 2b3dfe9 + 5e27a2f commit c1c6ab8

14 files changed

+153
-203
lines changed

launch_scripts/incoming/cron_exec.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22

33
source ~/env_monitoring_incoming.sh
44
export PATH=/site/bin:${PATH} #because .login isn't executed, and need this path for SWIF
5-
python ~/monitoring/incoming/submit_jobs.py 2018-01 ~/monitoring/incoming/jobs_incoming.config 5
5+
python ~/hd_utilities/launch_scripts/incoming/submit_jobs.py 2025-01 ~/hd_utilities/launch_scripts/incoming/jobs_incoming.config 5
66

launch_scripts/incoming/cron_incoming

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@
33
# Min Hour Day Month Weekday Command
44
#-----------------------------------------------------------------------------
55
MAILTO=aaustreg@jlab.org
6-
*/15 * * * * /bin/bash -c ~/monitoring/incoming/cron_exec.sh > /home/gxproj1/incoming.log 2>&1
7-
*/30 * * * * /bin/tcsh -c ~/monitoring/process/check_monitoring_data.csh > /home/gxproj1/check.log 2>&1
6+
*/15 * * * * /bin/bash -c ~/hd_utilities/launch_scripts/incoming/cron_exec.sh > /home/gxproj1/incoming.log 2>&1
7+
*/30 * * * * /bin/tcsh -c ~/hd_utilities/launch_scripts/process/check_monitoring_data.csh > /home/gxproj1/check.log 2>&1

launch_scripts/incoming/jana_incoming.config

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
1-
PLUGINS occupancy_online,highlevel_online,danarest,monitoring_hists,TAGH_online,TAGM_clusters,TAGM_TW,BCAL_online,FCAL_online,CCAL_online,TOF_online,PS_online,PSC_online,PSPair_online,TPOL_online,TOF_TDC_shift,BCAL_Eff,p2pi_hists,p3pi_hists,ppi0gamma_hists,HLDetectorTiming,BCAL_inv_mass,TRIG_online,RF_online,L1_online,FCAL_invmass,pedestal_online,TAGM_online,lowlevel_online,BCAL_TDC_Timing,BCAL_attenlength_gainratio,CDC_online,CDC_Efficiency,CDC_drift,CDC_expert_2,CDC_amp,CDC_roc_hits,FDC_online,FDC_Efficiency,DIRC_online,BCAL_LED,ST_online_lowlevel,ST_online_tracking,ST_online_Tresolution,TRD_online,TRD_hists
1+
PLUGINS occupancy_online,highlevel_online,danarest,monitoring_hists,TAGH_online,TAGM_clusters,TAGM_TW,BEAM_online,BCAL_online,FCAL_online,TOF_online,PS_online,PSC_online,PSPair_online,TPOL_online,TOF_TDC_shift,BCAL_Eff,p2pi_hists,p3pi_hists,ppi0gamma_hists,HLDetectorTiming,BCAL_inv_mass,TRIG_online,RF_online,L1_online,FCAL_invmass,pedestal_online,TAGM_online,lowlevel_online,BCAL_TDC_Timing,CDC_online,CDC_Efficiency,CDC_drift,CDC_expert_2,CDC_amp,CDC_roc_hits,CDC_TimeToDistance,FDC_online,FDC_Efficiency,BCAL_LED,fa125_itrig,lumi_mon,CDC_dedx,TrackingPulls,ST_online_lowlevel,ST_online_tracking,ST_online_Tresolution,DIRC_online,TRD_online
2+
3+
#TRD_hists
24

35
#,ST_online_efficiency
46

57
#TAGMHit:DELTA_T_ADC_TDC_MAX 50
68

79
#Ncores if you want to use all of the hyperthreads available (only use if you have the whole node!)
8-
NTHREADS 128
10+
NTHREADS 24
911

10-
#EVENTS_TO_KEEP 100000
12+
# jana:global_loglevel FATAL
13+
# jana:nevents 10000
1114

12-
REST:DATAVERSIONSTRING offmon_RunPeriod-2019-11_ver01
13-
JANA_CALIB_CONTEXT variation=default
15+
REST:DATAVERSIONSTRING offmon_RunPeriod-2025-01_ver01
16+
#jana:calib_context
1417

1518
# For DIRC in Spring 2019
1619
#RF_CALIB:SOURCE_SYSTEM PSC

launch_scripts/incoming/jobs_incoming.config

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
# For files & directories: Must specify full path
77

88
# SCICOMP JOB ACCOUNTING
9-
PROJECT gluex # http://scicomp.jlab.org/scicomp/#/projects
10-
TRACK reconstruction # https://scicomp.jlab.org/docs/batch_job_tracks
11-
OS centos7
9+
PROJECT halld # http://scicomp.jlab.org/scicomp/#/projects
10+
TRACK production # https://scicomp.jlab.org/docs/batch_job_tracks
11+
OS el9
1212

1313
# JOB RESOURCES
1414
NCORES 24
@@ -18,21 +18,22 @@ TIMELIMIT 10hrs
1818

1919
# WORKFLOW DEFINITION
2020
# RUNPERIOD, VERSION, & BATCH: Not needed by launch.py: Only used to replace variables in this config
21-
RUNPERIOD 2018-01 #KEEP THIS EXACT FORMAT
21+
RUNPERIOD 2025-01 #KEEP THIS EXACT FORMAT
2222
VERSION 01
2323
#BATCH 01
2424
WORKFLOW offmon_[RUNPERIOD]_ver[VERSION] #KEEP THIS EXACT FORMAT
2525

2626
# JOB, SCRIPT CONTROL
2727
ENVFILE /home/gxproj1/env_monitoring_incoming.sh
28-
SCRIPTFILE /home/gxproj1/monitoring/incoming/script.sh
28+
SCRIPTFILE /home/gxproj1/hd_utilities/launch_scripts/incoming/script.sh
2929
#RCDB_QUERY "@is_production and @status_approved" # comment-out for all runs
30-
JANA_CONFIG /home/gxproj1/monitoring/incoming/jana_incoming.config
30+
JANA_CONFIG /home/gxproj1/hd_utilities/launch_scripts/incoming/jana_incoming.config
3131
CACHE_PIN_DAYS 20 # max is 60, 0 or comment-out for none
3232

3333
# FILE INPUT, OUTPUT BASE DIRECTORIES
3434
INDATA_TOPDIR /mss/halld/RunPeriod-[RUNPERIOD]/rawdata/
3535

3636
# FOR SMALL, MONITORING LAUNCHES
3737
OUTDIR_LARGE /cache/halld/offline_monitoring/RunPeriod-[RUNPERIOD]/ver[VERSION] # REST, skims, hists, trees
38-
OUTDIR_SMALL /work/halld2/data_monitoring/RunPeriod-[RUNPERIOD]/mon_ver[VERSION] # log files, IDXA
38+
#OUTDIR_SMALL /work/halld2/data_monitoring/RunPeriod-[RUNPERIOD]/mon_ver[VERSION] # log files, IDXA
39+
OUTDIR_SMALL /farm_out/gxproj1/data_monitoring/RunPeriod-[RUNPERIOD]/mon_ver[VERSION] # log files, IDXA

launch_scripts/incoming/script.sh

Lines changed: 29 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ Save_OutputFiles()
9494
Save_EVIOSkims
9595
Save_HDDMSkims
9696
Save_ROOTFiles
97-
Save_IDXA
9897

9998
# SEE WHAT FILES ARE LEFT
10099
echo "FILES REMAINING AFTER SAVING:"
@@ -109,20 +108,12 @@ Save_Histograms()
109108

110109
# setup output dirs
111110
local OUTDIR_THIS=${OUTDIR_LARGE}/hists/${RUN_NUMBER}/
112-
mkdir -p -m 755 ${OUTDIR_THIS}
113111

114112
# save it
115113
local OUTPUT_FILE=${OUTDIR_THIS}/hd_root_${RUN_NUMBER}_${FILE_NUMBER}.root
116-
mv -v hd_root.root $OUTPUT_FILE
117-
chmod 644 $OUTPUT_FILE
114+
echo "Adding hd_root.root to swif2 output: $OUTPUT_FILE"
115+
swif2 output hd_root.root $OUTPUT_FILE
118116

119-
# force save to tape & pin
120-
if [ "$TAPEDIR" != "" ]; then
121-
echo jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
122-
jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
123-
echo jcache put $OUTPUT_FILE
124-
jcache put $OUTPUT_FILE
125-
fi
126117
fi
127118
}
128119

@@ -134,20 +125,12 @@ Save_REST()
134125

135126
# setup output dirs
136127
local OUTDIR_THIS=${OUTDIR_LARGE}/REST/${RUN_NUMBER}/
137-
mkdir -p -m 755 $OUTDIR_THIS
138128

139129
# save it
140130
local OUTPUT_FILE=${OUTDIR_THIS}/dana_rest_${RUN_NUMBER}_${FILE_NUMBER}.hddm
141-
mv -v dana_rest.hddm $OUTPUT_FILE
142-
chmod 644 $OUTPUT_FILE
131+
echo "Adding dana_rest.hddm to swif2 output: $OUTPUT_FILE"
132+
swif2 output dana_rest.hddm $OUTPUT_FILE
143133

144-
# force save to tape & pin
145-
if [ "$TAPEDIR" != "" ]; then
146-
echo jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
147-
jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
148-
echo jcache put $OUTPUT_FILE
149-
jcache put $OUTPUT_FILE
150-
fi
151134
fi
152135
}
153136

@@ -185,102 +168,60 @@ Save_EVIOSkims()
185168

186169
# setup output dir
187170
local OUTDIR_THIS=${OUTDIR_LARGE}/${SKIM_NAME}/${RUN_NUMBER}/
188-
mkdir -p -m 755 $OUTDIR_THIS
189171

190172
# save it
191-
local OUTPUT_FILE=${OUTDIR_THIS}/${SKIM_NAME}_${RUN_NUMBER}_${FILE_NUMBER}.hddm
192-
mv -v $EVIO_FILE $OUTPUT_FILE
193-
chmod 644 $OUTPUT_FILE
173+
local OUTPUT_FILE=${OUTDIR_THIS}/${SKIM_NAME}_${RUN_NUMBER}_${FILE_NUMBER}.evio
174+
echo "Adding $EVIO_FILE to swif2 output: $OUTPUT_FILE"
175+
swif2 output $EVIO_FILE $OUTPUT_FILE
194176

195-
# force save to tape & pin
196-
if [ "$TAPEDIR" != "" ]; then
197-
jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
198-
jcache put $OUTPUT_FILE
199-
fi
200177
done
201178
}
202179

203180
Save_HDDMSkims()
204181
{
205-
local NUM_FILES=`ls *.hddm 2>/dev/null | wc -l`
182+
local NUM_FILES=`ls *.hddm | grep -v dana_rest.hddm 2>/dev/null | wc -l`
206183
if [ $NUM_FILES -eq 0 ] ; then
207184
echo "No HDDM skim files produced"
208185
return
209186
fi
210187

211188
# SAVE HDDM SKIMS #assumes REST file already backed up and removed!
212189
echo "Saving HDDM skim files"
213-
for HDDM_FILE in `ls *.hddm`; do
190+
for HDDM_FILE in `ls *.hddm | grep -v dana_rest.hddm`; do
214191
Extract_SkimName $HDDM_FILE SKIM_NAME
215192

216193
# setup output dir
217194
local OUTDIR_THIS=${OUTDIR_LARGE}/${SKIM_NAME}/${RUN_NUMBER}/
218-
mkdir -p -m 755 $OUTDIR_THIS
219195

220196
# save it
221197
local OUTPUT_FILE=${OUTDIR_THIS}/${SKIM_NAME}_${RUN_NUMBER}_${FILE_NUMBER}.hddm
222-
mv -v $HDDM_FILE $OUTPUT_FILE
223-
chmod 644 $OUTPUT_FILE
198+
echo "Adding $HDDM_FILE to output: $OUTPUT_FILE"
199+
swif2 output $HDDM_FILE $OUTPUT_FILE
224200

225-
# force save to tape & pin
226-
if [ "$TAPEDIR" != "" ]; then
227-
jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
228-
jcache put $OUTPUT_FILE
229-
fi
230201
done
231202
}
232203

233204
Save_ROOTFiles()
234205
{
235206
# SAVE OTHER ROOT FILES
236-
local NUM_FILES=`ls *.root 2>/dev/null | wc -l`
207+
local NUM_FILES=`ls *.root | grep -v hd_root.root 2>/dev/null | wc -l`
237208
if [ $NUM_FILES -eq 0 ] ; then
238209
echo "No additional ROOT files produced"
239210
return
240211
fi
241212

242213
echo "Saving other ROOT files"
243-
for ROOT_FILE in `ls *.root`; do
214+
for ROOT_FILE in `ls *.root | grep -v hd_root.root`; do
244215
Extract_BaseName $ROOT_FILE BASE_NAME
245216

246217
# setup output dir
247218
local OUTDIR_THIS=${OUTDIR_LARGE}/${BASE_NAME}/${RUN_NUMBER}/
248-
mkdir -p -m 755 $OUTDIR_THIS
249219

250220
# save it
251221
local OUTPUT_FILE=${OUTDIR_THIS}/${BASE_NAME}_${RUN_NUMBER}_${FILE_NUMBER}.root
252-
mv -v $ROOT_FILE $OUTPUT_FILE
253-
chmod 644 $OUTPUT_FILE
222+
echo "Adding $ROOT_FILE to swif2 output: $OUTPUT_FILE"
223+
swif2 output $ROOT_FILE $OUTPUT_FILE
254224

255-
# force save to tape & pin
256-
if [ "$TAPEDIR" != "" ]; then
257-
jcache pin $OUTPUT_FILE -D $CACHE_PIN_DAYS
258-
jcache put $OUTPUT_FILE
259-
fi
260-
done
261-
}
262-
263-
Save_IDXA()
264-
{
265-
# SAVE IDXA FILES
266-
local NUM_FILES=`ls *.idxa 2>/dev/null | wc -l`
267-
if [ $NUM_FILES -eq 0 ] ; then
268-
echo "No IDXA files produced"
269-
return
270-
fi
271-
272-
echo "Saving IDXA files"
273-
for IDXA_FILE in `ls *.idxa`; do
274-
Extract_BaseName $IDXA_FILE BASE_NAME
275-
276-
# setup output dir
277-
local OUTDIR_THIS=${OUTDIR_SMALL}/IDXA/${RUN_NUMBER}/
278-
mkdir -p -m 755 $OUTDIR_THIS
279-
280-
# save it
281-
local OUTPUT_FILE=${OUTDIR_THIS}/${BASE_NAME}_${RUN_NUMBER}_${FILE_NUMBER}.idxa
282-
mv -v $IDXA_FILE $OUTPUT_FILE
283-
chmod 644 $OUTPUT_FILE
284225
done
285226
}
286227

@@ -289,7 +230,13 @@ Save_IDXA()
289230
Create_SQLite()
290231
{
291232
echo "Creating ccdb.sqlite"
292-
$CCDB_HOME/scripts/mysql2sqlite/mysql2sqlite.sh -hhallddb.jlab.org -uccdb_user ccdb | sqlite3 ccdb.sqlite
233+
#$CCDB_HOME/scripts/mysql2sqlite/mysql2sqlite.sh -hhallddb.jlab.org -uccdb_user ccdb | sqlite3 ccdb.sqlite
234+
mysqldump --skip-tz-utc -u ccdb_user -h hallddb.jlab.org ccdb > dump.mysql.sql
235+
$CCDB_HOME/scripts/mysql2sqlite/mysql2sqlite dump.mysql.sql | sqlite3 ccdb.sqlite
236+
rm dump.mysql.sql
237+
ls -lrt
238+
export JANA_CALIB_URL="sqlite:///${PWD}/ccdb.sqlite"
239+
echo "JANA_CALIB_URL = " $JANA_CALIB_URL
293240
}
294241

295242
########################################################## MAIN FUNCTION ########################################################
@@ -299,8 +246,13 @@ Run_Script()
299246
Setup_Script
300247
Create_SQLite
301248

302-
# RUN JANA
303-
hd_root $INPUTFILE --config=$CONFIG_FILE
249+
# RUN JANA(2)
250+
local JANA_MAJOR_VERSION=`jana -v | head -n 1 | awk '{print $3}' | cut -d'.' -f1`
251+
if [ $JANA_MAJOR_VERSION -ge 2 ]; then
252+
hd_root $INPUTFILE --loadconfigs $CONFIG_FILE
253+
else
254+
hd_root $INPUTFILE --config=$CONFIG_FILE
255+
fi
304256

305257
# RETURN CODE
306258
RETURN_CODE=$?

0 commit comments

Comments
 (0)