Logging¶
Logging configuration is built into guillotina
’s configuration syntax.
If the logging
setting is provided, it is simply passed to Python’s dict
config
method: https://docs.python.org/3.6/library/logging.config.html#logging-config-dictschema
Example guillotina configuration¶
To log errors for guillotina for example:
{
"logging": {
"version": 1,
"formatters": {
"brief": {
"format": "%(message)s"
},
"default": {
"format": "%(asctime)s %(levelname)-8s %(name)-15s %(message)s",
"datefmt": "%Y-%m-%d %H:%M:%S"
}
},
"handlers": {
"file": {
"class": "logging.handlers.RotatingFileHandler",
"formatter": "default",
"filename": "logconfig.log",
"maxBytes": 1024,
"backupCount": 3
}
},
"loggers": {
"guillotina": {
"level": "DEBUG",
"handlers": ["file"],
"propagate": 0
}
}
}
}
Request logging example¶
{
"logging": {
"version": 1,
"formatters": {
"default": {
"format": "%(message)s"
}
},
"handlers": {
"file": {
"class": "logging.handlers.RotatingFileHandler",
"formatter": "default",
"filename": "access.log",
"maxBytes": 1024,
"backupCount": 3
}
},
"loggers": {
"guillotina": {
"level": "INFO",
"handlers": ["file"],
"propagate": 0
}
}
}
}
Available Loggers¶
guillotina