Name
ndrxdebug.conf — Enduro/X Runtime Debug configuration
Synopsis
BINARY_NAME [ndrx=NDRX_DEBUG_LEVEL] [ubf=UBF_DEBUG_LEVEL] [tp=TP_DEBUG_LEVEL]  [bufsz=DEBUG_BUFFER_SIZE] [threaded=THREADED] [mkdir=MKDIR] file=[LOG_FILE] [iflags=INTEGRATION_FLAGS]
DESCRIPTION
debug.conf a file specified by NDRX_DEBUG_CONF env variable configures
EnduroX platform logging for each of the separate executable. The logging is
done from two sources. One source is UBF and another is ATMI (ndrx). For each
of the sources debug level can be set for each separate binary. Debug file
or stderr also can be specified for each of the separate binaries.
DEBUG CONFIGURATION FILE SYNTAX
- 
BINARY_NAME
- 
    Binary name is either executable name or *. In case of * it is applied to
    default configuration. It is recommended to put it in start of the file. Any
    binary afterwards in file will override defaults.
- 
NDRX_DEBUG_LEVEL
- 
    ATMI debug level. 0..5. 0=No logging. 1=Fatal, 2=Error, 3=Warning, 4=Program info,
    5=Program detail.
- 
UBF_DEBUG_LEVEL
- 
    UBF debug level. 0..5. 0=No logging. 1=Fatal, 2=Error, 3=Warning, 4=Program info,
    5=Program detail.
- 
TP_DEBUG_LEVEL
- 
    This is tplog(3) user logging level. 0..5. 0=No logging.
    1=Fatal, 2=Error, 3=Warning, 4=Program info, 5=Program detail.
- 
DEBUG_BUFFER_SIZE
- 
    Number of lines to buffer before writing out to disk.
- 
THREADED
- 
    Value is can be set to "Y" or "N". The default is "N". In case of "N" then
    logging of the process debug output is sent to the LOG_FILE. All threads
    are doing logging to single file. If set to "Y", then for each XATMI client
    there will be open new log file. The log file names are assigned by following
    approach: Say LOG_FILE = TEST.LOG, then new thread log will go to
    TEST.X.LOG (.e.g TEST.1.LOG). If LOG_FILE = TEST_LOG, then new thread
    will perform logging to "TEST_LOG.1". If value is set to "L" for process
    level loggers, then any writing to log is serialized by Mutex lock. This
    mode is by default on for SystemV poller.
- 
MKDIR
- 
    Value is can be set to "Y" or "N". The default is "N". In case of "Y", if
    Enduro/X logger attempts to open log file and the output directory is missing
    i.e. fopen() gives ENOENT error, the logger will attempt to create the
    missing folders below recursively. This functionality might be helpful if
    system is running in active-active mode without shared disk volume and
    using request file logging in different folders. Thus if call is routed
    to other cluster node, it can create the exact file name locally with
    performing log file switching.
- 
LOG_FILE
- 
    Log file. If empty then stderr will be used. Also special file names
    are used. The /dev/stderr represents stderr output and /dev/stdout
    represent stdout output.
- 
COMMENTS
- 
    Commented lines starts with #. Empty lines are ignored.
- 
INTEGRATION_FLAGS
- 
    Integration specific flags. These specific for binding environments. For example
    endurox-go package have defined flag detailed which will print the
    Go source file name and the code line instead of fixed C function file/line.
EXAMPLE
Sample configuration:
# Global config:
* ndrx=5 ubf=1 lines=1 bufsz=1000 tp=5 file=
# Per binary config:
xadmin          file=${NDRX_APPHOME}/tmp/XADMIN
ndrxd           file=${NDRX_APPHOME}/tmp/NDRXD
myclient        file=${NDRX_APPHOME}/tmp/MYCLIENT
myserver        file=${NDRX_APPHOME}/tmp/MYSERVER threaded=y
ud              file=${NDRX_APPHOME}/tmp/NDRXCOMMON CONFIGURATION INI SECTION
Similar syntax is used to describe the debug configuration when common configuration
is used (i.e. configuration in ini files). The difference is that there is one
extra equation mark between the binary and debug string, see example:
[@debug]
# Global config:
*=ndrx=5 ubf=1 lines=1 bufsz=1000 tp=5 file=
# Per binary config:
xadmin=file=${NDRX_APPHOME}/tmp/XADMIN
ndrxd=file=${NDRX_APPHOME}/tmp/NDRXD
myclient=file=${NDRX_APPHOME}/tmp/MYCLIENT
myserver=file=${NDRX_APPHOME}/tmp/MYSERVER threaded=y
ud=file=${NDRX_APPHOME}/tmp/NDRX