안녕하세요,
저는 자체 호스팅이 매우 쉬운 오픈소스 관측성 스택을 개발해 왔습니다. 약 6 개月前에 저는 Sentry 를 유료로 지불하고 여러 서비스를 호스팅 (otel collector, prometheus, grafana...) 했지만 여전히 원하는 모든 기능을 갖지 못해 매우 좌절했습니다.
따라서 저는 다음을 갖춘 플랫폼을 구축했습니다: 커스텀 대시보드, 세션 재생, 로그, 트래스, 메트릭스, 그리고 그룹화된 예외. 모두 연결되어 있습니다. 시스템의 어느 곳이나 클릭할 수 있고, 다른 곳으로 이동할 수 있습니다. 웹과 Flutter 의 SDK 도 존재합니다.
이 프로젝트의 전체 목표는 완전히 오픈소스이며, FSL(Free Software License) 없음, BSL(Business Source License) 없음, BS(비즈니스 소스) 없음, 쉽게 자체 호스팅할 수 있는 오픈소스 도구입니다.
대시보드 및 메트릭스 (백엔드)
- 여러 차트 타입을 갖춘 커스텀 대시보드 빌더
- 실제로 보는 메트릭스를 홈피지에 핀
- OTLP 를 통해 방출할 수 있는 모든 차원은 쿼리 가능 / 차트 가능
- OpenTelemetry-native 설치해야 할 독점 SDK 없음, 기존 OTLP 익스포터를 컬렉터에 연결하면 끝
세션 재생 (프론트엔드 + 모바일)
- 웹: rrweb 기반 DOM 캡처, 트래스와 예외에 자동으로 첨부됨
- Flutter: mp4 녹화, 오픈소스 모바일 재생, 이 공간에서 보통 빈칸
- 둘 다 각 예외 전 약 10 초를 유지 (전 세션 모드라면 모든 것이 유지됨)
- 오류 클릭 → 사용자의 행동 관찰 → 실패한 스패인 확인 → 소스 매핑된 스택 확인, 하나의 워크플로우
로그, 트래스, 예외
- 로그 검색 + 트래스 연결
- 서비스 간 분산 트래스 폭포수
- 예외 SHA-256 그룹화, webpack / esbuild / Vite 소스 매핑
- AI/LLM 트래싱: 토큰, 비용, 지연 시간 및 대화 가시성
자체 호스팅
- MIT 라이선스. BSL 없음, FSL 없음, "오픈 코어" 기능 게이트 없음 — 클라우드와 동일한 빌드.
git clone && docker compose up -d — 대시보드 localhost:3000
- 스택: Go, ClickHouse, Postgres, OTel collector
- ClickHouse 압축으로 약 1M 이벤트/일 ≈ 2GB/월 디스크, 따라서 리텐션은 예산 대화 없음
- 배포에 막힌 경우 DM 하거나 저장소에서 이슈를 열고 제가 직접 참여할 것입니다
링크
아키텍처
- 중형 프로젝트 - 모든 것을 단일 컴퓨터에 호스팅, sqlite 사용 (Railway 로 2 분 설정) - 모바일 앱 및 사이드 프로젝트에 이상적
- 대형 프로젝트 - Clickhouse, Postgresql, S3 와 함께 모든 것을 호스팅 - 호스팅은 복잡하지만 스케일링이 매우 잘됨
그것이 전부입니다. 이 서브에서 피드백을 원합니다. 무엇이 빠졌는지, 혼란스러운 것이 무엇인지, 실제로 시도하게 할 것이 무엇인지. 현재 Sentry 를 지불하고 도움이 필요하거나 자체 호스팅에 벽을 맞았으면 DM 하거나 GitHub 이슈, 이메일로 직접 연락하세요. 가장 쉬운 방법입니다. 누구든 genuinely 도와드릴 것입니다. 이 것을 더 잘 만드는 가장 빠른 방법은 사람들이 실제로 배포하는 데 도움을 주는 것입니다.
[수정]: 90 초 배포 주장에 대해 완전히 명확하게 하기 위해, 저는 Railway 로 타이밍했습니다. 전체 가이드는 여기: https://docs.tracewayapp.com/server/sqlite#deploying-to-railway