The ops logger
Added v2.0.3 The TM1 server uses monitoring code to generate log messages of a critical nature
that are pushed out to the ops.logger
.
Critical events that are pushed out to this logger include the following:
- Threads and their state
- Thread state of interest
- High contention
- Pool memory size
- Chore failure
Event logging is enabled by using the EventLogging
configuration parameter in
the tm1s.cfg file. When event logging is enabled but there is no event logger defined, the TM1
server modifies the tm1s-logs.properties file to add the definitions of the event logger.
The following properties are added to the tm1s-log.properties file:
log4j.logger.Event=INFO, S2
log4j.appender.S2=org.apache.log4j.SharedMemoryAppender
log4j.appender.S2.MemorySize=5 MB
log4j.appender.S2.MaxFileSize=100 MB
log4j.appender.S2.MaxBackupIndex=1
log4j.appender.S2.TimeZone=Local
log4j.appender.S2.File=tm1event.log
log4j.appender.S2.Format=TM1Event
And the following settings are added to the tm1s.cfg file:
EventLogging=T
EventScanFrequency=1
EventThreshold.PooledMemoryInMB=0
EventThreshold.ThreadBlockingNumber=5
EventThreshold.ThreadRunningTime=600
EventThreshold.ThreadWaitingTime=20
These settings are defined as follows:
- EventScanFrequency
- Specifies the period to check the collection of threads, where 1 is the minimum number and 0 disables the scan.
- EventThreshold.PooledMemoryInMB
- Specifies the threshold for which a message is printed for the event that the server's pooled memory exceeds a certain value.
- EventThreshold.ThreadBlockingNumber=5
- Indicates that a warning is printed when a thread blocks at least five other threads.
- EventThreshold.ThreadRunningTime=600
- Indicates that a warning is printed when a thread has been running for 600 seconds.
- EventThreshold.ThreadWaitingTime=20
- Indicates that a warning is printed when a thread is blocked by another thread for 20 seconds.
For more information, see Parameters in the tm1s.cfg File.
If EventLogging=F
, the TM1 server does not modify the tm1s-logs.properties
file.
Because the ops.logger
relies on enabling a new log file, a default
tm1s-logs.properties file is created if one doesn't exist. If a tm1s-logs.properties file exists,
then the new entry is appended and the old one backed up as a copy.