logger::utils(n)       Object Oriented logging facility       logger::utils(n)



______________________________________________________________________________

NAME
       logger::utils - Utilities for logger

SYNOPSIS
       package require Tcl  8.4

       package require logger::utils  ?1.3?

       ::logger::utils::createFormatCmd formatString

       ::logger::utils::createLogProc -procName procName ?options...?

       ::logger::utils::applyAppender -appender appenderType ?options...?

       ::logger::utils::autoApplyAppender command command-string log op
       args...

_________________________________________________________________

DESCRIPTION
       This package adds template based appenders.

       ::logger::utils::createFormatCmd formatString
              This command translates formatString into an expandable command
              string.  The following strings are the known substitutions (from
              log4perl) allowed to occur in the formatString:

              %c     Category of the logging event

              %C     Fully qualified name of logging event

              %d     Current date in yyyy/MM/dd hh:mm:ss

              %H     Hostname

              %m     Message to be logged

              %M     Method where logging event was issued

              %p     Priority of logging event

              %P     Pid of current process

       ::logger::utils::createLogProc -procName procName ?options...?
              This command ...

              -procName procName
                     The name of the procedure to create.

              -conversionPattern pattern
                     See ::logger::utils::createFormatCmd for the
                     substitutions allowed in the pattern.

              -category category
                     The category (service).

              -priority priority
                     The priority (level).

              -outputChannel channel
                     channel to output on (default stdout)

       ::logger::utils::applyAppender -appender appenderType ?options...?
              This command will create an appender for the specified logger
              services. If no service is specified then the appender will be
              added as the default appender for the specified levels. If no
              levels are specified, then all levels are assumed.


              -service loggerservices

              -serviceCmd loggerserviceCmds
                     Name of the logger instance to modify. -serviceCmd takes
                     as input the return of logger::init.

              -appender appenderType
                     Type of the appender to use.  One of console,
                     colorConsole.

              -conversionPattern pattern
                     See ::logger::utils::createFormatCmd for the format of
                     the pattern. If this option is not provided the default
                     pattern

                     [%d] [%c] [%M] [%p] %m

                     is used.

              -levels levelList
                     The list of levels to apply this appender to. If not
                     specified all levels are assumed.

       Example of usage:



                 % set log [logger::init testLog]
                 ::logger::tree::testLog
                 % logger::utils::applyAppender -appender console -serviceCmd $log
                 % ${log}::error "this is an error"
                 [2005/08/22 10:14:13] [testLog] [global] [error] this is an error


       ::logger::utils::autoApplyAppender command command-string log op
       args...
              This command is designed to be added via trace leave to calls of
              logger::init. It will look at preconfigured state (via
              ::logger::utils::applyAppender) to autocreate appenders for
              newly created logger instances.  It will return its argument
              log.

              Example of usage:



                logger::utils::applyAppender -appender console
                set log [logger::init applyAppender-3]
                ${log}::error "this is an error"


BUGS, IDEAS, FEEDBACK
       This document, and the package it describes, will undoubtedly contain
       bugs and other problems.  Please report such in the category logger of
       the Tcllib SF Trackers
       [http://sourceforge.net/tracker/?group_id=12883].  Please also report
       any ideas for enhancements you may have for either package and/or
       documentation.

KEYWORDS
       appender, logger

CATEGORY
       Programming tools

COPYRIGHT
       Copyright (c) 2005 Aamer Akhter <aakhter@cisco.com>




log                                   1.3                     logger::utils(n)
