diff --git a/modules/django.py b/modules/django.py index cf2cae0..682de8d 100644 --- a/modules/django.py +++ b/modules/django.py @@ -599,8 +599,15 @@ def generate_scripts(template_name, make_copy=False): configuration.project.django.allowedhosts # convenience variable naming, otherwise it's too long to deal with + file_log_handler = configuration.logging.django.handlers.file_log file_debug_handler = configuration.logging.django.handlers.file_debug + context['file_log_handler__name_project'] = \ + file_log_handler.name.project + + context['file_log_handler__path_project'] = \ + file_log_handler.path.project + context['file_debug_handler__name_project'] = \ file_debug_handler.name.project diff --git a/share/templates/conf/django/files/local.generated.jinja2 b/share/templates/conf/django/files/local.generated.jinja2 index 36ffd4d..78eaa7d 100644 --- a/share/templates/conf/django/files/local.generated.jinja2 +++ b/share/templates/conf/django/files/local.generated.jinja2 @@ -73,28 +73,43 @@ ALLOWED_HOSTS = {{ project_django_allowedhosts }} LOGGING = { 'version': 1, + 'disable_existing_loggers': False, + 'formatters': { 'verbose': { 'format': "%(levelname)s %(asctime)s %(module)s %(process)d" " %(thread)d %(message)s" }, 'simple': { - 'format': '%(levelname)s %(message)s' + 'format': '%(levelname)s:%(module)s - %(message)s' }, 'code': { - 'format': "%(module)s:%(funcName)s - %(message)s" + 'format': "%(module)s:%(funcName)s:%(lineno)d - %(message)s" + }, + + 'code.file': { + 'format': "%(levelname)s %(module)s:%(funcName)s - %(message)s\n" }, }, + 'handlers': { + '{{ file_log_handler__name_project }}': { + 'class': 'logging.FileHandler', + + 'filename': + '{{file_log_handler__path_project}}', + + 'formatter': 'code.file' + }, + '{{ file_debug_handler__name_project }}': { - 'level': 'DEBUG', 'class': 'logging.FileHandler', 'filename': '{{file_debug_handler__path_project}}', - 'formatter': 'code' + 'formatter': 'code.file' }, '{{ file_debug_handler__name_server }}': { @@ -104,29 +119,49 @@ LOGGING = { 'filename': '{{file_debug_handler__path_server}}', - 'formatter': 'code' + 'formatter': 'code.file' }, 'console': { - 'level': 'DEBUG', 'class': 'logging.StreamHandler', 'formatter': 'simple' }, + + 'console.code': { + 'class': 'logging.StreamHandler', + 'formatter': 'code', + }, + 'null': { - 'level': 'DEBUG', 'class': 'logging.NullHandler', } }, + + 'root': { + # automatically set to level WARNING + + 'handlers': ['console.code', 'file.log', 'server.file.log'], + 'propagate': True, + }, + 'loggers': { - 'django.debug': { - # use the console for logging + 'django.info': { 'handlers': [ 'console', + '{{ file_log_handler__name_project }}' + ], + 'level': 'INFO', + 'propagate': False, + }, + + 'django.debug': { + 'handlers': + [ + 'console.code', '{{ file_debug_handler__name_project }}', '{{ file_debug_handler__name_server }}', ], - 'level': 'DEBUG', 'propagate': True, }, diff --git a/share/templates/conf/gunicorn/files/local.generated.jinja2 b/share/templates/conf/gunicorn/files/local.generated.jinja2 index 36ffd4d..78eaa7d 100644 --- a/share/templates/conf/gunicorn/files/local.generated.jinja2 +++ b/share/templates/conf/gunicorn/files/local.generated.jinja2 @@ -73,28 +73,43 @@ ALLOWED_HOSTS = {{ project_django_allowedhosts }} LOGGING = { 'version': 1, + 'disable_existing_loggers': False, + 'formatters': { 'verbose': { 'format': "%(levelname)s %(asctime)s %(module)s %(process)d" " %(thread)d %(message)s" }, 'simple': { - 'format': '%(levelname)s %(message)s' + 'format': '%(levelname)s:%(module)s - %(message)s' }, 'code': { - 'format': "%(module)s:%(funcName)s - %(message)s" + 'format': "%(module)s:%(funcName)s:%(lineno)d - %(message)s" + }, + + 'code.file': { + 'format': "%(levelname)s %(module)s:%(funcName)s - %(message)s\n" }, }, + 'handlers': { + '{{ file_log_handler__name_project }}': { + 'class': 'logging.FileHandler', + + 'filename': + '{{file_log_handler__path_project}}', + + 'formatter': 'code.file' + }, + '{{ file_debug_handler__name_project }}': { - 'level': 'DEBUG', 'class': 'logging.FileHandler', 'filename': '{{file_debug_handler__path_project}}', - 'formatter': 'code' + 'formatter': 'code.file' }, '{{ file_debug_handler__name_server }}': { @@ -104,29 +119,49 @@ LOGGING = { 'filename': '{{file_debug_handler__path_server}}', - 'formatter': 'code' + 'formatter': 'code.file' }, 'console': { - 'level': 'DEBUG', 'class': 'logging.StreamHandler', 'formatter': 'simple' }, + + 'console.code': { + 'class': 'logging.StreamHandler', + 'formatter': 'code', + }, + 'null': { - 'level': 'DEBUG', 'class': 'logging.NullHandler', } }, + + 'root': { + # automatically set to level WARNING + + 'handlers': ['console.code', 'file.log', 'server.file.log'], + 'propagate': True, + }, + 'loggers': { - 'django.debug': { - # use the console for logging + 'django.info': { 'handlers': [ 'console', + '{{ file_log_handler__name_project }}' + ], + 'level': 'INFO', + 'propagate': False, + }, + + 'django.debug': { + 'handlers': + [ + 'console.code', '{{ file_debug_handler__name_project }}', '{{ file_debug_handler__name_server }}', ], - 'level': 'DEBUG', 'propagate': True, }, diff --git a/share/templates/meta/layout.yml b/share/templates/meta/layout.yml index f12beba..7d69a50 100644 --- a/share/templates/meta/layout.yml +++ b/share/templates/meta/layout.yml @@ -41,9 +41,13 @@ paths: logging: django: handlers: + file_log: + name: 'file.log' + file: 'django.log' + file_debug: - name: 'file.debug' - file: 'django.debug' + name: 'file.log.debug' + file: 'django.log.debug' modules: