(node면 node, express환경이면 express)
import * as Sentry from '@sentry/node'; import { ProfilingIntegration } from '@sentry/profiling-node'; Sentry.init({ dsn: 'https://<본인의 엔드포인트가 있음_설치하는 페이지에 자동으로 생성해서보여줌>', integrations: [ // enable HTTP calls tracing new Sentry.Integrations.Http({ tracing: true }), // enable Express.js middleware tracing new Sentry.Integrations.Express({ app }), new ProfilingIntegration(), ], // Performance Monitoring tracesSampleRate: 1.0, // Set sampling rate for profiling - this is relative to tracesSampleRate profilesSampleRate: 1.0, }); // The request handler must be the first middleware on the app app.use(Sentry.Handlers.requestHandler()); // TracingHandler creates a trace for every incoming request app.use(Sentry.Handlers.tracingHandler()); // All your controllers should live here app.get('/', function rootHandler(req, res) { res.end('Hello world!'); }); app.use(Sentry.Handlers.errorHandler()); //이거는 api 마지막에 넣어줘야한다.
위의 코드들을 기존에 있던 app.js 코드들 사이에 낑겨넣어줬다.
그리고 nodemon을 이용해서 app.js를 실행해서 artillery로 부하를 줘봤다 -> 에러 왕창뜸!
그럼 그 에러내역을 센트리 홈페이지에서 볼수있다.
자신의 엔드포인트가 뭔지 모르겠다는 분이있다면 settings -> 검색: Client Keys(DSN) → 프로젝트 선택하여 확인가능하다.