From e0d0022675b5c9ba948bd05512d1ddc719842b4f Mon Sep 17 00:00:00 2001 From: "Emma [it/its]@Rory&" Date: Tue, 29 Oct 2024 21:44:26 +0100 Subject: [PATCH] Update sentry to latest --- package-lock.json | Bin 381229 -> 409045 bytes package.json | 3 +-- src/gateway/events/Message.ts | 4 ++-- src/util/util/Sentry.ts | 43 ++++++++++++++-------------------- 4 files changed, 21 insertions(+), 29 deletions(-) diff --git a/package-lock.json b/package-lock.json index 406cb437eec204e6becf97eebb57dd40ce02f0d5..2a82dc2abf2d7801c328ca91365215d09f8b5480 100644 GIT binary patch delta 18528 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 delta 1925 zcma)5TZ|J`7|v;@UCL!$V)lY7WVc2|%kFe~FPBI!(`mPzc6y(#L73jA)16M+nQkv5 z2qN=T6nnHEk7-T6WYP4-XBDP;n9Z3QT+|R`@Xh7>t|(+Q|oJIDti{ zmZ!Vb)bi}YSC=M}DO1`IPozbr*db<0(WZHxCw+9r+e-Vnq^;$Tx}xrQN%E&$9?r*j z#TnBa6)QB%4qvco$&(>I#8akr*dR%!f>mys8yP;q!P~6b3MY<(A>Aq={T}$|Nie#` z4{m)G>{vw{{R}(@uep!`c=&DA2>j&)nApH&0PZ~rwyrdnL6@SUIdAHu>!^t*o7Ik+ zinQn!7Vy^-qNf~@l2|hnEV&q4%h@EdGqXOT6eI}T6vR2yY08<|Iw2U?G)j5wxs^G`!01azyGyQfxKs)4mPt%+|1Ic z6k~JR;u*5cm*SMo)2@+zl;tfmb0(X>;BE(9mIS9mMoV?PN{3imn917BVmao_p-xvm zSa)YzDbn8&A58)Mx;mS6-AB(?a|~asiVRy=wk0<0fJ+~$`sL{oe^?&5{(w9QDlF97 zB?H;1RtuJLq7&n2Q5H#4+;4QmECxZWxOvHvu=By13Ae^jbHy7kpqYeV6=S(%1DnH2 zR2vJk5wyV&MsGE4&C%=fXrFw@**&nURN#>|7&C6*bxXqb08qH<73 zWl%Gn;M(nQNJ=&Ym)nvtaFR>*mBgGam9-MSysrR(1=-sdm1Q)?j;<$Z4b7?(dr?Uw zLiwbpnG3UWkTQzSjMv^^Jt2(3lQoMe5y=MPBA1t_8LL>TrHJTEvnCqiT-zuI=8E2A zyC8-#>Dg+~5hW|mAnW6)P&f*||5iP6<~Z05@16v@RoicfapZHbNs(U%2Tmz>H>>^` zP|gplUeqbW6RHan%5Jx+Sb1}4QKc*`s?jlRrI6>C2E=|-?||nwsnAibveGK_VzX9H znISWRJe8#Bh_BJ9d&^<3E80#KGwpewoplCyG>}bKDtweRk(pq`@4(xE1XgEl?VLsK z#La#N$6X0l!m^E`+^%ER9GB!WcD5X+V+5=ZX;66Wih4k~aanx}D2v~z|K6goKdJAU z00);YsYl@p`?Q#j=X#*JD>MewPbXtsxa99h$#O~bMukQ(6E9{gWYT2GRcShpN7$A# zP2__9Z~<=>i{4DuhobWiJBi_Gh9u;9Up1bsr;Q$`$HwD$$s2J=ts-PDYOLGWiTAAf zih0_&0Iu#*a@&w+Roa!5!pWOp3|@3H+Fh5qaMy#%|Kz7n{v*yAR4Z`L?^BzmhV-#{7 zvw@-rnV$7iaA_Dkvp{Vh+1$O79#C`lxZD4#b}4T>hFm?Mycb43l9hv3kaL6Z-dWY~ znL+h9eCr0HSH^!tf+}dF)dqO=Vt`p1`m#^jqtB&%}#js4@9RteiK2! zO7rw}wSJ{}=ywG4HI?q<2!Pa=$R6eLEkw6ZIsd%o37~v4rIB|kR7mpyqg?z#v-{ou E0hn)ax&QzG diff --git a/package.json b/package.json index 1eb8fbae..4786be16 100644 --- a/package.json +++ b/package.json @@ -68,8 +68,7 @@ }, "dependencies": { "@aws-sdk/client-s3": "^3.682.0", - "@sentry/integrations": "^7.66.0", - "@sentry/node": "^7.119.2", + "@sentry/node": "^8.35.0", "ajv": "^8.17.1", "ajv-formats": "2.1.1", "amqplib": "^0.10.4", diff --git a/src/gateway/events/Message.ts b/src/gateway/events/Message.ts index c20cee7a..f63ec37c 100644 --- a/src/gateway/events/Message.ts +++ b/src/gateway/events/Message.ts @@ -89,11 +89,11 @@ export async function Message(this: WebSocket, buffer: WS.Data) { } try { - return await Sentry.startActiveSpan( + return await Sentry.startSpan( // Emma [it/its]@Rory&: is this the right function to migrate to in v8? { op: "websocket.server", name: `GATEWAY ${OPCODES[data.op]}`, - data: { + attributes: { // this needs to be reworked :) ...data.d, token: data?.d?.token ? "[Redacted]" : undefined, }, diff --git a/src/util/util/Sentry.ts b/src/util/util/Sentry.ts index 74a23a1e..510ed453 100644 --- a/src/util/util/Sentry.ts +++ b/src/util/util/Sentry.ts @@ -19,8 +19,7 @@ import { yellow } from "picocolors"; import { Config } from "./Config"; -import * as Integrations from "@sentry/integrations"; -import * as SentryNode from "@sentry/node"; +import * as Integrations from "@sentry/node"; import express from "express"; // Work around for when bundle calls api/etc @@ -33,7 +32,7 @@ export const Sentry = { Config.get().sentry; if (!enabled) return; - if (SentryNode.getCurrentHub().getClient()) return; // we've already initialised sentry + if (Integrations.getClient()) return; // we've already initialised sentry console.log("[Sentry] Enabling sentry..."); @@ -46,32 +45,30 @@ export const Sentry = { } const integrations = [ - new SentryNode.Integrations.Http({ tracing: true }), - new Integrations.RewriteFrames({ + Integrations.httpIntegration(), + Integrations.rewriteFramesIntegration({ root: __dirname, }), - new SentryNode.Integrations.Http({ - tracing: true, - breadcrumbs: true, - }), - ...SentryNode.autoDiscoverNodePerformanceMonitoringIntegrations(), + Integrations.httpIntegration(), + ...Integrations.getAutoPerformanceIntegrations(), ]; - if (app) - integrations.push( - new SentryNode.Integrations.Express({ - app, - }), - ); + //deprecated in v8? unable to test + // if (app) + // integrations.push( + // Integrations.expressIntegration({ + // app, + // }), + // ); - SentryNode.init({ + Integrations.init({ dsn: endpoint, integrations, tracesSampleRate: traceSampleRate, // naming? environment, }); - SentryNode.addGlobalEventProcessor((event) => { + Integrations.addEventProcessor((event) => { if (event.transaction) { // Rewrite things that look like IDs to `:id` for sentry event.transaction = event.transaction @@ -109,11 +106,6 @@ export const Sentry = { return event; }); - - if (app) { - app.use(SentryNode.Handlers.requestHandler()); - app.use(SentryNode.Handlers.tracingHandler()); - } }, /** Call AFTER registering your routes */ @@ -122,7 +114,8 @@ export const Sentry = { if (errorHandlersUsed) return; errorHandlersUsed = true; - app.use(SentryNode.Handlers.errorHandler()); + Integrations.setupExpressErrorHandler(app); + // The typings for this are broken? // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars app.use(function onError(err: any, req: any, res: any, next: any) { @@ -132,6 +125,6 @@ export const Sentry = { }, close: () => { - SentryNode.close(); + Integrations.close(); }, };