| DAQErrMon CDF Data Acquisition Error Monitor |
The consumer DAQErrMon receives events from the CSL based on the Level 3 triggers MONITOR_DAQ_ERROR and MONITOR_L3TAG_PS200. The former trigger examines the event record and checks for data synchronization across the various readout data banks and for the persistent presence of a list of central banks. The latter trigger is a random sample of Level 2 accepted events without any Level 3 selection. The source code for the MONITOR_DAQ_ERROR trigger can be found at Level3Filters/src/L3DaqErrorFilter.cc
The MONITOR_DAQ_ERROR trigger path is present primarily in physics trigger tables; for cosmics and other decoupled triggers tables, the MB_XING_PS1M random crossing trigger is used. When DAQErrMon receives events, it reruns the MONITOR_DAQ_ERROR algorithm; in case of an error is found, the DAQErrMon records it in the main error histogram, as shown below. Bins:
When a data missing error is encountered, an error message is sent to RunControl via the ConsumerErrorReceiver process. DAQ Ace in this case should immediately issue a Halt-Recover-Run sequence; if this fails to clear the problem, a new DAQ run should be started; if that fails to clear the problem, experts should be contacted.