はじめに
Sentryを使用していて、フロントからユーザー情報を送るようにしてみました。
ちなみに送らない場合は、ユーザー情報にはIPアドレスしか送られません。
ちなみに、フロントはVueを使っているので、Vuexで保存しているユーザー情報を送る想定です。
本題
import * as Sentry from '@sentry/browser'; import * as Integrations from '@sentry/integrations'; Sentry.init({ enabled: process.env.VUE_APP_ENVIRONMENT === 'production', dsn: process.env.VUE_APP_SENTRY_DNS, environment: process.env.VUE_APP_ENVIRONMENT, integrations: [new Integrations.Vue({ Vue, attachProps: true })] }); import Vue from 'vue'; import App from '@/App.vue'; import router from '@/router'; import store from '@/store'; try { if (store.getters['AUTH/LOGGED_IN']) { const user = store.getters['AUTH/USER_DATA']; Sentry.setUser({ id: user.id, email: user.email, username: user.username }); } }catch (error) { Sentry.captureException(error); } new Vue({ el: '#app', store, router, components: { App }, template: '<App/>' });
これでSentryにユーザー情報を送れるようになりました。
終わりに
簡単でした。バックエンドの方ももっと簡単なのかな? 今度やってみます。