diff --git a/functions b/functions index f996ba89ab..566c85c3b9 100644 --- a/functions +++ b/functions @@ -1695,6 +1695,25 @@ function policy_add() { } +# This function sets log formatting options for colorizing log +# output to stdout. It is meant to be called by lib modules. +# The last two parameters are optional and can be used to specify +# non-default value for project and user format variables. +# Defaults are respectively 'project_name' and 'user_name' +# +# setup_colorized_logging something.conf SOMESECTION +function setup_colorized_logging() { + local conf_file=$1 + local conf_section=$2 + local project_var=${3:-"project_name"} + local user_var=${4:-"user_name"} + # Add color to logging output + iniset $conf_file $conf_section logging_context_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [%(request_id)s %("$user_var")s %("$project_var")s%(color)s] %(instance)s%(color)s%(message)s" + iniset $conf_file $conf_section logging_default_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s" + iniset $conf_file $conf_section logging_debug_format_suffix "from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d" + iniset $conf_file $conf_section logging_exception_prefix "%(color)s%(asctime)s.%(msecs)03d TRACE %(name)s %(instance)s" +} + # Restore xtrace $XTRACE diff --git a/lib/cinder b/lib/cinder index 7f1544b444..bec65ed234 100644 --- a/lib/cinder +++ b/lib/cinder @@ -255,12 +255,9 @@ function configure_cinder() { iniset $CINDER_CONF DEFAULT volume_clear none fi + # Format logging if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then - # Add color to logging output - iniset $CINDER_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [%(request_id)s %(user_id)s %(project_id)s%(color)s] %(instance)s%(color)s%(message)s" - iniset $CINDER_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s" - iniset $CINDER_CONF DEFAULT logging_debug_format_suffix "from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d" - iniset $CINDER_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)03d TRACE %(name)s %(instance)s" + setup_colorized_logging $CINDER_CONF DEFAULT "project_id" "user_id" fi if [ "$CINDER_DRIVER" == "XenAPINFS" ]; then diff --git a/lib/heat b/lib/heat index afa0eeb765..ac769162db 100644 --- a/lib/heat +++ b/lib/heat @@ -1,4 +1,4 @@ -# lib/heat +etup lib/heat # Install and start **Heat** service # To enable, add the following to localrc @@ -86,10 +86,7 @@ function configure_heat() { iniset $HEAT_CONF DEFAULT use_syslog $SYSLOG if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then # Add color to logging output - iniset $HEAT_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s%(color)s] %(instance)s%(color)s%(message)s" - iniset $HEAT_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s" - iniset $HEAT_CONF DEFAULT logging_debug_format_suffix "from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d" - iniset $HEAT_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)03d TRACE %(name)s %(instance)s" + setup_colorized_logging $HEAT_CONF DEFAULT fi # keystone authtoken diff --git a/lib/neutron b/lib/neutron index 5664ff2cc5..4a3d1b06a6 100644 --- a/lib/neutron +++ b/lib/neutron @@ -534,6 +534,11 @@ function _configure_neutron_common() { iniset $NEUTRON_CONF quotas quota_security_group_rule -1 fi + # Format logging + if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then + setup_colorized_logging $NEUTRON_CONF DEFAULT + fi + _neutron_setup_rootwrap } diff --git a/lib/nova b/lib/nova index 9b766a9114..568f67d445 100644 --- a/lib/nova +++ b/lib/nova @@ -499,12 +499,9 @@ function create_nova_conf() { if [ "$API_RATE_LIMIT" != "True" ]; then iniset $NOVA_CONF DEFAULT api_rate_limit "False" fi + # Format logging if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then - # Add color to logging output - iniset $NOVA_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s%(color)s] %(instance)s%(color)s%(message)s" - iniset $NOVA_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s" - iniset $NOVA_CONF DEFAULT logging_debug_format_suffix "from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d" - iniset $NOVA_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)03d TRACE %(name)s %(instance)s" + setup_colorized_logging $NOVA_CONF DEFAULT else # Show user_name and project_name instead of user_id and project_id iniset $NOVA_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s] %(instance)s%(message)s"