mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-04-20 23:33:50 +02:00
Add sentry dsn
This commit is contained in:
@@ -1,29 +1,60 @@
|
||||
import * as Sentry from '@sentry/vue';
|
||||
import configRepository from '../service/config';
|
||||
|
||||
export function initSentry(app) {
|
||||
configRepository
|
||||
.getString('VRCX_SentryEnabled', 'false')
|
||||
.then((enabled) => {
|
||||
let isNightly = false;
|
||||
AppApi.GetVersion().then(
|
||||
(v) => (isNightly = v.includes('Nightly'))
|
||||
);
|
||||
if (enabled === 'true' && isNightly) {
|
||||
Sentry.init({
|
||||
app,
|
||||
dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0',
|
||||
environment: 'nightly',
|
||||
replaysSessionSampleRate: 0.1,
|
||||
replaysOnErrorSampleRate: 1.0,
|
||||
integrations: [
|
||||
Sentry.replayIntegration({
|
||||
maskAllText: true,
|
||||
blockAllMedia: true
|
||||
})
|
||||
]
|
||||
});
|
||||
console.log('Sentry initialized');
|
||||
}
|
||||
export async function initSentry(app) {
|
||||
const enabled = await configRepository.getString(
|
||||
'VRCX_SentryEnabled',
|
||||
'false'
|
||||
);
|
||||
const version = await AppApi.GetVersion();
|
||||
const isNightly = version.includes('Nightly');
|
||||
if (enabled !== 'true' || !isNightly) {
|
||||
return;
|
||||
}
|
||||
const vrcxId = await configRepository.getString('VRCX_id', '');
|
||||
const response = await webApiService.execute({
|
||||
url: 'https://api0.vrcx.app/errorreporting/getdsn',
|
||||
method: 'GET',
|
||||
headers: {
|
||||
Referer: 'https://vrcx.app',
|
||||
'VRCX-ID': vrcxId
|
||||
}
|
||||
});
|
||||
if (response.status !== 200) {
|
||||
console.error(
|
||||
'Failed to get Sentry DSN:',
|
||||
response.status,
|
||||
response.data
|
||||
);
|
||||
return;
|
||||
}
|
||||
try {
|
||||
const dsn = atob(response.data);
|
||||
Sentry.init({
|
||||
app,
|
||||
dsn,
|
||||
environment: 'nightly',
|
||||
replaysSessionSampleRate: 0.1,
|
||||
replaysOnErrorSampleRate: 1.0,
|
||||
beforeSend(event, hint) {
|
||||
if (
|
||||
event.request?.status &&
|
||||
(event.request.status === 404 ||
|
||||
event.request.status === 403)
|
||||
) {
|
||||
return null;
|
||||
}
|
||||
},
|
||||
integrations: [
|
||||
Sentry.replayIntegration({
|
||||
maskAllText: true,
|
||||
blockAllMedia: true
|
||||
})
|
||||
]
|
||||
});
|
||||
console.log('Sentry initialized');
|
||||
} catch (e) {
|
||||
console.error('Failed to initialize Sentry:', e);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user