문서

OpenErrorAPI는 Sentry 프로토콜을 사용하므로, 기존에 사용하던 공식 SDK를 유지하고 DSN 한 줄만 변경하면 됩니다. 이 페이지에서 방법과 함께 — 중요하게도 — 지원하지 않는 기능도 안내합니다.

Sentry에서 10분 만에 전환

SDK를 교체하거나 코드를 다시 작성할 필요가 없습니다. 기존 SDK가 가리키는 DSN만 변경하면 됩니다.

  1. 1

    콘솔에서 프로젝트를 생성하면 https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID 형식의 DSN을 받게 됩니다.

  2. 2

    기존 Sentry.init()의 DSN을 교체하세요 — 보통 환경 변수 하나입니다. SDK, 버전, 이미 설정한 모든 옵션은 그대로 유지하세요.

  3. 3

    배포하고 오류를 하나 발생시키세요. 1초 이내에 콘솔에 나타나며, Sentry에서처럼 그룹화됩니다.

PHP

composer require sentry/sentry
\Sentry\init(['dsn' => 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID']);

JavaScript / TypeScript

npm i @sentry/browser
Sentry.init({ dsn: 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID' });

Node.js

npm i @sentry/node
Sentry.init({ dsn: 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID' });

Python

pip install sentry-sdk
sentry_sdk.init(dsn="https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID")

Go

go get github.com/getsentry/sentry-go
sentry.Init(sentry.ClientOptions{Dsn: "https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID"})

Dart / Flutter

flutter pub add sentry_flutter
await SentryFlutter.init((o) => o.dsn = 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID');

이미 sentry-cli로 소스 맵을 업로드하고 있나요? 그 단계도 그대로 유지하세요 — SENTRY_URL을 https://openerrorapi.com으로 설정하고 업로드 토큰을 SENTRY_AUTH_TOKEN으로 사용하세요.

Sentry 호환성, 솔직하게

호환성이 핵심 약속이기 때문에, 과장하면 가장 위험합니다. 이 표는 코드와 머신 리더블 문서가 사용하는 동일한 소스에서 생성되므로, 현실과 조용히 괴리될 수 없습니다.

7개 영역 완전 지원 · 3개 부분 지원 · 3개 미지원.

영역 상태 세부사항
Envelope ingest (/api/{id}/envelope/) 지원됨 The modern endpoint every current SDK uses. Gzip/deflate bodies, multiple items per envelope, all three auth methods (X-Sentry-Auth header, querystring, envelope dsn header).
Store ingest (/api/{id}/store/) 지원됨 Legacy endpoint for older SDKs. Same processing pipeline as envelopes.
Error events & grouping 지원됨 Exceptions, messages, stack traces, tags, user, contexts, breadcrumbs, request. Grouping by fingerprint with an explicit `fingerprint[]` override.
Sessions / release health 지원됨 Session envelope items are processed; crash-free sessions and users are shown per release. Available from the Team plan.
Security reports (CSP) 지원됨 CSP violation reports are stored and grouped like any other issue. Point report-uri at /api/{project_id}/security/?sentry_key={PUBLIC_KEY} — the browser cannot send headers, so the key goes in the URL. Both the classic csp-report body and the Reporting API array are accepted.
Source maps 지원됨 Upload via our API, from the console, or with sentry-cli. Frames are de-minified on read, so uploading a map fixes old events too.
sentry-cli 부분 지원 Releases (new / finalize / set-commits) and source-map upload work unchanged. Chunked upload is not implemented — sentry-cli detects that and falls back to the regular upload automatically.
User feedback widget 지원됨 Embeddable widget; reports land next to the errors they belong to.
Transactions / performance 부분 지원 Transaction envelope items are accepted so SDKs do not error, but we do not build a performance product on top of them. If you need distributed tracing, keep Sentry — we are an error tracker.
Logs (log envelope items) 미지원 Not processed yet. Log items are ignored, which does not affect error reporting from the same SDK.
Cron monitors (check_in items) 부분 지원 We have our own cron/heartbeat monitoring in the console, but the Sentry `check_in` envelope item is not wired to it yet.
Profiling, session replay 미지원 Deliberately out of scope. These are the reasons to stay on Sentry; we do not pretend otherwise.
Native symbolication (dSYM / ProGuard) 미지원 Not supported. Native mobile crashes arrive, but stay unsymbolicated.

더 알아보기