Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: sentry setup #9

Merged
merged 2 commits into from
Aug 12, 2023
Merged

feat: sentry setup #9

merged 2 commits into from
Aug 12, 2023

Conversation

hyjoong
Copy link
Owner

@hyjoong hyjoong commented Aug 12, 2023

No description provided.

@hyjoong hyjoong self-assigned this Aug 12, 2023
@vercel
Copy link

vercel bot commented Aug 12, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Updated (UTC)
ncnc ✅ Ready (Inspect) Visit Preview Aug 12, 2023 11:55am

@netlify
Copy link

netlify bot commented Aug 12, 2023

Deploy Preview for frosty-ardinghelli-eb7022 ready!

Name Link
🔨 Latest commit 448a1bd
🔍 Latest deploy log https://app.netlify.com/sites/frosty-ardinghelli-eb7022/deploys/64d7732ffb11240008c52478
😎 Deploy Preview https://deploy-preview-9--frosty-ardinghelli-eb7022.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

// Automatically tree-shake Sentry logger statements to reduce bundle size
disableLogger: true,
}
);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 코드 패치를 간략하게 검토해 드리겠습니다. 가능한 버그 위험 사항 및 개선 제안을 포함하여 의견을 제시하겠습니다:

  1. experimental 객체에서 주석 처리된 serverActions 옵션은 향상된 자세한 정보가 없으므로 필요에 따라 사용해야 할 수 있습니다.

  2. compiler 객체의 styledComponents 옵션은 true로 설정되어 있는데, 이는 styled-components 라이브러리와 함께 사용한다는 것을 나타냅니다.

  3. 마지막으로, @sentry/nextjs 패키지를 사용하여 Sentry 에러 로깅 및 추적 기능을 구성하는 코드가 추가되었습니다. 이 코드는 현재 상황에 따라 적절한지 확인해야 합니다. Sentry 설정에 대해 자세히 알아보고, 필요한 옵션을 추가하거나 삭제하는 것이 좋습니다.

코드 리뷰는 변경된 코드 조각에 대해서만 이루어졌으며, 다른 부분의 일관성과 범위는 확인할 수 없습니다.

@@ -18,6 +18,7 @@
"build-storybook": "build-storybook"
},
"dependencies": {
"@sentry/nextjs": "^7.63.0",
"axios": "^0.21.1",
"babel-plugin-styled-components": "^1.12.0",
"css-loader": "^5.0.2",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

주어진 코드 패치에 대한 간단한 코드 리뷰를 도와드리겠습니다.

버그 위험 및 개선 제안:

  • 보안 패키지 "@sentry/nextjs"의 버전이 "^7.63.0"으로 명시되어 있습니다. 업데이트된 버전이 있는지 확인하고 최신 버전을 사용하는 것이 좋습니다.
  • 의존성 관리를 위해 package.json 파일을 확인할 수 없어 전체적인 상황을 파악하지 못했습니다. 올바른 버전을 유지하고 다른 의존성 패키지도 필요한 경우 최신 버전으로 업데이트하는 것이 좋습니다.

위의 사항들을 검토하여 코드를 안전하고 최신으로 유지하는 것이 중요합니다.

blockAllMedia: true,
}),
],
});

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 코드 패치는 클라이언트에서 Sentry의 초기화를 구성합니다. 사용자가 브라우저에서 페이지를 로드할 때마다 여기에 추가한 구성이 사용됩니다. 코드 리뷰를 위해서는 개발 환경과 관련된 세부 정보가 필요합니다.

코드 자체는 보안 측면에서 큰 문제 없이 보입니다. 하지만 몇 가지 개선 제안이 있습니다:

  1. 주석을 통해 해당 모듈이 하는 일과 설정 방법에 대해 자세히 설명해 주셨는데, 이 정보를 다른 개발자들이 쉽게 이해할 수 있도록 영문으로 번역하거나 한국어로 추가 주석을 작성할 수 있습니다.
  2. 현재 dsn 값은 환경 변수에서 가져오고 있습니다. 설정할 값이 없을 경우에 대비하여 기본값을 설정하거나 오류 처리를 추가할 수 있습니다.
  3. tracesSampleRatereplaysSessionSampleRate는 각각 추적 및 재생 샘플 비율을 나타내는 값입니다. 현재 코드에서 tracesSampleRate는 1로 설정되어 있어 모든 추적 데이터를 전송하고 있는데, 실제로는 더 낮은 샘플 비율을 사용하는 것이 좋을 수 있습니다. 마찬가지로 replaysSessionSampleRate도 0.1에서 더 낮은 값으로 설정하는 것이 좋을 수 있습니다.
  4. integrations 배열에 있는 Sentry.Replay는 Sentry 세션 재생 기능에 대한 구성을 담당합니다. 현재 코드는 텍스트 마스킹 및 미디어 차단과 같은 일반적인 구성만 포함하고 있는데, 필요한 경우 추가 구성 옵션을 적용할 수 있습니다.

이러한 개선 제안을 고려하여 코드를 수정하면 성능과 보안 면에서 최적화된 상태로 Sentry를 초기화할 수 있을 것입니다.


// Setting this option to true will print useful information to the console while you're setting up Sentry.
debug: false,
});

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 코드 패치는 Sentry의 초기화를 구성하는 것으로 보입니다. 코드 상에는 주석으로 해당 설정이 에지 기능(미들웨어, 엣지 라우트 등)을 로드할 때마다 사용된다고 설명되어 있습니다. 이 설정은 Vercel Edge Runtime과는 관련이 없으며 로컬 환경에서 실행할 때도 필요하다고 합니다. 이 코드의 버그 위험 또는 개선 제안을 알려드리겠습니다:

  1. import * as Sentry from "@sentry/nextjs"; 이 형태의 import 문은 모든 Sentry 기능을 가져오기 때문에 필요 이상으로 메모리를 소비할 수 있습니다. 필요한 기능만 가져오도록 변경할 수 있습니다.

  2. const SENTRY_DSN = process.env.SENTRY_DSN || process.env.NEXT_PUBLIC_SENTRY_DSN; 이 코드 라인은 두 개의 환경 변수 중 하나를 선택하여 SENTRY_DSN에 할당합니다. 그러나 만약 둘 다 정의되지 않았을 경우를 고려하지 않으므로, 이 부분을 수정하여 적절한 처리를 추가하는 것이 좋습니다.

  3. tracesSampleRate: 1, 설정된 tracesSampleRate 값이 1로 되어 있습니다. 이 값은 추적 데이터를 샘플링하는 비율을 나타내는데, 현재 코드에서는 모든 추적 데이터를 샘플링하고 있습니다. 실제로는 적절한 샘플링 비율을 선택하여 리소스 소비를 관리하는 것이 좋습니다.

  4. debug: false, 설정된 debug 값이 false로 되어 있습니다. 이 경우 세부 정보가 콘솔에 출력되지 않으므로 디버깅 시 유용한 정보를 얻기 어려울 수 있습니다. 특정 상황에서는 true로 설정하여 자세한 정보를 확인할 수 있도록 하는 것이 좋습니다.

위의 제안사항들은 코드 개선 및 버그 위험을 최소화하기 위한 참고 사항입니다. 프로젝트와 요구 사항에 따라 추가적인 조치가 필요할 수 있습니다.


// Setting this option to true will print useful information to the console while you're setting up Sentry.
debug: false,
});

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 코드 패치는 Sentry를 서버에서 초기화하는 설정 파일입니다. 이곳에 추가한 구성은 서버가 요청을 처리할 때마다 사용됩니다.

개선 제안:

  1. 주석들이 상세히 작성되어 있어서 이해하기 쉽습니다.
  2. SENTRY_DSN 변수에 대한 환경 변수 설정이 적절하게 처리되었습니다.
  3. tracesSampleRate 값을 조정하여 성능 제어를 할 수 있습니다.
  4. 디버그 옵션을 false로 설정하여 설정 중 유용한 정보를 콘솔에 출력하지 않도록 변경하면 좋습니다.

버그 위험:
고려할 만한 주요 버그 위험이나 문제점은 파악되지 않습니다.

dependencies:
tr46 "~0.0.3"
webidl-conversions "^3.0.0"

whatwg-url@^8.0.0, whatwg-url@^8.5.0:
version "8.7.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm an AI language model, so I don't have real-time information or access to current events beyond September 2021. Please consult a reliable news source or conduct an internet search to find up-to-date information about the anniversary of the COVID-19 vaccine.

@github-actions
Copy link

Bundle Sizes

Compared against none

Route Size (gzipped)
/_app 151.21 KB
/_error 77.95 KB

Dynamic import: None found.

@hyjoong hyjoong merged commit d4dd903 into master Aug 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant