# The Factory uses log4j, a Java Logging standard for debugging and tracing.

# For more infomation about log4j, please visit http://jakarta.apache.org/log4j/docs/index.html

# For the general syntax of property files see the documenation of org.apache.log4j.PropertyConfigurator.

# For the output format, please see javadoc of org.apache.log4j.PatternLayout

# WARNING: Location information can be useful but is very costly in
# terms of computation.

# The root category uses appenders called "Console" and "General."  The root category
# uses WARN as the default priority.  The "bowstreet.system.out" category also uses the
# appenders below for its output.  If you remove the Console appender from the line below
# make sure you add it to the "bowstreet.system.out" category.
log4j.rootCategory=WARN, Console, General

# These categories are for system level logging, please set the priority
# of category to INFO, WARN or DEBUG to enable that category. Severity levels have
# the following hierarchy (from log4j doc): DEBUG < INFO < WARN < ERROR < FATAL
# so DEBUG will enable all messages, ERROR will enable just ERROR and FATAL.

#this is the root category for all logging which previously used ILogDriver for logging
log4j.logger.bowstreet.system.server=WARN,Server

# these configure Server Stats logging
# dont inherit the Console
log4j.additivity.bowstreet.system.server.logging.serverStats=false
log4j.logger.bowstreet.system.server.logging.serverStats=INFO,ServerStats

# this corresponds to the previous Event drivers
log4j.logger.bowstreet.system.server.logging.event=WARN,Server

log4j.logger.bowstreet.system.request=WARN,Request
log4j.logger.bowstreet.system.profileSelection=WARN,ProfileSelection
log4j.logger.bowstreet.system.regen=WARN,Regen
log4j.logger.bowstreet.system.builderCalls=WARN,BuilderCalls
log4j.category.bowstreet.system.builderCallTiming=WARN,BuilderCallTiming
log4j.logger.bowstreet.system.modelActions=DEBUG,ModelActions
log4j.logger.bowstreet.system.webservice.serviceCall=WARN,ServiceCalls
log4j.logger.bowstreet.system.webservice.incomingSOAPRequest=WARN,IncomingSOAPRequests
log4j.logger.bowstreet.builders.webapp.serviceConsumer=WARN,ServiceConsumer

log4j.logger.bowstreet.system.sessionSize=INFO,SessionSize

# Following is the category for debug tracing. It should be set to priority higher
# than debug to improve efficiency.
# You can set the priority to DEBUG to show session ids.
log4j.logger.bowstreet.system.debugTracing=DEBUG,DebugTracing

# Following is the category for "SystemOut" calls in the Action List builder.  It relies upon the
# additivity of the root category to have it's messages sent to the Console appender.  If the root
# category configuration is changed so that it no longer uses the Console appender make sure you
# append ",Console" to the line below.
log4j.logger.bowstreet.system.out=INFO


# AXIS inherits its debug from the rootCategory, so set it separately so we don't get tons of DEBUG by
# default if someone turns on DEBUG at the root level for the bowstreet categories
log4j.logger.org.apache.axis=WARN,Console


# Following is the category for Profile Selection Handler debug tracing.
# It should be set to priority higher than debug to improve efficiency.
# You can set the priority to DEBUG to log information provided by a Profile Selection Handler.
# Not all Profile Selection Handlers provide debug tracing.
# Currently the WPS Group Segment Handler, and WP Composite Application Role Selection Handler support selection logging.
log4j.logger.bowstreet.profile.selectionHandler=INFO,ProfileSelectionHandler


# -------------- The Console appender sends its output to System.out --------------
log4j.appender.Console=org.apache.log4j.ConsoleAppender


# -------------- The Server appender send its output to event.log --------------
# -------------- It uses DailyRollingFileAppender, so it can be configured to save
# -------------- off the results to other files based on the DatePattern.
log4j.appender.Server=org.apache.log4j.DailyRollingFileAppender
log4j.appender.Server.File=${bowstreet.rootDirectory}/logs/event.log
log4j.appender.Server.DatePattern='.'yyyy-MM-dd
log4j.appender.Server.layout=org.apache.log4j.PatternLayout
log4j.appender.Server.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n



# Console uses PatternLayout.
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
# You can add more items to output, see javadoc of org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nMsg:      %m%n%n%n


# -------------- The General appender sends its ouput to general.txt --------------
log4j.appender.General=org.apache.log4j.FileAppender
log4j.appender.General.File=${bowstreet.rootDirectory}/logs/general.txt

# Truncate the logging file if it aleady exists.
log4j.appender.General.Append=true

# Appender General uses the PatternLayout.
log4j.appender.General.layout=org.apache.log4j.PatternLayout
log4j.appender.General.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The ServerStats appender sends its ouput to serverStats.txt --------------
log4j.appender.ServerStats=org.apache.log4j.FileAppender
log4j.appender.ServerStats.File=${bowstreet.rootDirectory}/logs/serverStats.txt

# Truncate the logging file if it aleady exists.
log4j.appender.ServerStats.Append=true

# Appender ServerStats uses the PatternLayout.
log4j.appender.ServerStats.layout=org.apache.log4j.PatternLayout
log4j.appender.ServerStats.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n


# -------------- The Request appender sends its ouput to request.txt --------------
log4j.appender.Request=org.apache.log4j.FileAppender
log4j.appender.Request.File=${bowstreet.rootDirectory}/logs/request.txt

# Truncate the logging file if it aleady exists.
log4j.appender.Request.Append=true

# Appender Request uses the PatternLayout.
log4j.appender.Request.layout=org.apache.log4j.PatternLayout
log4j.appender.Request.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The ProfileSelection appender sends its ouput to profileSelection.txt --------------
log4j.appender.ProfileSelection=org.apache.log4j.FileAppender
log4j.appender.ProfileSelection.File=${bowstreet.rootDirectory}/logs/profileSelection.txt

# Truncate the logging file if it aleady exists.
log4j.appender.ProfileSelection.Append=true

# Appender ProfileSelection uses the PatternLayout.
log4j.appender.ProfileSelection.layout=org.apache.log4j.PatternLayout
log4j.appender.ProfileSelection.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The Regen appender sends its ouput to regen.txt --------------
log4j.appender.Regen=org.apache.log4j.FileAppender
log4j.appender.Regen.File=${bowstreet.rootDirectory}/logs/regen.txt

# Truncate the logging file if it aleady exists.
log4j.appender.Regen.Append=true

# Appender Regen uses the PatternLayout.
log4j.appender.Regen.layout=org.apache.log4j.PatternLayout
log4j.appender.Regen.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The BuilderCall appender sends its ouput to builderCalls.txt --------------
log4j.appender.BuilderCalls=org.apache.log4j.FileAppender
log4j.appender.BuilderCalls.File=${bowstreet.rootDirectory}/logs/builderCalls.txt

# Truncate the logging file if it aleady exists.
log4j.appender.BuilderCalls.Append=true

# Appender BuilderCalls uses the PatternLayout.
log4j.appender.BuilderCalls.layout=org.apache.log4j.PatternLayout
log4j.appender.BuilderCalls.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The BuilderCallTiming appender sends its ouput to builderCallTiming.txt --------------
log4j.appender.BuilderCallTiming=org.apache.log4j.FileAppender
log4j.appender.BuilderCallTiming.File=${bowstreet.designer.logging.directory}/builderCallTiming.txt


# Don't truncate the logging file if it aleady exists.
log4j.appender.BuilderCallTiming.Append=true

# Appender BuilderCallTiming uses the PatternLayout.
log4j.appender.BuilderCallTiming.layout=org.apache.log4j.PatternLayout
log4j.appender.BuilderCallTiming.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The ModelActions appender sends its ouput to modelActions.txt --------------
log4j.appender.ModelActions=org.apache.log4j.FileAppender
log4j.appender.ModelActions.File=${bowstreet.rootDirectory}/logs/modelActions.txt

# Truncate the logging file if it aleady exists.
log4j.appender.ModelActions.Append=true

# Appender ModelActions uses the PatternLayout.
log4j.appender.ModelActions.layout=org.apache.log4j.PatternLayout
log4j.appender.ModelActions.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The DebugTracing appender sends its ouput to debugTracing.txt --------------
log4j.appender.DebugTracing=org.apache.log4j.FileAppender
log4j.appender.DebugTracing.File=${bowstreet.rootDirectory}/logs/debugTracing.txt


# Truncate the logging file if it aleady exists.
log4j.appender.DebugTracing.Append=true

# Appender DebugTracing uses the PatternLayout.
log4j.appender.DebugTracing.layout=org.apache.log4j.PatternLayout
log4j.appender.DebugTracing.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The ServiceCalls appender sends its ouput to serviceCalls.txt --------------
log4j.appender.ServiceCalls=org.apache.log4j.FileAppender
log4j.appender.ServiceCalls.File=${bowstreet.rootDirectory}/logs/serviceCalls.txt

# Truncate the logging file if it aleady exists.
log4j.appender.ServiceCalls.Append=true

# Appender ServiceCalls uses the PatternLayout.
log4j.appender.ServiceCalls.layout=org.apache.log4j.PatternLayout
log4j.appender.ServiceCalls.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The ServiceConsumer appender sends its ouput to serviceConsumer.txt --------------
log4j.appender.ServiceConsumer=org.apache.log4j.FileAppender
log4j.appender.ServiceConsumer.File=${bowstreet.rootDirectory}/logs/serviceConsumer.txt

# Truncate the logging file if it aleady exists.
log4j.appender.ServiceConsumer.Append=true

# Appender ServiceConsumer uses the PatternLayout.
log4j.appender.ServiceConsumer.layout=org.apache.log4j.PatternLayout
log4j.appender.ServiceConsumer.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The IncomingSOAPRequests appender sends its ouput to incomingSOAPRequests.txt --------------
log4j.appender.IncomingSOAPRequests=org.apache.log4j.FileAppender
log4j.appender.IncomingSOAPRequests.File=${bowstreet.rootDirectory}/logs/incomingSOAPRequests.txt

# Truncate the logging file if it aleady exists.
log4j.appender.IncomingSOAPRequests.Append=true

# Appender ServiceCalls uses the PatternLayout.
log4j.appender.IncomingSOAPRequests.layout=org.apache.log4j.PatternLayout
log4j.appender.IncomingSOAPRequests.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n


# -------------- The UserLog appender sends its ouput to userLog.txt --------------
log4j.appender.UserLog=org.apache.log4j.FileAppender
log4j.appender.UserLog.File=${bowstreet.rootDirectory}/logs/userLog.txt

# Truncate the logging file if it aleady exists.
log4j.appender.UserLog.Append=true

# Appender ServiceCalls uses the PatternLayout.
log4j.appender.UserLog.layout=org.apache.log4j.PatternLayout
log4j.appender.UserLog.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n


# -------------- The ProfileSelectionHandler appender sends its ouput to profileSelectionHandler.txt --------------
log4j.appender.ProfileSelectionHandler=org.apache.log4j.FileAppender
log4j.appender.ProfileSelectionHandler.File=${bowstreet.rootDirectory}/logs/profileSelectionHandler.txt

# Truncate the logging file if it aleady exists.
log4j.appender.ProfileSelectionHandler.Append=true

# Appender DebugTracing uses the PatternLayout.
log4j.appender.ProfileSelectionHandler.layout=org.apache.log4j.PatternLayout
log4j.appender.ProfileSelectionHandler.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n


# -------------- The AlertsEngine appender sends its ouput to alertsEngine.txt --------------
log4j.appender.AlertsEngine=org.apache.log4j.FileAppender
log4j.appender.AlertsEngine.File=${bowstreet.rootDirectory}/logs/alertsEngine.txt

log4j.appender.AlertsEngine.Append=true

# This is used when defined as RollingFileAppender
#log4j.appender.AlertsEngine.maxFileSize=200KB

# Appender AlertsEngine uses the PatternLayout.
log4j.appender.AlertsEngine.layout=org.apache.log4j.PatternLayout
log4j.appender.AlertsEngine.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The AlertsEngine Logger Category  --------------
log4j.logger.com.bowstreet.solutions.alerting=WARN, AlertsEngine
log4j.logger.com.bowstreet.solutions.alertingTrace=DEBUG, AlertsEngine

# -------------- The WorkforceManagement (wfm) appender sends its ouput to workforceManagement.txt --------------

#log4j.appender.wfm=org.apache.log4j.FileAppender
log4j.appender.wfm=org.apache.log4j.RollingFileAppender

log4j.appender.wfm.File=${bowstreet.rootDirectory}/logs/workforceManagement.txt
log4j.appender.wfm.Append=true

# this is used when defined as RollingFileAppender
log4j.appender.wfm.MaxFileSize=200KB
log4j.appender.wfm.MaxBackupIndex=2


# Appender wfm uses the PatternLayout.
log4j.appender.wfm.layout=org.apache.log4j.PatternLayout
log4j.appender.wfm.layout.ConversionPattern=*-- TIME: [%d] --* %nCategory: %c%nPriority: %p%nThread:   %t%nMsg:      %m%n%n%n

# -------------- The WorkforceManagement Logger Category  --------------
log4j.logger.bowstreet.solutions.wfm = WARN, wfm

# -------------- The SessionSize appender sends its ouput to sessionsize.csv --------------
log4j.appender.SessionSize=org.apache.log4j.FileAppender
log4j.appender.SessionSize.File=${bowstreet.rootDirectory}/logs/sessionsize.csv
log4j.appender.SessionSize.layout=org.apache.log4j.PatternLayout
log4j.appender.SessionSize.layout.ConversionPattern="*-- %d --*"%n%m%n%n%n
log4j.appender.SessionSize.Append=true


