Skip to content

Instantly share code, notes, and snippets.

@Marakuba
Created March 24, 2017 11:51
Show Gist options
  • Select an option

  • Save Marakuba/2bc52e32e912233212d61801e2de4495 to your computer and use it in GitHub Desktop.

Select an option

Save Marakuba/2bc52e32e912233212d61801e2de4495 to your computer and use it in GitHub Desktop.
Django Auth Log
# http://stackoverflow.com/a/37620866
import logging
from django.contrib.auth.signals import user_logged_in, user_logged_out, user_login_failed
from django.dispatch import receiver
log = logging.getLogger(__name__)
@receiver(user_logged_in)
def user_logged_in_callback(sender, request, user, **kwargs):
# to cover more complex cases:
# http://stackoverflow.com/questions/4581789/how-do-i-get-user-ip-address-in-django
ip = request.META.get('REMOTE_ADDR')
log.debug('login user: {user} via ip: {ip}'.format(
user=user,
ip=ip
))
@receiver(user_logged_out)
def user_logged_out_callback(sender, request, user, **kwargs):
ip = request.META.get('REMOTE_ADDR')
log.debug('logout user: {user} via ip: {ip}'.format(
user=user,
ip=ip
))
@receiver(user_login_failed)
def user_login_failed_callback(sender, credentials, **kwargs):
log.warning('logout failed for: {credentials}'.format(
credentials=credentials,
))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment