# supports no whitespace !!!

[DEFAULT]
logdir=/tmp
logfile=python
logging_server=localhost

[loggers]
keys=root,module,class,data,class_1,data_1,of_testmylogger

[handlers]
keys=root,module,class,data,class_1,data_1

[formatters]
keys=root,module,class,data

############################################################
# very app specific stuff goes here
[logger_of_testmylogger]
level=DEBUG
handlers=module
qualname=of_testmylogger
propagate=0

#############################################################
# generic stuff from here

###### loggers #########################
[logger_root]
level=NOTSET
handlers=root
qualname=root

[logger_module]
level=DEBUG
handlers=module
qualname=module
propagate=0

[logger_class]
level=DEBUG
handlers=class,class_1
propagate=0
qualname=class

[logger_data]
level=DEBUG
handlers=data
propagate=0
qualname=data

[logger_class_1]
level=DEBUG
handlers=class_1
propagate=0
qualname=class.1.

[logger_data_1]
level=DEBUG
handlers=data_1
propagate=0
qualname=data.1.

##### handlers ###########################
[handler_server]
class=handlers.SocketHandler
level=DEBUG
formatter=root
args=("%(logging_server)s", handlers.DEFAULT_TCP_LOGGING_PORT)

[handler_stdout]
class=StreamHandler
level=ERROR
formatter=root
args=(sys.stdout,)

[handler_root]
class=FileHandler
level=NOTSET
formatter=root
args=('%(logdir)s/%(logfile)s.log','a')

[handler_module]
class=FileHandler
level=NOTSET
formatter=module
args=('%(logdir)s/%(logfile)s.log','a')

[handler_class]
class=FileHandler
level=NOTSET
formatter=class
args=('%(logdir)s/%(logfile)s.log','a')

[handler_class_1]
class=FileHandler
level=NOTSET
formatter=class
args=('%(logdir)s/%(logfile)s_1.log','a')

[handler_data]
class=FileHandler
level=NOTSET
formatter=data
args=('%(logdir)s/%(logfile)s.log','a')

[handler_data_1]
class=FileHandler
level=NOTSET
formatter=data
args=('%(logdir)s/%(logfile)s_1.log','a')

######### formatters ##################################

[formatter_root]
format=%(levelname)s %(name)s %(message)s
datefmt=%S
class = of.logger.RootFormatter

[formatter_module]
format=%(levelname)s %(name)s %(message)s
datefmt=%S
class = of.logger.ModuleFormatter

[formatter_class]
format=%(levelname)s %(name)s %(message)s
datefmt=%S
class = of.logger.ClassFormatter

[formatter_data]
format=%(levelname)s   %(lineno)s: %(funcName)s %(message)s
datefmt=%S
class = of.logger.DataFormatter

