Epics Logger Scripts for SBS

From Hall A Wiki
Revision as of 11:01, 19 October 2022 by Rom (Talk | contribs)

Jump to: navigation, search

Here is some technical information about how to add EPICS variables to the logging of information for the SBS. These data go to two places

1. HALOG -- both start-of-run and end-of-run.

2. datastream as event type 131

First let me describe the scheme.

A script called EpicsToFile runs continuously, using caget to obtain EPICS variables and put them into text files.

/adaqfs/home/sbs-onl/logentry_scripts/halla/EpicsToFile

the text files are in /adaqfs/home/sbs-onl/logentry_scripts/halla/epics/halla.epics

Note, halla1.epics is rewritten frequently while halla.epics is a more stable copy that gets put into HALOG and datastream.

For the HV, its similar. A script /adaqfs/home/sbs-onl/logentry_scripts/HV_logging_SBS/EpicsLooper with data in the /Results subdirectory.

Now, how to add a variable.

1. Edit EpicsToFile, add your variable. 2. Might want run this with TESTPRINT=1 and run EpicsToFile interactively to check it. Don't forget to restore TESTPRINT=0. 3. Kill the current running of EpicsToFile

[sbs-onl@adaq1 halla]$ ps awx | grep EpicsToFile
 4018 pts/69   S+     0:00 grep --color=auto EpicsToFile
10161 ?        S      1:03 /bin/ksh /adaqfs/home/sbs-onl/logentry_scripts/halla//EpicsToFile

kill -9 10161

Then the cron script "startCron" will restart it.

One fly in the ointment at the moment is that if someone is doing "less EpicsToFile" or "more EpicsToFile" on adaq1, then unfortunately startCron is not smart enough to restart EpicsToFile. It is smart enough to ignore emacs sessions. In the meantime, kill the "less" command, too.

[sbs-onl@adaq1 halla]$ ps awx | grep EpicsToFile
 2312 pts/69   T      0:00 less EpicsToFile
 3034 pts/69   S+     0:00 grep --color=auto EpicsToFile
10161 ?        S      1:04 /bin/ksh /adaqfs/home/sbs-onl/logentry_scripts/halla//EpicsToFile

kill -9 2312
kill -9 10161