UNPKG

@juzi/wechaty

Version:

Wechaty is a RPA SDK for Chatbot Makers.

54 lines 1.49 kB
import os from 'os'; import { log, } from '@juzi/wechaty-puppet'; import { VERSION, GIT_COMMIT_HASH, } from './config.js'; let raven; let enabled = false; function getRavenDsn() { // const RAVEN_DSN = 'https://f6770399ee65459a82af82650231b22c:d8d11b283deb441e807079b8bb2c45cd@sentry.io/179672' const dsn = process.env['WECHATY_RAVEN_DSN']; return dsn; } function enableRaven(dsn) { /** * Raven.io */ const ravenOptions = { release: VERSION, tags: { git_commit: GIT_COMMIT_HASH, platform: process.env['WECHATY_DOCKER'] ? 'docker' : os.platform(), }, }; raven.disableConsoleAlerts(); raven .config(dsn, ravenOptions) .install(); enabled = true; } async function init() { try { raven = await import('raven'); log.verbose('Wechaty', 'init() Raven enabled (import("raven") succeed)'); } catch (e) { // It's ok when there's no raven installed log.verbose('Wechaty', 'init() Raven disabled (import("raven") failed)'); return; } const dsn = getRavenDsn(); if (!dsn) { log.verbose('Wechaty', 'init() getRavenDsn() return undefined, skipped.'); return; } enableRaven(dsn); } function wechatyCaptureException(e) { if (enabled) { raven.captureException(e); } } init().catch(console.error); export { wechatyCaptureException, }; //# sourceMappingURL=raven.js.map