perf: 修改 logging 避免冲突

pull/10811/head
ibuler 2023-06-21 17:42:25 +08:00 committed by 老广
parent b2bff22387
commit 270ed5e2f8
10 changed files with 33 additions and 32 deletions

View File

@ -1,11 +1,11 @@
from rest_framework.mixins import ListModelMixin
from rest_framework.decorators import action from rest_framework.decorators import action
from rest_framework.mixins import ListModelMixin
from rest_framework.response import Response from rest_framework.response import Response
from assets.const import AllTypes
from assets.serializers import CategorySerializer, TypeSerializer
from common.api import JMSGenericViewSet from common.api import JMSGenericViewSet
from common.permissions import IsValidUser from common.permissions import IsValidUser
from assets.serializers import CategorySerializer, TypeSerializer
from assets.const import AllTypes
__all__ = ['CategoryViewSet'] __all__ = ['CategoryViewSet']
@ -32,4 +32,3 @@ class CategoryViewSet(ListModelMixin, JMSGenericViewSet):
tp = request.query_params.get('type') tp = request.query_params.get('type')
constraints = AllTypes.get_constraints(category, tp) constraints = AllTypes.get_constraints(category, tp)
return Response(constraints) return Response(constraints)

View File

@ -7,12 +7,9 @@ from __future__ import unicode_literals
import uuid import uuid
from django.db import models from django.db import models
import logging
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
__all__ = ['AssetGroup'] __all__ = ['AssetGroup']
logger = logging.getLogger(__name__)
class AssetGroup(models.Model): class AssetGroup(models.Model):

View File

@ -10,6 +10,8 @@ from common.drf.filters import IDSpmFilter, CustomFilter, IDInFilter
__all__ = ['ExtraFilterFieldsMixin', 'OrderingFielderFieldsMixin'] __all__ = ['ExtraFilterFieldsMixin', 'OrderingFielderFieldsMixin']
logger = logging.getLogger('jumpserver.common')
class ExtraFilterFieldsMixin: class ExtraFilterFieldsMixin:
""" """
@ -54,7 +56,9 @@ class OrderingFielderFieldsMixin:
try: try:
valid_fields = self.get_valid_ordering_fields() valid_fields = self.get_valid_ordering_fields()
except Exception as e: except Exception as e:
logging.debug('get_valid_ordering_fields error: %s' % e) logger.debug('get_valid_ordering_fields error: %s' % e)
# 这里千万不要这么用,会让 logging 重复,至于为什么,我也不知道
# logging.debug('get_valid_ordering_fields error: %s' % e)
valid_fields = [] valid_fields = []
fields = list(chain( fields = list(chain(

View File

@ -14,6 +14,8 @@ from rest_framework.serializers import ValidationError
from common import const from common import const
logger = logging.getLogger('jumpserver.common')
__all__ = [ __all__ = [
"DatetimeRangeFilter", "IDSpmFilter", "DatetimeRangeFilter", "IDSpmFilter",
'IDInFilter', "CustomFilter", 'IDInFilter', "CustomFilter",
@ -70,7 +72,7 @@ class DatetimeRangeFilter(filters.BaseFilterBackend):
] ]
``` ```
""".format(view.name) """.format(view.name)
logging.error(msg) logger.error(msg)
raise ImproperlyConfigured(msg) raise ImproperlyConfigured(msg)
def filter_queryset(self, request, queryset, view): def filter_queryset(self, request, queryset, view):
@ -213,6 +215,6 @@ class AttrRulesFilterBackend(filters.BaseFilterBackend):
except Exception: except Exception:
raise ValidationError({'attr_rules': 'attr_rules should be json'}) raise ValidationError({'attr_rules': 'attr_rules should be json'})
logging.debug('attr_rules: %s', attr_rules) logger.debug('attr_rules: %s', attr_rules)
q = RelatedManager.get_to_filter_q(attr_rules, queryset.model) q = RelatedManager.get_to_filter_q(attr_rules, queryset.model)
return queryset.filter(q).distinct() return queryset.filter(q).distinct()

View File

@ -1,6 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
import logging
import os import os
import re import re
from collections import defaultdict from collections import defaultdict
@ -14,9 +13,10 @@ from django.dispatch import receiver
from jumpserver.utils import get_current_request from jumpserver.utils import get_current_request
from .local import thread_local from .local import thread_local
from .signals import django_ready from .signals import django_ready
from .utils import get_logger
pattern = re.compile(r'FROM `(\w+)`') pattern = re.compile(r'FROM `(\w+)`')
logger = logging.getLogger("jumpserver.common") logger = get_logger(__name__)
class Counter: class Counter:
@ -129,7 +129,6 @@ else:
@receiver(django_ready) @receiver(django_ready)
def check_migrations_file_prefix_conflict(*args, **kwargs): def check_migrations_file_prefix_conflict(*args, **kwargs):
if not settings.DEBUG_DEV: if not settings.DEBUG_DEV:
return return
@ -172,7 +171,7 @@ def check_migrations_file_prefix_conflict(*args, **kwargs):
if not conflict_count: if not conflict_count:
return return
print('='*80) print('=' * 80)
for conflict_file in conflict_files: for conflict_file in conflict_files:
msg_dir = '{:<15}'.format(conflict_file[0]) msg_dir = '{:<15}'.format(conflict_file[0])
msg_split = '=> ' msg_split = '=> '
@ -181,4 +180,4 @@ def check_migrations_file_prefix_conflict(*args, **kwargs):
msg_right2 = ' ' * len(msg_left) + msg_split + conflict_file[2] msg_right2 = ' ' * len(msg_left) + msg_split + conflict_file[2]
print(f'{msg_left}{msg_right1}\n{msg_right2}\n') print(f'{msg_left}{msg_right1}\n{msg_right2}\n')
print('='*80) print('=' * 80)

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
import os import os
from ..const import PROJECT_DIR, CONFIG from ..const import PROJECT_DIR, CONFIG
LOG_DIR = os.path.join(PROJECT_DIR, 'logs') LOG_DIR = os.path.join(PROJECT_DIR, 'logs')
@ -105,7 +106,7 @@ LOGGING = {
'propagate': False, 'propagate': False,
}, },
'jumpserver': { 'jumpserver': {
'handlers': ['console', 'file'], 'handlers': ['console'],
'level': LOG_LEVEL, 'level': LOG_LEVEL,
}, },
'drf_exception': { 'drf_exception': {
@ -132,7 +133,6 @@ LOGGING = {
'handlers': ['null'], 'handlers': ['null'],
'level': 'ERROR' 'level': 'ERROR'
} }
} }
} }

View File

@ -2,11 +2,11 @@
# #
import logging import logging
from django.core.cache import cache
from celery import subtask from celery import subtask
from celery.signals import ( from celery.signals import (
worker_ready, worker_shutdown, after_setup_logger worker_ready, worker_shutdown, after_setup_logger
) )
from django.core.cache import cache
from django_celery_beat.models import PeriodicTask from django_celery_beat.models import PeriodicTask
from common.utils import get_logger from common.utils import get_logger
@ -46,6 +46,6 @@ def add_celery_logger_handler(sender=None, logger=None, loglevel=None, format=No
return return
task_handler = CeleryThreadTaskFileHandler() task_handler = CeleryThreadTaskFileHandler()
task_handler.setLevel(loglevel) task_handler.setLevel(loglevel)
formatter = logging.Formatter(format) formatter = logging.Formatter('abc: ' + format)
task_handler.setFormatter(formatter) task_handler.setFormatter(formatter)
logger.addHandler(task_handler) logger.addHandler(task_handler)

View File

@ -5,20 +5,20 @@ from django.db.models import Q
from django.utils import timezone from django.utils import timezone
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from users.models import User from accounts.const import AliasAccount
from assets.models import Asset
from accounts.models import Account from accounts.models import Account
from orgs.mixins.models import JMSOrgBaseModel from assets.models import Asset
from orgs.mixins.models import OrgManager
from common.utils import date_expired_default from common.utils import date_expired_default
from common.utils.timezone import local_now from common.utils.timezone import local_now
from orgs.mixins.models import JMSOrgBaseModel
from orgs.mixins.models import OrgManager
from perms.const import ActionChoices from perms.const import ActionChoices
from accounts.const import AliasAccount from users.models import User
__all__ = ['AssetPermission', 'ActionChoices', 'AssetPermissionQuerySet'] __all__ = ['AssetPermission', 'ActionChoices', 'AssetPermissionQuerySet']
# 使用场景 # 使用场景
logger = logging.getLogger(__name__) logger = logging.getLogger('jumpserver.permissions')
class AssetPermissionQuerySet(models.QuerySet): class AssetPermissionQuerySet(models.QuerySet):

View File

@ -1,20 +1,20 @@
# ~*~ coding: utf-8 ~*~ # ~*~ coding: utf-8 ~*~
# #
import os
import re
import pyotp
import base64 import base64
import logging import logging
import os
import re
import time import time
import pyotp
from django.conf import settings from django.conf import settings
from django.core.cache import cache from django.core.cache import cache
from common.tasks import send_mail_async from common.tasks import send_mail_async
from common.utils import reverse, get_object_or_none, ip, pretty_string from common.utils import reverse, get_object_or_none, ip
from .models import User from .models import User
logger = logging.getLogger('jumpserver') logger = logging.getLogger('jumpserver.users')
def send_user_created_mail(user): def send_user_created_mail(user):

View File

@ -16,7 +16,7 @@ ecdsa==0.13.3
enum-compat==0.0.2 enum-compat==0.0.2
ephem==3.7.6.0 ephem==3.7.6.0
future==0.16.0 future==0.16.0
idna==2.6 idna==2.8
itypes==1.2.0 itypes==1.2.0
Jinja2==3.1.2 Jinja2==3.1.2
jmespath==1.0.1 jmespath==1.0.1
@ -37,7 +37,7 @@ PyNaCl==1.5.0
python-dateutil==2.8.2 python-dateutil==2.8.2
PyYAML==6.0 PyYAML==6.0
requests==2.31.0 requests==2.31.0
jms-storage==0.0.46 jms-storage==0.0.47
simplejson==3.17.6 simplejson==3.17.6
six==1.16.0 six==1.16.0
sshtunnel==0.4.0 sshtunnel==0.4.0