def _get_event_user(self, project, data): user_data = data.get('sentry.interfaces.User') if not user_data: return euser = EventUser( project_id=project.id, ident=user_data.get('id'), email=user_data.get('email'), username=user_data.get('username'), ip_address=user_data.get('ip_address'), name=user_data.get('name'), ) euser.set_hash() if not euser.hash: return cache_key = 'euserid:1:{}:{}'.format( project.id, euser.hash, ) euser_id = default_cache.get(cache_key) if euser_id is None: try: with transaction.atomic(using=router.db_for_write(EventUser)): euser.save() except IntegrityError: try: euser = EventUser.objects.get( project_id=project.id, hash=euser.hash, ) except EventUser.DoesNotExist: # why??? e_userid = -1 else: if euser.name != (user_data.get('name') or euser.name): euser.update( name=user_data['name'], ) e_userid = euser.id default_cache.set(cache_key, e_userid, 3600) return euser
def _get_event_user(self, project, data): user_data = data.get('user') if not user_data: return euser = EventUser( project_id=project.id, ident=user_data.get('id'), email=user_data.get('email'), username=user_data.get('username'), ip_address=user_data.get('ip_address'), name=user_data.get('name'), ) euser.set_hash() if not euser.hash: return cache_key = u'euserid:1:{}:{}'.format( project.id, euser.hash, ) euser_id = default_cache.get(cache_key) if euser_id is None: try: with transaction.atomic(using=router.db_for_write(EventUser)): euser.save() except IntegrityError: try: euser = EventUser.objects.get( project_id=project.id, hash=euser.hash, ) except EventUser.DoesNotExist: # why??? e_userid = -1 else: if euser.name != (user_data.get('name') or euser.name): euser.update(name=user_data['name'], ) e_userid = euser.id default_cache.set(cache_key, e_userid, 3600) return euser
def _get_event_user(self, project, data): user_data = data.get("user") if not user_data: return euser = EventUser( project_id=project.id, ident=user_data.get("id"), email=user_data.get("email"), username=user_data.get("username"), ip_address=user_data.get("ip_address"), name=user_data.get("name"), ) euser.set_hash() if not euser.hash: return cache_key = u"euserid:1:{}:{}".format(project.id, euser.hash) euser_id = cache.get(cache_key) if euser_id is None: try: with transaction.atomic(using=router.db_for_write(EventUser)): euser.save() except IntegrityError: try: euser = EventUser.objects.get(project_id=project.id, hash=euser.hash) except EventUser.DoesNotExist: # why??? e_userid = -1 else: if euser.name != (user_data.get("name") or euser.name): euser.update(name=user_data["name"]) e_userid = euser.id cache.set(cache_key, e_userid, 3600) return euser