From MidasWiki
Revision as of 16:47, 14 July 2015 by Suz (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search



The purpose of mlogger is to save data from the experiment onto disk. See logging in MIDAS for a full list of what mlogger can do.


       [-e exptname ] :  experiment name (see Common Parameters to MIDAS Utilities)
       [-D ] : start program as a daemon (UNIX only).
       [-s] : Save mode (debugging: protect ODB).
       [-v] : Verbose (not to be used in conjunction with -D).
       [-help ] : help


    >mlogger -D 


  • The mlogger application requires an existing /Equipment ODB tree.
  • When mlogger is started for the first time, it creates the /Logger, the /History and the /Elog ODB trees with default values.
  • Once mlogger is running, you should be able to monitor its state with mstat or with mhttpd.

Data storage location

If mlogger is started interactively (i.e. without the argument [-D ]) The following information will be displayed :

$ mlogger
Log     directory is    <default directory>
Data    directory is same as Log unless specified in channels/
History directory is same as Log 
ELog    directory is same as Log 
MIDAS logger started. Stop with "!"


Logging in MIDAS

The MIDAS Logger, mlogger is supplied in the MIDAS package. This utility can perform several functions (selected by the user via the /Logger ODB tree ) including:

  • logging System messages to a Message file or as message events
  • logging information to a mySQL database
  • writing information to an electronic logbook
  • collecting and logging history events
  • logging experimental data from one or more Frontends to storage device(s) such as disk or tape
  • multiple Logging Channels can be defined
  • several different storage devices, formats and compression levels can be selected
  • data can be logged to different subdirectories on disk
  • data can be logged to a remote computer, using the FTP mode
  • events can be selected for logging by Event ID or Trigger mask
  • Event Filtering can be implemented
  • runs can be automatically stopped and restarted after a certain number of events, or a certain time
  • the complete ODB contents can be saved
    • into a file at the beginning and/or end of run
    • and/or into the data stream

The mlogger utility runs on the backend computer, receiving events from the buffer manager. It supports three type of storage devices so far, i.e.

  • Disk,
  • FTP channel to a remote computer.
  • Tape (no longer maintained)

Data can currently be written in five different formats :

  • MIDAS binary,
  • ASCII,
  • ROOT
  • DUMP

The user may of course write their own custom data logger to save the data in any format they choose.

mlogger creates ODB trees

When mlogger is started for the first time, it creates the /Logger ODB tree (including a single logger channel - channel 0), and fills it with default settings. The /Logger tree contains all the relevant information for mlogger to run properly. The user has no code to write in order for the system to operate correctly. However, the user will want to customize the logger for his/her own experiment, by setting the keys in the /Logger tree to suitable values.

In addition to the /Logger tree, mlogger also creates the /History ODB tree, used in the optional History System features. If MIDAS is compiled with mySQL support, a /Logger/SQL subtree will also be created in the /Logger tree (see logging to a mySQL database).