Merge pull request #2414 from jumpserver/dev

[Update] gunicorn的日志
pull/2486/head
老广 2019-02-19 20:06:37 +08:00 committed by GitHub
commit b7b6218306
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 25 additions and 10 deletions

View File

@ -69,13 +69,13 @@ class Signer(metaclass=Singleton):
self.secret_key = secret_key
def sign(self, value):
s = JSONWebSignatureSerializer(self.secret_key)
s = JSONWebSignatureSerializer(self.secret_key, algorithm_name='HS256')
return s.dumps(value).decode()
def unsign(self, value):
if value is None:
return value
s = JSONWebSignatureSerializer(self.secret_key)
s = JSONWebSignatureSerializer(self.secret_key, algorithm_name='HS256')
try:
return s.loads(value)
except BadSignature:

View File

@ -26,6 +26,7 @@ CONFIG = load_user_config()
LOG_DIR = os.path.join(PROJECT_DIR, 'logs')
JUMPSERVER_LOG_FILE = os.path.join(LOG_DIR, 'jumpserver.log')
ANSIBLE_LOG_FILE = os.path.join(LOG_DIR, 'ansible.log')
GUNICORN_LOG_FILE = os.path.join(LOG_DIR, 'gunicorn.log')
if not os.path.isdir(LOG_DIR):
os.makedirs(LOG_DIR)
@ -213,10 +214,21 @@ LOGGING = {
'ansible_logs': {
'encoding': 'utf8',
'level': 'DEBUG',
'class': 'logging.FileHandler',
'class': 'logging.handlers.RotatingFileHandler',
'formatter': 'main',
'maxBytes': 1024*1024*100,
'backupCount': 7,
'filename': ANSIBLE_LOG_FILE,
},
'gunicorn_logs': {
'encoding': 'utf8',
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'formatter': 'main',
'maxBytes': 1024*1024*100,
'backupCount': 2,
'filename': GUNICORN_LOG_FILE,
},
},
'loggers': {
'django': {
@ -254,6 +266,10 @@ LOGGING = {
'handlers': ['console', 'file'],
'level': "INFO",
},
'gunicorn': {
'handlers': ['console', 'gunicorn_logs'],
'level': LOG_LEVEL,
},
# 'django.db': {
# 'handlers': ['console', 'file'],
# 'level': 'DEBUG'
@ -428,7 +444,7 @@ CELERY_WORKER_LOG_FORMAT = '%(message)s'
CELERY_TASK_EAGER_PROPAGATES = True
CELERY_WORKER_REDIRECT_STDOUTS = True
CELERY_WORKER_REDIRECT_STDOUTS_LEVEL = "INFO"
# CELERY_WORKER_HIJACK_ROOT_LOGGER = False
# CELERY_WORKER_HIJACK_ROOT_LOGGER = True
CELERY_WORKER_MAX_TASKS_PER_CHILD = 40
# Cache use redis

View File

@ -5,7 +5,7 @@ import logging
from django.core.cache import cache
from celery import subtask
from celery.signals import (
worker_ready, worker_shutdown, after_setup_logger
worker_ready, worker_shutdown, after_setup_logger, setup_logging
)
from kombu.utils.encoding import safe_str
from django_celery_beat.models import PeriodicTask
@ -45,8 +45,8 @@ def after_app_shutdown_periodic_tasks(sender=None, **kwargs):
def add_celery_logger_handler(sender=None, logger=None, loglevel=None, format=None, **kwargs):
if not logger:
return
handler = CeleryTaskFileHandler()
handler.setLevel(loglevel)
task_handler = CeleryTaskFileHandler()
task_handler.setLevel(loglevel)
formatter = logging.Formatter(format)
handler.setFormatter(formatter)
logger.addHandler(handler)
task_handler.setFormatter(formatter)
logger.addHandler(task_handler)

1
jms
View File

@ -149,7 +149,6 @@ def start_gunicorn():
if DAEMON:
cmd.extend([
'--access-logfile', log_file,
'--daemon',
])
else: