#
# Copyright 2014 Internet2
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

#${grouper.home} will be substituted with the System property "grouper.home", which must have a trailing \ or / 
# depending on your OS. Of course you can use absolute paths if you prefer 


#
# log4j Configuration
# $Id: log4j.example.properties,v 1.13 2009-12-18 13:56:51 tzeller Exp $
#

# Appenders

## Grouper API event logging
log4j.appender.grouper_event                            = org.apache.log4j.FileAppender
log4j.appender.grouper_event.file                       = /tmp/logpipe
log4j.appender.grouper_event.append                     = true
log4j.appender.grouper_event.layout                     = org.apache.log4j.PatternLayout
log4j.appender.grouper_event.layout.ConversionPattern   = grouper-ws;grouper_event.log;${ENV};${USERTOKEN};%d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Grouper API error logging
log4j.appender.grouper_error                            = org.apache.log4j.FileAppender
log4j.appender.grouper_error.file                       = /tmp/logpipe
log4j.appender.grouper_errot.append                     = true
log4j.appender.grouper_error.layout                     = org.apache.log4j.PatternLayout
log4j.appender.grouper_error.layout.ConversionPattern   = grouper-ws;grouper_error.log;${ENV};${USERTOKEN};%d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n
#log4j.appender.grouper_error.layout.ConversionPattern   = %d{ISO8601}: %m%n

# Debug logging (Or: logging that I haven't cleaned up yet to send elsewhere)
log4j.appender.grouper_debug                            = org.apache.log4j.FileAppender
log4j.appender.grouper_debug.file                       = /tmp/logpipe
log4j.appender.grouper_debug.append                     = true
log4j.appender.grouper_debug.layout                     = org.apache.log4j.PatternLayout
#log4j.appender.grouper_debug.layout.ConversionPattern   = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_debug.layout.ConversionPattern   = grouper-ws;grouper_debug.log;${ENV};${USERTOKEN};%d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

## Benchmark logging
log4j.appender.grouper_gb                               = org.apache.log4j.FileAppender
log4j.appender.grouper_gb.file                          = /tmp/logpipe
log4j.appender.grouper_gb.append                        = true
log4j.appender.grouper_gb.layout                        = org.apache.log4j.PatternLayout
#log4j.appender.grouper_gb.layout.ConversionPattern      = %d{ISO8601} %5p %c{2}: %m%n
log4j.appender.grouper_gb.layout.ConversionPattern      = grouper-ws;grouper_bench.log;${ENV};${USERTOKEN};%d{ISO8601}: [%t] %-5p %C{1}.%M(%L) - %x - %m%n

# Loggers

## Default logger; will log *everything*
log4j.rootLogger  = ERROR, grouper_error

## All Internet2 (warn to grouper_error per default logger)
log4j.logger.edu.internet2.middleware = WARN


# Provisioning : PSP (version 2.1+)
log4j.logger.edu.internet2.middleware.psp = INFO

# Provisioning : vt-ldap
# log4j.logger.edu.vt.middleware.ldap = INFO

# Provisioning : Grouper plugin to Shibboleth attribute resolver
# log4j.logger.edu.internet2.middleware.grouper.shibboleth = INFO


# For more precise (or verbose) logging, enable one or more of the
# following logging directives.  To remove duplicate entries, just change the 
# level, and not where to send the logs
# http://robertmarkbramprogrammer.blogspot.com/2007/06/log4j-duplicate-lines-in-output.html

## Grouper Event Logging
## * Logs at _info_ only
log4j.logger.edu.internet2.middleware.grouper.log.EventLog        = INFO, grouper_event
log4j.logger.edu.internet2.middleware.grouper.RegistryInstall = INFO, grouper_event

## Grouper Error Logging
## * Logs at _warn_, _fatal_ and _error_ only (by default this is WARN due to internet2 below)
#log4j.logger.edu.internet2.middleware.grouper              = WARN, grouper_error

## Grouper Debug Logging
## * NOTE: There is currently VERY LITTLE (useful) information sent to this.
## * Logs at _info_ only currently
#log4j.logger.edu.internet2.middleware.grouper              = INFO, grouper_debug

## Grouper XML Export + Import Logging
## TODO Integrate with normal logging
log4j.logger.edu.internet2.middleware.grouper.xml.XmlExporter           = INFO, grouper_event
log4j.logger.edu.internet2.middleware.grouper.xml.XmlImporter           = INFO, grouper_event

## Grouper Benchmark Logging
log4j.logger.edu.internet2.middleware.grouper.bench                 = INFO, grouper_gb

## Grouper script to add missing group sets
log4j.logger.edu.internet2.middleware.grouper.misc.AddMissingGroupSets   = INFO, grouper_event

## Grouper Sync Point in Time Tables
log4j.logger.edu.internet2.middleware.grouper.misc.SyncPITTables   = INFO, grouper_event

## Grouper Sync Stem Set Table
log4j.logger.edu.internet2.middleware.grouper.misc.SyncStemSets      = INFO, grouper_event

## Grouper Migrate Legacy Attributes
log4j.logger.edu.internet2.middleware.grouper.misc.MigrateLegacyAttributes = INFO, grouper_event

### Subject API
#log4j.logger.edu.internet2.middleware.subject                       = ERROR, grouper_error
#log4j.logger.edu.internet2.middleware.subject.provider              = ERROR, grouper_error
### Hibernate 
#log4j.logger.org.hibernate                                          = ERROR, grouper_error
### ehcache
#log4j.logger.net.sf.ehcache                                         = ERROR, grouper_error
### Spring
#log4j.logger.org.springframework                                    = ERROR, grouper_error

## Grouper Stress Testing
log4j.logger.edu.internet2.middleware.grouper.stress                = INFO, grouper_debug


#######################################################
##Optional settings for debug logs
#######################################################

## Hooks debug info
#log4j.logger.edu.internet2.middleware.grouper.hooks.examples.GroupTypeTupleIncludeExcludeHook = DEBUG
#log4j.logger.edu.internet2.middleware.grouper.Group = DEBUG

#log4j.logger.edu.internet2.middleware.grouper.hooks.examples.GroupTypeSecurityHook = DEBUG


# added by grouper-installer
log4j.logger.org.apache.tools.ant = WARN