def setup(): global sentry sentry = Sentry(getattr(infogami.config, 'sentry', {})) if sentry.enabled: sentry.init() delegate.add_exception_hook(lambda: sentry.capture_exception_webpy())
def setup(): logger.info("Setting up sentry (enabled={})".format(is_enabled())) if not is_enabled(): return sentry_sdk.init(dsn=infogami.config.sentry.dsn, environment=infogami.config.sentry.environment) delegate.add_exception_hook(lambda: sentry_sdk.capture_exception())
def setup(): """ This function is called from the main application startup routine to set things up. """ # Initialise the stats filters register_filter("all", stats_filters.all) register_filter("url", stats_filters.url) register_filter("loggedin", stats_filters.loggedin) register_filter("not_loggedin", stats_filters.not_loggedin) delegate.app.add_processor(web.loadhook(page_load_hook)) delegate.app.add_processor(web.unloadhook(page_unload_hook)) delegate.add_exception_hook(lambda: increment_error_count('ol.exceptions'))
return name def internalerror(): i = web.input(_method='GET', debug='false') name = save_error() openlibrary.core.stats.increment('ol.internal-errors', 1) if i.debug.lower() == 'true': raise web.debugerror() else: msg = render.site(render.internalerror(name)) raise web.internalerror(web.safestr(msg)) delegate.app.internalerror = internalerror delegate.add_exception_hook(save_error) class memory(delegate.page): path = "/debug/memory" def GET(self): import guppy h = guppy.hpy() return delegate.RawText(str(h.heap())) class backdoor(delegate.page): path = "/debug/backdoor" def GET(self): import backdoor reload(backdoor)
openlibrary.core.stats.increment('ol.internal-errors') increment_error_count('ol.internal-errors-segmented') # TODO: move this to plugins\openlibrary\sentry.py from openlibrary.plugins.openlibrary.sentry import sentry if sentry.enabled: sentry.capture_exception_webpy() if i.debug.lower() == 'true': raise web.debugerror() else: msg = render.site(render.internalerror(name)) raise web.internalerror(web.safestr(msg)) delegate.app.internalerror = internalerror delegate.add_exception_hook(save_error) class memory(delegate.page): path = '/debug/memory' def GET(self): import guppy h = guppy.hpy() return delegate.RawText(str(h.heap())) def _get_relatedcarousels_component(workid): if 'env' not in web.ctx: delegate.fakeload() work = web.ctx.site.get('/works/%s' % workid) or {} component = render_template('books/RelatedWorksCarousel', work)