Added logging to database
This commit is contained in:
parent
e193ae0f55
commit
b8883cc857
@ -1,13 +1,18 @@
|
|||||||
|
import logging
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
from django.utils import timezone
|
||||||
from zenpy import Zenpy
|
from zenpy import Zenpy
|
||||||
from zenpy.lib.exception import APIException
|
from zenpy.lib.exception import APIException
|
||||||
|
|
||||||
from main.models import UserProfile
|
from main.models import UserProfile, RoleChangeLogs
|
||||||
|
|
||||||
from access_controller.settings import ZENDESK_ROLES as ROLES
|
from access_controller.settings import ZENDESK_ROLES as ROLES
|
||||||
|
|
||||||
|
|
||||||
|
# from access_controller.main.models import RoleChangeLogs
|
||||||
|
|
||||||
|
|
||||||
class ZendeskAdmin:
|
class ZendeskAdmin:
|
||||||
"""
|
"""
|
||||||
Класс **ZendeskAdmin** существует, чтобы в каждой фунциии отдельно не проверять аккаунт администратора
|
Класс **ZendeskAdmin** существует, чтобы в каждой фунциии отдельно не проверять аккаунт администратора
|
||||||
@ -28,7 +33,7 @@ class ZendeskAdmin:
|
|||||||
email: str = os.getenv('ACCESS_CONTROLLER_API_EMAIL')
|
email: str = os.getenv('ACCESS_CONTROLLER_API_EMAIL')
|
||||||
token: str = os.getenv('ACCESS_CONTROLLER_API_TOKEN')
|
token: str = os.getenv('ACCESS_CONTROLLER_API_TOKEN')
|
||||||
password: str = os.getenv('ACCESS_CONTROLLER_API_PASSWORD')
|
password: str = os.getenv('ACCESS_CONTROLLER_API_PASSWORD')
|
||||||
_instance=None
|
_instance = None
|
||||||
|
|
||||||
def __new__(cls, *args, **kwargs):
|
def __new__(cls, *args, **kwargs):
|
||||||
if cls._instance is None:
|
if cls._instance is None:
|
||||||
@ -191,3 +196,27 @@ def check_user_auth(email: str, password: str) -> bool:
|
|||||||
except APIException:
|
except APIException:
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
class DatabaseHandler(logging.Handler):
|
||||||
|
def __init__(self):
|
||||||
|
logging.Handler.__init__(self)
|
||||||
|
self.database = RoleChangeLogs()
|
||||||
|
|
||||||
|
def emit(self, record):
|
||||||
|
# admin = ZendeskAdmin()
|
||||||
|
user = record.msg
|
||||||
|
# data = UserProfile.objects.filter(user=user.user)
|
||||||
|
self.database.name = user.name
|
||||||
|
self.database.new_role = user.role
|
||||||
|
self.database.user = user.user
|
||||||
|
self.database.changed_by = user.user
|
||||||
|
self.database.save()
|
||||||
|
|
||||||
|
|
||||||
|
def log(user):
|
||||||
|
dbhandler = DatabaseHandler()
|
||||||
|
logging.getLogger('MY_LOGGER').addHandler(dbhandler)
|
||||||
|
logger = logging.getLogger('MY_LOGGER')
|
||||||
|
logger.setLevel('INFO')
|
||||||
|
logger.info(user)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user