Page tree

Sending trace output to a cell enables you to capture the traces of one or more cells in a centralized location. To send the trace of one cell to another cell, the trace of the originating cell should be produced as events. Those events can be sent to the destination cell using a propagate rule.

To enable sending cell trace information to another cell, you must

  • Configure which module/level combinations of trace messages are produced as events
  • Add a propagate rule to the Knowledge Base to specify which trace log events have to be propagated to which destination(s)

 After the cell trace module is configured, it generates an internal event for each trace log message.

Definition of the class of trace log events

Each trace message is represented through a single MC_CELL_LOG_MSG event, as shown:

ENUMERATION MC_LOG_LEVEL
   10   VERBOSE
   20   INFORM
   30   WARNING
   40   ERROR
   50   FATAL
END

MC_EV_CLASS: MC_CELL_LOG_MSG ISA MC_CELL_CONTROL
   DEFINES {
      log_time: INTEGER;        -- time stamp
      log_program: STRING;      -- Name of the program generating the message
      log_module: STRING;       -- Name of the module producing the message
      log_level: MC_LOG_LEVEL;  -- Message level
      log_src_file: STRING;     -- Source file name
      log_src_line: INTEGER;    -- Source file line number
      log_msg_id: STRING;       -- Unique message identifier (form BMC-IMCxxxxxxC)
      log_args: LIST_OF STRING; -- Message argument list
      log_text: STRING;         -- Message text in origin's locale
   };
END

The log_time date and time slot is an integer in time stamp format.

The textual representation of the log message log_text uses the originating cell's local message catalog.

Configuring trace messages to be produced as log events

By default, a cell does not produce log events for its trace. This has to be enabled explicitly using the TraceEvents configuration parameter in the mcell.conf file. The value of this parameter is a comma-separated sequence of module:level combinations. Each one is optionally prefixed with a + or a - sign to indicate addition or removal from the list. The special value ALL for module and for level indicate all modules and all levels. 

For example,

TraceEvents=ALL:ALL,-ALL:VERBOSE

This setting specifies that events must be generated for messages from all modules, of all but the VERBOSE level.

Warning

Event tracing should be configured with care, as it might produce an excessive number of events. In particular, VERBOSE level messages should not be configured as events.

For more information about the trace configuration parameters in mcell.conf, see Trace parameters.

Adding a propagate rule to the Knowledge Base to specify which trace log events have to be propagated to which destination(s)

The propagate rule syntax is described in Propagate rule syntax.

The following is an example of a propagate rule for trace log events:

propagate PropTraceEvents: MC_CELL_LOG_MSG
   to CentralAdminCell
END