Next.js를 사용한 센트리
이 블로그에서는 센트리를 기존 next.js 애플리케이션에 통합하는 방법을 살펴보겠습니다.
📥 설치 중
Sentry의 Next.jsSDK를 next.js 프로젝트에 추가합니다.
yarn add @sentry/nextjs
자동 구성 🛠
npx @sentry/wizard -i nextjs
CLI의 아래 나열된 옵션에서 프로젝트를 선택하면 설정 마법사가 기본값과 API 키로 구성 파일을 자동으로 생성합니다.
생성된 파일:
next.config.js 수정 🔧
next.config.js
가 프로젝트에 이미 존재하는 경우 앱이 자동으로 next.config.wizardcopy.js
를 생성한 다음 스니펫을 next.config.js
에 수동으로 복사해야 합니다./** @type {import('next').NextConfig} */
const { withSentryConfig } = require( '@sentry/nextjs' );
const nextConfig = {
reactStrictMode: true
}
const sentryWebpackPluginOptions = {
// Additional config options for the Sentry Webpack plugin. Keep in mind that
// the following options are set automatically, and overriding them is not
// recommended:
// release, url, org, project, authToken, configFile, stripPrefix,
// urlPrefix, include, ignore
silent: true, // Suppresses all logs
// For all available options, see:
// https://github.com/getsentry/sentry-webpack-plugin#options.
};
module.exports = withSentryConfig( nextConfig, sentryWebpackPluginOptions );
백엔드 🔙
오류를 캡처하고 API의 서버 성능을 모니터링하는 애플리케이션에서 핸들러를 Sentry 함수로 래핑합니다.
통사론:
import { withSentry } from '@sentry/nextjs';
const handler = async (req, res) => {
// your API calls...
}
export default withSentry(handler);
참조:
import type { NextApiRequest, NextApiResponse } from "next"
import { withSentry } from "@sentry/nextjs";
const handler = async (req: NextApiRequest, res: NextApiResponse) => {
res.status(200).json({ name: "Akilesh" });
};
export default withSentry(handler);
테스트 🧪
모든 것이 제대로 작동하는지 확인하기 위해 프런트엔드 구성 요소에서 오류를 발생시키는 버튼 클릭 이벤트를 트리거합니다.
<button type="button" onClick={() => {
throw new Error("Sentry Frontend Error");
}}>
Throw error
</button>
이제 sentry dashboard을 확인하여 오류 및 성능 메트릭에 대해 자세히 알아보십시오.
배포(Vercel) 🛫
next.js 프로젝트가 vercel에 배포되었다고 가정합니다.
vercel에서 프로젝트에 환경 변수를 추가합니다
Project Settings > General > Environment Variables
.SENTRY_AUTH_TOKEN
: .sentryclirc
파일에 표시될 센트리 인증 토큰이 있는 환경 변수에 있습니다.센트리를 웹 애플리케이션 🥳과 성공적으로 통합했습니다. Slack 및 Vercel 통합에서 알림을 받으려면 🔔 여기를 확인하세요.
Reference
이 문제에 관하여(Next.js를 사용한 센트리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/akilesh/sentry-with-nextjs-c1m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)