You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

The cmlog viewer is an interactive Eclipse plugin for viewing and querying cmlog messages.  It can be run within SEAL, or as a stand-alone application.

What does it do?

The viewer allows you to browse control system messages, receiving updates from the live system as well as those previously logged.  You can specify keyword filters to narrow messages to only those that interest you.  It also supports printing, saving to a file, cutting and pasting, sorting, pausing and resuming.

How do I use it?

Starting

Within SEAL: Start the cmlog viewer by starting its Eclipse View. That is, Window -> Show View (you may need to select Other ... at this point) SEAL -> cmlog. Once started, use the File -> Get Messages dialog to connect to a cmlog server.

Stand-Alone viewer: Run cmlogviewer from the command-line. 

Getting Some Messages

Under the "File" menu, select "Get Messages...".  Doing so will open a dialog box that allows you to specify the message server, filter messages by content, and indicate whether to listen for live messages, or only to search through old messages.

Server: Usually you will want to select "OPI Gateway", since this provides both SLC and LCLS messages from the operational control system.  You can choose another server if you have a specific need.  You can also manually enter a server by specifying its network name and port separated by a colon (e.g. opi00gtw00.slac.stanford.edu:8093).

Filter: If you are interested in only certain messages, you can indicate this with keywords.  Only messages that contain all of the whitespace-separated words you enter in this text box will be delivered.  If you leave "No Filter" selected, all messages will be delivered.  Note that you can also change the filter after a connection has been established.  Those who wish to do more specialized filtering may use the CMLOG query syntax.  To do so, enter ':' as the first character of the filter, and follow that with a valid CMLOG query.

Live / Old Messages: If you choose to listen for live messages (the default), you must specify how much time's worth to keep.  Do so by entering a number and a unit of time in the text box (e.g. 10 minutes, or 3 hours, or 2 days, ...).  When the connection is first established, the entire timespan will be filled in with previously logged messages.  They will disappear from the viewer when they become too old.

If you choose to retrieve old messages only, then you specify a time range in the text box.  Only messages logged within that time range will be retrieved by the viewer.  You may select a pre-defined time range, or enter one yourself in the format of "begin - end".  In addition to the standard mm/dd/yy hh:mm:ss format, you may also use several special phrases as shorthand.  (e.g. 11/26/07 08:00 - 11/26/07 12:30, or current day - now, or current hour - current minute, or current day - current shift).  If instead of using a pre-defined date or typing one manually, you select "Assist..." from the drop down box, you'll get a little wizard that will help you construct a time range by specifying an anchor time and a duration.

Using the Viewer

Sorting: Normally, messages are sorted by the time field, with newer ones at the bottom.  But you can sort by any of the fields.  To do so, simply click on the desired column heading.  Clicking the currently selected column will reverse the sort order.  Note that the black triangle in the sort column header designates the direction: the vertex indicates the direction of descending values.

Pausing updates: Because the message view is continuously updating, it can be useful at times to freeze the display.  You can do this by clicking the "Pause Updates" button in the bottom right corner of the window.  When you pause updates, you prevent the window contents from changing, but things are still happening under the hood.  When you un-click the button, the window contents will look the same as they would have, had you never paused in the first place.

Changing the message retrieval parameters: At the top of the message view are two text boxes.  The one on the left indicates the current filter and, and the one on the right indicates the time duration or the time range, depending on whether you selected to view live updates or just browse through old ones.  You can update these fields in the same manner as in the initial connection dialog box described above, in "Getting Some Messages".  When you modify a text box, the background will turn yellow to indicate that the modifications are unapplied.  You may either hit the enter key to apply the changes or the escape key to revert.  Note that you may modify both the filter and time specification.  Hitting the enter key in either box will apply the changes from both.

Copying messages to the clip board: You can copy messages to the system clipboard so that you can paste them into other applications such as text editors, spreadsheets, etc.  To select one message, just click on it in the viewer and select "Copy" from the "Edit" menu.  You can select all messages by using the corresponding menu entry.  To select multiple messages, select one message then hold the shift key and click on another message.  Doing this will cause all message in between to be selected in addition to the two endpoints.  To select non-contiguous messages, hold the control key while clicking on individual messages.

Saving to a file: You can save the contents of the message viewer to a text file by selecting "Save As..." from the "File" menu.

*Printing:*Select "Print..." from the "File" menu.

Clearing messages: You can clear all messages from the view by selecting "Clear Messages" from the "Edit" menu.  to delete specifi messages, select them as though you were going to copy them, then choose "Delete" from the "Edit" menu.

Known Issues

In Jira, Cmlog Viewer is a component in the SEAL Project.
Summary of known Jira Issues: https://jira.slac.stanford.edu/secure/IssueNavigator.jspa?reset=true&mode=hide&sorter/order=ASC&sorter/field=priority&pid=10447&component=10850

  • No labels