Features: None;

Fixes: 1) Update logging configuration to align all logger instances to use "django" instead of "evibes"; 2) Remove unused logging configuration for "django.request";

Extra: 1) Add detailed error logging in GraphQL execution to include exception messages.
This commit is contained in:
Egor Pavlovich Gorbunov 2025-07-06 17:22:14 +03:00
parent bb82f10cd6
commit af127045ae
21 changed files with 21 additions and 28 deletions

View file

@ -1,3 +1,3 @@
import logging import logging
logger = logging.getLogger("evibes") logger = logging.getLogger("django")

View file

@ -32,7 +32,7 @@ from django_filters import (
from core.elasticsearch import process_query from core.elasticsearch import process_query
from core.models import Address, Brand, Category, Feedback, Order, Product, Wishlist from core.models import Address, Brand, Category, Feedback, Order, Product, Wishlist
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class CaseInsensitiveListFilter(BaseInFilter, CharFilter): class CaseInsensitiveListFilter(BaseInFilter, CharFilter):

View file

@ -28,7 +28,7 @@ from core.utils.messages import permission_denied_message
from core.utils.nominatim import fetch_address_suggestions from core.utils.nominatim import fetch_address_suggestions
from payments.graphene.object_types import TransactionType from payments.graphene.object_types import TransactionType
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class CacheOperator(BaseMutation): class CacheOperator(BaseMutation):

View file

@ -97,7 +97,7 @@ from vibes_auth.graphene.mutations import (
from vibes_auth.graphene.object_types import UserType from vibes_auth.graphene.object_types import UserType
from vibes_auth.models import User from vibes_auth.models import User
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class Query(ObjectType): class Query(ObjectType):

View file

@ -5,7 +5,7 @@ from django.core.management.base import BaseCommand
from core.models import Product from core.models import Product
from core.vendors import AbstractVendor from core.vendors import AbstractVendor
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class Command(BaseCommand): class Command(BaseCommand):

View file

@ -5,7 +5,7 @@ from constance import config
from django.contrib.gis.geos import Point from django.contrib.gis.geos import Point
from django.db import models from django.db import models
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class AddressManager(models.Manager): class AddressManager(models.Manager):

View file

@ -56,7 +56,7 @@ from core.validators import validate_category_image_dimensions
from evibes.settings import CURRENCY_CODE from evibes.settings import CURRENCY_CODE
from payments.models import Transaction from payments.models import Transaction
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class AttributeGroup(ExportModelOperationsMixin("attribute_group"), NiceModel): # type: ignore [misc, django-manager-missing] class AttributeGroup(ExportModelOperationsMixin("attribute_group"), NiceModel): # type: ignore [misc, django-manager-missing]

View file

@ -32,7 +32,7 @@ from core.serializers.simple import CategorySimpleSerializer, ProductSimpleSeria
from core.serializers.utility import AddressSerializer from core.serializers.utility import AddressSerializer
from vibes_auth.models import User from vibes_auth.models import User
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class AttributeGroupDetailSerializer(ModelSerializer): class AttributeGroupDetailSerializer(ModelSerializer):

View file

@ -19,7 +19,7 @@ from core.utils.emailing import send_order_created_email, send_order_finished_em
from evibes.utils.misc import create_object from evibes.utils.misc import create_object
from vibes_auth.models import User from vibes_auth.models import User
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
@receiver(post_save, sender=User) @receiver(post_save, sender=User)

View file

@ -10,7 +10,7 @@ from django.utils.crypto import get_random_string
from evibes.settings import DEBUG, EXPOSABLE_KEYS, LANGUAGE_CODE from evibes.settings import DEBUG, EXPOSABLE_KEYS, LANGUAGE_CODE
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
def get_random_code() -> str: def get_random_code() -> str:

View file

@ -9,7 +9,7 @@ from django.utils.translation import gettext_lazy as _
from evibes.settings import UNSAFE_CACHE_KEYS from evibes.settings import UNSAFE_CACHE_KEYS
from vibes_auth.models import User from vibes_auth.models import User
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
def is_safe_cache_key(key: str): def is_safe_cache_key(key: str):

View file

@ -4,7 +4,7 @@ from django.db.models.constants import LOOKUP_SEP
from django_extensions.db.fields import AutoSlugField from django_extensions.db.fields import AutoSlugField
from slugify import slugify from slugify import slugify
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
def unicode_slugify_function(content): def unicode_slugify_function(content):

View file

@ -107,7 +107,7 @@ from core.utils.nominatim import fetch_address_suggestions
from evibes.settings import DEBUG from evibes.settings import DEBUG
from payments.serializers import TransactionProcessSerializer from payments.serializers import TransactionProcessSerializer
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class EvibesViewSet(ModelViewSet): class EvibesViewSet(ModelViewSet):

View file

@ -16,7 +16,7 @@ from sentry_sdk import capture_exception
from evibes.settings import DEBUG from evibes.settings import DEBUG
logger = logging.getLogger("django.request") logger = logging.getLogger("django")
class CustomCommonMiddleware(CommonMiddleware): class CustomCommonMiddleware(CommonMiddleware):
@ -101,6 +101,7 @@ class GrapheneLoggingErrorsDebugMiddleware:
except Exception as e: except Exception as e:
logger.error("Error occurred in GraphQL execution:", exc_info=True) logger.error("Error occurred in GraphQL execution:", exc_info=True)
if bool(int(getenv("DEBUG"))): if bool(int(getenv("DEBUG"))):
logger.error(str(e))
logger.error(traceback.format_exc()) logger.error(traceback.format_exc())
capture_exception(e) capture_exception(e)
raise e raise e

View file

@ -68,14 +68,6 @@ LOGGING = {
"level": "INFO", "level": "INFO",
"propagate": False, "propagate": False,
}, },
"django.request": {
"handlers": [
"console",
"mail_admins",
],
"level": "DEBUG" if DEBUG else "INFO",
"propagate": False,
},
"django.db.backends": { "django.db.backends": {
"handlers": [ "handlers": [
"console", "console",

View file

@ -11,7 +11,7 @@ from payments.gateways import UnknownGatewayError
from payments.models import Transaction from payments.models import Transaction
from payments.serializers import DepositSerializer, TransactionProcessSerializer from payments.serializers import DepositSerializer, TransactionProcessSerializer
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
@extend_schema_view(**DEPOSIT_SCHEMA) @extend_schema_view(**DEPOSIT_SCHEMA)

View file

@ -25,7 +25,7 @@ from vibes_auth.serializers import (
from vibes_auth.utils.emailing import send_reset_password_email_task from vibes_auth.utils.emailing import send_reset_password_email_task
from vibes_auth.validators import is_valid_email, is_valid_phone_number from vibes_auth.validators import is_valid_email, is_valid_phone_number
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class CreateUser(BaseMutation): class CreateUser(BaseMutation):

View file

@ -7,7 +7,7 @@ from django.contrib.auth.hashers import make_password
from core.models import Address, Order from core.models import Address, Order
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class UserManager(BaseUserManager): class UserManager(BaseUserManager):

View file

@ -30,7 +30,7 @@ from core.utils.security import is_safe_key
from evibes import settings from evibes import settings
from vibes_auth.models import User from vibes_auth.models import User
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
class UserSerializer(ModelSerializer): class UserSerializer(ModelSerializer):

View file

@ -19,7 +19,7 @@ from vibes_auth.serializers import (
TokenVerifySerializer, TokenVerifySerializer,
) )
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
@extend_schema_view(**TOKEN_OBTAIN_SCHEMA) @extend_schema_view(**TOKEN_OBTAIN_SCHEMA)

View file

@ -27,7 +27,7 @@ from vibes_auth.serializers import (
) )
from vibes_auth.utils.emailing import send_reset_password_email_task from vibes_auth.utils.emailing import send_reset_password_email_task
logger = logging.getLogger("evibes") logger = logging.getLogger("django")
@extend_schema_view(**USER_SCHEMA) @extend_schema_view(**USER_SCHEMA)