## Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0
status = error
name = PropertiesConfig
filters = threshold

filter.threshold.type = ThresholdFilter
filter.threshold.level = ALL

appender.console.type = Console
appender.console.name = OUT
appender.console.target = SYSTEM_ERR
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{HH:mm:ss} %-5p %-15c{1} :: %m%n
#appender.console.layout.pattern = [%d{yyyy-MM-dd HH:mm:ss}] %-5p %-15c{1} :: %m%n

## appender.file.type = File
## appender.file.name = OUT
## appender.file.fileName=log.fuseki
## appender.file.layout.type=PatternLayout
## appender.file.layout.pattern = [%d{yyyy-MM-dd HH:mm:ss}] %-5p %-15c{1} :: %m%n

rootLogger.level                  = INFO
rootLogger.appenderRef.stdout.ref = OUT

logger.jena.name  = org.apache.jena
logger.jena.level = INFO

logger.arq-exec.name  = org.apache.jena.arq.exec
logger.arq-exec.level = INFO

logger.arq-info.name  = org.apache.jena.arq.exec
logger.arq-info.level = INFO

logger.riot.name  = org.apache.jena.riot
logger.riot.level = INFO

logger.fuseki.name  = org.apache.jena.fuseki
logger.fuseki.level = INFO

logger.fuseki-fuseki.name  = org.apache.jena.fuseki.Fuseki
logger.fuseki-fuseki.level = INFO

logger.fuseki-server.name  = org.apache.jena.fuseki.Server
logger.fuseki-server.level = INFO

logger.fuseki-admin.name  = org.apache.jena.fuseki.Admin
logger.fuseki-admin.level = INFO

logger.jetty.name  = org.eclipse.jetty
logger.jetty.level = WARN

# May be useful to turn up to DEBUG if debugging HTTP communication issues
logger.apache-http.name   = org.apache.http
logger.apache-http.level  = WARN

logger.shiro.name = org.apache.shiro
logger.shiro.level = WARN
# Hide bug in Shiro 1.5.0
logger.shiro-realm.name = org.apache.shiro.realm.text.IniRealm
logger.shiro-realm.level = ERROR

# This goes out in NCSA format
appender.plain.type = Console
appender.plain.name = PLAIN
appender.plain.layout.type = PatternLayout
appender.plain.layout.pattern = %m%n

logger.request-log.name                   = org.apache.jena.fuseki.Request
logger.request-log.additivity             = false
logger.request-log.level                  = OFF
logger.request-log.appenderRef.plain.ref  = PLAIN
