Beispiel #1
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        # If true, the project has been opted into using the symbolicator
        # service for native symbolication, which also means symbolic is not
        # used at all anymore.
        # The (iOS) symbolserver is still used regardless of this value.
        self.use_symbolicator = _is_symbolicator_enabled(
            self.project, self.data)

        metrics.incr('native.use_symbolicator',
                     tags={'value': self.use_symbolicator})

        self.arch = cpu_name_from_data(self.data)
        self.signal = signal_from_data(self.data)

        self.sym = None
        self.difs_referenced = set()

        images = get_path(self.data,
                          'debug_meta',
                          'images',
                          default=(),
                          filter=self._is_valid_image)

        if images:
            self.available = True
            self.sdk_info = get_sdk_from_event(self.data)
            self.object_lookup = ObjectLookup(images)
            self.images = images
        else:
            self.available = False
Beispiel #2
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        # Make sure we only fetch organization from cache
        # We don't need to persist it back since we don't want
        # to bloat the Event object.
        organization = getattr(self.project, "_organization_cache", None)
        if not organization:
            organization = Organization.objects.get_from_cache(
                id=self.project.organization_id)

        self.max_fetches = MAX_RESOURCE_FETCHES
        self.allow_scraping = organization.get_option(
            "sentry:scrape_javascript",
            True) is not False and self.project.get_option(
                "sentry:scrape_javascript", True)
        self.fetch_count = 0
        self.sourcemaps_touched = set()

        # cache holding mangled code, original code, and errors associated with
        # each abs_path in the stacktrace
        self.cache = SourceCache()

        # cache holding source URLs, corresponding source map URLs, and source map contents
        self.sourcemaps = SourceMapCache()

        self.release = None
        self.dist = None
Beispiel #3
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        # If true, the project has been opted into using the symbolicator
        # service for native symbolication, which also means symbolic is not
        # used at all anymore.
        # The (iOS) symbolserver is still used regardless of this value.
        self.use_symbolicator = _is_symbolicator_enabled(self.project, self.data)

        metrics.incr('native.use_symbolicator', tags={'value': self.use_symbolicator})

        self.arch = cpu_name_from_data(self.data)
        self.signal = signal_from_data(self.data)

        self.sym = None
        self.difs_referenced = set()

        images = get_path(self.data, 'debug_meta', 'images', default=(),
                          filter=self._is_valid_image)

        if images:
            self.available = True
            self.sdk_info = get_sdk_from_event(self.data)
            self.object_lookup = ObjectLookup(images)
            self.images = images
        else:
            self.available = False
Beispiel #4
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        self.images = set()
        self.available = False

        for image in get_path(self.data, "debug_meta", "images", filter=is_valid_image, default=()):
            self.available = True
            self.images.add(str(image["uuid"]).lower())
Beispiel #5
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        self.images = set()
        self.available = False

        for image in get_path(self.data, 'debug_meta', 'images', filter=is_valid_image, default=()):
            self.available = True
            self.images.add(six.text_type(image['uuid']).lower())
Beispiel #6
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        self.arch = cpu_name_from_data(self.data)
        self.signal = signal_from_data(self.data)

        self.sym = None

        images = get_path(self.data, 'debug_meta', 'images', default=(),
                          filter=self._is_valid_image)

        if images:
            self.available = True
            self.sdk_info = get_sdk_from_event(self.data)
            self.object_lookup = ObjectLookup(images)
            self.images = images
        else:
            self.available = False
Beispiel #7
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        # Make sure we only fetch organization from cache
        # We don't need to persist it back since we don't want
        # to bloat the Event object.
        organization = getattr(self.project, "_organization_cache", None)
        if not organization:
            organization = Organization.objects.get_from_cache(id=self.project.organization_id)

        self.max_fetches = MAX_RESOURCE_FETCHES
        self.allow_scraping = organization.get_option(
            "sentry:scrape_javascript", True
        ) is not False and self.project.get_option("sentry:scrape_javascript", True)
        self.fetch_count = 0
        self.sourcemaps_touched = set()
        self.cache = SourceCache()
        self.sourcemaps = SourceMapCache()
        self.release = None
        self.dist = None
Beispiel #8
0
    def __init__(self, *args, **kwargs):
        StacktraceProcessor.__init__(self, *args, **kwargs)

        # Make sure we only fetch organization from cache
        # We don't need to persist it back since we don't want
        # to bloat the Event object.
        organization = getattr(self.project, '_organization_cache', None)
        if not organization:
            organization = Organization.objects.get_from_cache(id=self.project.organization_id)

        self.max_fetches = MAX_RESOURCE_FETCHES
        self.allow_scraping = (
            organization.get_option('sentry:scrape_javascript', True) is not False
            and self.project.get_option('sentry:scrape_javascript', True)
        )
        self.fetch_count = 0
        self.sourcemaps_touched = set()
        self.cache = SourceCache()
        self.sourcemaps = SourceMapCache()
        self.release = None
        self.dist = None