Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.utils.timezone import now
- from drf_request_tracking.models import APIRequestLog
- class DatabaseLogMiddleware(object):
- def __init__(self, get_response):
- self.get_response = get_response
- def __call__(self, request):
- request.requested_at = now().strftime('%Y-%m-%d %H:%M:%S')
- response = self.get_response(request)
- if request.path.startswith('/api/'):
- print(request.path)
- log = {
- 'user': request.user if not request.user.is_anonymous else None,
- 'requested_at': request.requested_at,
- 'response_ms': 0,
- 'path': request.path,
- 'view': None, # TODO implementar
- 'view_method': None, # TODO implementar
- 'remote_addr': '127.0.0.1', # TODO implementar
- 'host': request.get_host,
- 'method': request.method,
- 'query_params': '',
- 'data': request.body,
- 'response': response,
- 'errors': None, # TODO implementar
- 'status_code': response.status_code,
- }
- _log = APIRequestLog.objects.create(**log)
- print(_log)
- return response
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement