Proposition for separate config for loggers.

Sometimes we want that kafka for example should log in debug level,
sql in info level and rest code in warn.

Change-Id: Iac7f29b3909354f75e5d3264ef2c987c9f3e2aec
This commit is contained in:
Jakub Wachowski 2016-09-21 08:28:49 +02:00 committed by Tomasz Trębski
parent 968f41fa86
commit 441a65dff8
6 changed files with 106 additions and 15 deletions

View File

@ -1,9 +1,5 @@
[DEFAULT]
# logging, make sure that the user under whom the server runs has permission
# to write to the directory.
log_file = monasca-api.log
log_dir = /var/log/monasca/api
debug=True
log_config_append=/etc/monasca/api-logging.conf
# Identifies the region that the Monasca API is running in.
region = useast

View File

@ -20,8 +20,3 @@ host = 127.0.0.1
port = 8070
workers = 1
proc_name = monasca_api
[logger_sqlalchemy]
level = DEBUG
handlers =
qualname = sqlalchemy.engine

View File

@ -0,0 +1,46 @@
[loggers]
keys = root, sqlalchemy, kafka
[handlers]
keys = console, file
[formatters]
keys = generic
[logger_root]
level = DEBUG
formatter = default
handlers = console, file
[logger_sqlalchemy]
qualname = sqlalchemy.engine
# "level = INFO" logs SQL queries.
# "level = DEBUG" logs SQL queries and results.
# "level = WARN" logs neither. (Recommended for production systems.)
level = DEBUG
formatter = default
handlers = console, file
propagate=0
[logger_kafka]
qualname = kafka
level = DEBUG
formatter = default
handlers = console, file
propagate = 0
[handler_console]
class = logging.StreamHandler
args = (sys.stderr,)
level = DEBUG
formatter = generic
[handler_file]
class = logging.handlers.RotatingFileHandler
level = DEBUG
formatter = generic
# store up to 5*100MB of logs
args = ('/var/log/monasca/api/monasca-api.log', 'a', 104857600, 5)
[formatter_generic]
format = %(asctime)s %(levelname)s [%(name)s][%(threadName)s] %(message)s

View File

@ -1025,6 +1025,14 @@ function install_monasca_api_python {
sudo ln -sf /etc/monasca/api-config.ini /etc/api-config.ini
sudo cp -f "${MONASCA_BASE}"/monasca-api/devstack/files/monasca-api/python/api-logging.conf /etc/monasca/api-logging.conf
sudo chown mon-api:root /etc/monasca/api-logging.conf
sudo chmod 0660 /etc/monasca/api-logging.conf
sudo ln -sf /etc/monasca/api-logging.conf /etc/api-logging.conf
sudo start monasca-api || sudo restart monasca-api
}
@ -1057,6 +1065,10 @@ function clean_monasca_api_python {
sudo rm /etc/monasca/api-config.conf
sudo rm /etc/api-logging.conf
sudo rm /etc/monasca/api-logging.conf
sudo rm /etc/api-config.ini
sudo rm /etc/monasca/api-config.ini

View File

@ -1,9 +1,5 @@
[DEFAULT]
# logging, make sure that the user under whom the server runs has permission
# to write to the directory.
log_file = monasca-api.log
log_dir = .
debug=True
log_config_append=/etc/monasca/api-logging.conf
# Identifies the region that the Monasca API is running in.
region = useast

46
etc/api-logging.conf Normal file
View File

@ -0,0 +1,46 @@
[loggers]
keys = root, sqlalchemy, kafka
[handlers]
keys = console, file
[formatters]
keys = generic
[logger_root]
level = DEBUG
formatter = default
handlers = console, file
[logger_sqlalchemy]
qualname = sqlalchemy.engine
# "level = INFO" logs SQL queries.
# "level = DEBUG" logs SQL queries and results.
# "level = WARN" logs neither. (Recommended for production systems.)
level = DEBUG
formatter = default
handlers = console, file
propagate=0
[logger_kafka]
qualname = kafka
level = DEBUG
formatter = default
handlers = console, file
propagate = 0
[handler_console]
class = logging.StreamHandler
args = (sys.stderr,)
level = DEBUG
formatter = generic
[handler_file]
class = logging.handlers.RotatingFileHandler
level = DEBUG
formatter = generic
# store up to 5*100MB of logs
args = ('/var/log/monasca/api/monasca-api.log', 'a', 104857600, 5)
[formatter_generic]
format = %(asctime)s %(levelname)s [%(name)s][%(threadName)s] %(message)s