System messages (log output)

The PPM server uses the log4J interface to output system messages. Each PPM component (e.g., data import, merger, Measure calculator) uses own loggers. The PPM system modules (components) have the following superordinate loggers: log, trace, and audit.

By default, the PPM system has the following appenders for formatted message output.

Appender

Description

console

Messages are output on the console.

Only still relevant for command line programs.

logFile

Messages are written to a file. The name of the file is specified by the configuration key log4j.appender.logFile.File.

errorFile

Error messages and exceptions (log output starting with E: or F:) are written to a file. The name of the file is specified by the configuration key log4j.appender.errorFile.File.
Exceptions and stack traces are output to this file only.

traceFile

Messages are only written to a file. The name of the file is specified by the configuration key log4j.appender.traceFile.File.
This appender is used for collecting certain messages to support troubleshooting.

auditFile

Writes audit log messages to a file. The name of the file is specified by the configuration key log4j.appender.auditFile.File.

For the client server, message output is configured in the file Server_Log_settings.properties, for the analysis server in the file AnalysisServer_Log_settings.properties. Both configuration files including their default entries are automatically created during installation.

The configuration files Server_Log_settings.properties and AnalysisServer_Log_settings.properties are checked for changes every 60 seconds (fixed setting). Therefore, the configuration of log output can be changed without having to restart the PPM servers.

Module-based logging

The familiar PPM module names are used for system message output of PPM client server and analysis server. They are configured in the files Server_Log_settings.properties (client server) or AnalysisServer_Log_settings.properties (analysis server), respectively.

PPM supports the following logger modules:

Module name

Description

LOG.XML

XML source system data import

LOG.EIM

Internal import of imported fragment instances

LOG.MGR

Merge of process fragments

LOG.TYP

Typification of process instances

LOG.KIC

Calculation of measures and dimensions

LOG.PSC

Dashboard queries

LOG.PLV

Planned value calculation

LOG.CFG

Internal configuration management

LOG.STD

PPM server in STANDARD mode

LOG.SRV

Standard module used for log output of the PPM server

LOG.CNV

Database converter

LOG.IMP

Import and export of configurations (e.g. using runppmconfig)

LOG.ADM

Client administration (e.g. using runppmadmin)

LOG.KG

Key creation for imported process fragments (key generator)

LOG.PRF

Profiler (SA)

LOG.MV

Management views (applet-based)

LOG.OLA

Query interface

LOG.REP

Creation of reports

LOG.RAU

Report automation

LOG.MST

PPM server in MASTER mode

LOG.SUB

PPM server in SUBSERVER mode

LOG.LOG

General log output

LOG.EAL

Early alert system

LOG.ALY

Irregularity analysis (runppmanalytics)

LOG.MTAB

Minitab

LOG.CCS

Attribute calculator in SILENT mode

LOG.CCD

Attribute calculator in DEFAULT mode

LOG.CCV

Attribute calculator in VERBOSE mode

LOG.PFM

sysmon client

LOG.CRC

Corba connections

LOG.MON

Online monitoring

LOG.PFS

Statistics of user-specific favorites

LOG.SFS

Statistics of shared favorites

LOG.CPI

Improvements, message administration

LOG.ASRV

Standard module used for log output of the analysis server

LOG.MEM

Early alert system in case of memory shortage

LOG.PPI

Process import

LOG.EIP

Process import - Event import

LOG.CLC

Process import - Measure calculation

LOG.UPD

Process import - Update

LOG.DAI

Data analytics import

In message output, module codes (corresponding to the module name without the prefix LOG.) are not localized. Therefore, for messages for the Measure calculator, the module code is KIC.

You must specify a log level for each logger module. The following log levels are supported: INFO, WARN, ERROR, FATAL, OFF. The affinity of the log levels selected increases from right to left, i.e., if you set the log level to WARN, messages of the ERROR and FATAL levels are output, as well.

Example

Information, warnings, errors, and critical errors are to be output on the console for the XML data import.

log4j.logger.LOG.XML=INFO,console

Trace message output

In contrast to logger modules, trace modules do not have modules. Instead, message output can only be turned on or off. This output contains further information on the error. The following trace modules exist: ASRV, SRV, CONFIG, ABT, CONPOOL, FRQ, RET, RETDS, QPL, SELITY, DIM, IMP, RMI, MEM, PPI, EIP, CLC, UPD, DST, QUE

Instead of the log level, you can specify the following settings for trace modules: OFF, TRACE.

Example

Trace messages are to be output for the client server, but not for the analysis server.

log4j.logger.TRACE.SRV=TRACE

log4j.logger.TRACE.ASRV=OFF

Log output prefixes

Each log output has a prefix indicating the corresponding log level. This prefix is identical for all languages.

Log level

Prefix for all languages

Statistics

S:

FATAL

F:

ERROR

E:

WARN

W:

INFO

I:

TRACE

T:

Statistics messages are output always and can only be suppressed by the OFF log level.

Format log output

The log output format is specified in the two configuration files Server_Log_settings.properties and AnalysisServer_Log_settings.properties. The PPM default date format is specified by %X{ppmdate} in these files.

The date format used depends on the language that the client and analysis servers were started with. The following date formats are used for the three languages supported by PPM:

Language

Locale

Date format

English

EN

dd/MM/yy HH:mm:ss

English USA

US

MM/dd/yy HH:mm:ss

German

DE

dd.MM.yy HH:mm:ss

French

FR

dd.MM.yy HH:mm:ss

Hungarian

HU

dd.MM.yy HH:mm:ss

Japanese

JA

dd/MM/yy HH:mm:ss

Dutch

NL

dd.MM.yy HH:mm:ss

Russian

RU

dd.MM.yy HH:mm:ss

Chinese

ZH

dd/MM/yy HH:mm:ss

Example

log4j.appender.error.File.layout.ConversionPattern=%p %X{ppmdate} [%c{1}] %m%n

Scaled systems

The configuration of log message output for a scaled PPM system is basically the same as for a standard system with only one PPM server. However, the following should be observed:

Distribute log output

You can use appenders to send the PPM server system messages to any log servers. These will process the messages further.

Windows Event Viewer

The following file extract shows the extended appender configuration for sending PPM server system messages to the local Windows log server.

...

log4j.appender.Logserver=org.apache.log4j.nt.NTEventLogAppender

log4j.appender.Logserver.layout=org.apache.log4j.EnhancedPatternLayout

log4j.appender.Logserver.layout.ConversionPattern=%d | %-5p | %-20c{1} | %m%n

...

System messages are displayed in Windows Event Viewer (Computer Management -> System -> Event Viewer).

Remote log servers

To send PPM server system messages to a remote logging server (e.g., B. Lumbermill or Apache Chainsaw) in your network, you can use the extended appender configuration shown in the following file extract. 

...

log4j.appender.AuditLogserver=org.apache.log4j.net.SocketAppender

log4j.appender.AuditLogserver.Port=4445

log4j.appender.AuditLogserver.RemoteHost=pcanywhere

log4j.appender.AuditLogserver.layout=org.apache.log4j.EnhancedPatternLayout

log4j.appender.AuditLogserver.layout.ConversionPattern=%X{ppmdate} [%c{1}] %m%n

...