Files
edx-platform/lms/envs/docker-production.py

84 lines
2.5 KiB
Python

"""
Specific overrides to the base prod settings for a docker production deployment.
"""
import platform
from .production import * # pylint: disable=wildcard-import, unused-wildcard-import
def get_docker_logger_config(log_dir='/var/tmp',
logging_env="no_env",
edx_filename="edx.log",
dev_env=False,
debug=False,
service_variant='lms'):
"""
Return the appropriate logging config dictionary. You should assign the
result of this to the LOGGING var in your settings.
"""
hostname = platform.node().split(".")[0]
syslog_format = (
"[service_variant={service_variant}]"
"[%(name)s][env:{logging_env}] %(levelname)s "
"[{hostname} %(process)d] [%(filename)s:%(lineno)d] "
"- %(message)s"
).format(
service_variant=service_variant,
logging_env=logging_env, hostname=hostname
)
handlers = ['console']
logger_config = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'standard': {
'format': '%(asctime)s %(levelname)s %(process)d '
'[%(name)s] %(filename)s:%(lineno)d - %(message)s',
},
'syslog_format': {'format': syslog_format},
'raw': {'format': '%(message)s'},
},
'handlers': {
'console': {
'level': 'DEBUG' if debug else 'INFO',
'class': 'logging.StreamHandler',
'formatter': 'standard',
'stream': sys.stdout,
},
},
'loggers': {
'django': {
'handlers': handlers,
'propagate': True,
'level': 'INFO'
},
'requests': {
'handlers': handlers,
'propagate': True,
'level': 'WARNING'
},
'factory': {
'handlers': handlers,
'propagate': True,
'level': 'WARNING'
},
'django.request': {
'handlers': handlers,
'propagate': True,
'level': 'WARNING'
},
'': {
'handlers': handlers,
'level': 'DEBUG',
'propagate': False
},
}
}
return logger_config
LOGGING = get_docker_logger_config()