Ejemplo n.º 1
0
 def test_for_tags(self):
     eu = EventUser.objects.create(project_id=1, ident="matt")
     assert EventUser.for_tags(1, ["id:matt"]) == {"id:matt": eu}
     assert EventUser.for_tags(1, ["id:doesnotexist"]) == {}
     assert EventUser.for_tags(1, ["id:matt", "id:doesnotexist"]) == {
         "id:matt": eu
     }
Ejemplo n.º 2
0
 def test_for_tags(self):
     eu = EventUser.objects.create(
         project_id=1,
         ident='matt',
     )
     assert EventUser.for_tags(1, ['id:matt']) == {'id:matt': eu}
     assert EventUser.for_tags(1, ['id:doesnotexist']) == {}
     assert EventUser.for_tags(1, ['id:matt', 'id:doesnotexist']) == {'id:matt': eu}
Ejemplo n.º 3
0
    def find_event_user(self, report):
        try:
            event = Event.objects.get(
                group_id=report.group_id,
                event_id=report.event_id,
            )
        except Event.DoesNotExist:
            if not report.email:
                return None
            try:
                return EventUser.objects.filter(
                    project=report.project_id,
                    email=report.email,
                )[0]
            except IndexError:
                return None

        tag = event.get_tag('sentry:user')
        if not tag:
            return None

        try:
            return EventUser.for_tags(
                project_id=report.project_id,
                values=[tag],
            )[tag]
        except KeyError:
            pass
Ejemplo n.º 4
0
    def find_event_user(self, report):
        try:
            event = Event.objects.get(
                group_id=report.group_id,
                event_id=report.event_id,
            )
        except Event.DoesNotExist:
            if not report.email:
                return None
            try:
                return EventUser.objects.filter(
                    project_id=report.project_id,
                    email=report.email,
                )[0]
            except IndexError:
                return None

        tag = event.get_tag('sentry:user')
        if not tag:
            return None

        try:
            return EventUser.for_tags(
                project_id=report.project_id,
                values=[tag],
            )[tag]
        except KeyError:
            pass
Ejemplo n.º 5
0
    def get_attrs(self, item_list, user):
        user_tags = [i.value for i in item_list if i.key == 'sentry:user']

        tag_labels = {}
        if user_tags:
            tag_labels.update(
                {
                    ('sentry:user', k): v.get_label()
                    for k, v in six.iteritems(
                        EventUser.for_tags(
                            project_id=item_list[0].project_id,
                            values=user_tags,
                        )
                    )
                }
            )

        result = {}
        for item in item_list:
            try:
                label = tag_labels[(item.key, item.value)]
            except KeyError:
                label = item.get_label()
            result[item] = {
                'name': label,
            }
        return result
Ejemplo n.º 6
0
    def find_event_user(self, report_data):
        try:
            event = Event.objects.get(
                group_id=report_data.get('group_id'),
                event_id=report_data['event_id'],
            )
        except Event.DoesNotExist:
            if not report_data.get('email'):
                return None
            try:
                return EventUser.objects.filter(
                    project_id=report_data['project'].id,
                    email=report_data['email'],
                )[0]
            except IndexError:
                return None

        tag = event.get_tag('sentry:user')
        if not tag:
            return None

        try:
            return EventUser.for_tags(
                project_id=report_data['project'].id,
                values=[tag],
            )[tag]
        except KeyError:
            pass
Ejemplo n.º 7
0
    def get_attrs(self, item_list, user):
        users = EventUser.for_tags(project_id=item_list[0].project_id, values=[t.value for t in item_list])

        result = {}
        for item in item_list:
            result[item] = {"user": users.get(item.value)}
        return result
Ejemplo n.º 8
0
    def get_attrs(self, item_list, user):
        users = EventUser.for_tags(project_id=self.project_id,
                                   values=[t.value for t in item_list])

        result = {}
        for item in item_list:
            result[item] = {"user": users.get(item.value)}
        return result
Ejemplo n.º 9
0
    def get_attrs(self, item_list, user):
        users = EventUser.for_tags(
            project_id=self.project_id,
            values=[t.value for t in item_list],
        )

        result = {}
        for item in item_list:
            result[item] = {
                'user': users.get(item.value),
            }
        return result
Ejemplo n.º 10
0
    def get_attrs(self, item_list, user):
        users = EventUser.for_tags(
            project_id=item_list[0].project_id,
            values=[t.value for t in item_list],
        )

        result = {}
        for item in item_list:
            result[item] = {
                'user': users.get(item.value),
            }
        return result
Ejemplo n.º 11
0
def find_event_user(report_data, event):
    if not event:
        if not report_data.get("email"):
            return None
        try:
            return EventUser.objects.filter(
                project_id=report_data["project_id"], email=report_data["email"]
            )[0]
        except IndexError:
            return None

    tag = event.get_tag("sentry:user")
    if not tag:
        return None

    try:
        return EventUser.for_tags(project_id=report_data["project_id"], values=[tag])[tag]
    except KeyError:
        pass
Ejemplo n.º 12
0
    def get_attrs(self, item_list, user):
        user_tags = [i.value for i in item_list if i.key == "sentry:user"]

        tag_labels = {}
        if user_tags:
            tag_labels.update(
                {
                    ("sentry:user", k): v.get_label()
                    for k, v in six.iteritems(EventUser.for_tags(project_id=item_list[0].project_id, values=user_tags))
                }
            )

        result = {}
        for item in item_list:
            try:
                label = tag_labels[(item.key, item.value)]
            except KeyError:
                label = item.get_label()
            result[item] = {"name": label}
        return result
Ejemplo n.º 13
0
    def find_event_user(self, report_data, event):
        if not event:
            if not report_data.get('email'):
                return None
            try:
                return EventUser.objects.filter(
                    project_id=report_data['project'].id,
                    email=report_data['email'],
                )[0]
            except IndexError:
                return None

        tag = event.get_tag('sentry:user')
        if not tag:
            return None

        try:
            return EventUser.for_tags(
                project_id=report_data['project'].id,
                values=[tag],
            )[tag]
        except KeyError:
            pass
Ejemplo n.º 14
0
 def wrapped(items):
     users = EventUser.for_tags(project_id, [i.value for i in items])
     for item in items:
         item._eventuser = users.get(item.value)
Ejemplo n.º 15
0
 def wrapped(items):
     users = EventUser.for_tags(project_id, [i.value for i in items])
     for item in items:
         item._eventuser = users.get(item.value)
Ejemplo n.º 16
0
 def attach_eventuser(items):
     users = EventUser.for_tags(group.project_id, [i.value for i in items])
     for item in items:
         item._eventuser = users.get(item.value)