mirror of https://github.com/jumpserver/jumpserver
perf: 修改 logging 避免冲突
parent
b2bff22387
commit
270ed5e2f8
|
@ -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)
|
||||||
|
|
||||||
|
|
|
@ -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):
|
||||||
|
|
|
@ -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(
|
||||||
|
|
|
@ -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()
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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'
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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):
|
||||||
|
|
|
@ -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):
|
||||||
|
|
|
@ -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
|
||||||
|
|
Loading…
Reference in New Issue