LCLS Controls: CMLOG



LCLS is using CMLOG: Common Message Logging System to log messages from Linux, solaris and PPC clients during development and operation.    

Build History

The top-level directory for cmlog is /afs/slac/g/lcls/cmlog. Binaries and libraries built on 27jul2005 for the targets:
Linux-i386
ppc (VxWorks)

Environment

Even though cmlog is not an EPICS tool, the environment is set up when a user runs the LCLS epicsSetup script:
tcsh: source /afs/slac/g/lcls/epics/config/epicsSetup.csh
bash: . /afs/slac/g/lcls/epics/config/epicsSetup.bash
If you don't want to source epicsSetup, you can setup cmlog directly via:
tcsh: source /afs/slac/g/lcls/cmlog/config/cmlogSetup.csh
bash: . /afs/slac/g/lcls/cmlog/config/cmlogSetup.bash

Server

The server is running on lcls-dev under the laci account. It is started using /afs/slac/g/lcls/cmlog/config/st.cmlog. The /etc/init.d/cmlog startup script will start cmlogServer on lcls-dev reboot. A cron job will (eventually) keep it running. Messages are kept in files under /home/cmlog/data. If you have problems connecting to it, ensure that these env vars are set:
CMLOG_HOST=lcls-dev
CMLOG_PORT=9003

Browser

Type cmlog -c -u to start a browser. The cmd line options tell it to initally connect to the server and to run in update mode, which displays new messages as they arrive.

Eventually, a special browser will be added to lcls-dev to forward all messages from the cmlogServer to the MCC error log. More later.

Linux Clients

Only linux clients are supported for LCLS. Current clients include:

Users at the Command Prompt

At the command line, "cmlogMsg <message>" can be typed to send a message to the server (and see it displayed in the browser). The following additional cmlogMsg tools are available to log more than just text:

Matlab Scripts

Matlab scripts can call cmlogMsg or cmlogMsgLine using the "unix" command:
unix(['cmlogMsg "<message>"']);

Alarm Handler

The alarm handler sends a message for every severity change-of-state for PVs listed in its configuration files.

Channel Watcher

Channel watcher sends a message for every value change for PVs listed in its configuration files.

IOC Log Server

IOC log server (described in Chapter 10 of the EPICS App Dev Guide) sends a message for every text message received from all LCLS IOC clients.

IOC Cmlog Clients

IOC cmlog clients will be replaced by IOC log clients in the near future.


Contact: Dayle Kotturi
Last Modified:  Aug 23,  2006