
이상 탐지, ACL 감사 및 Prometheus 메트릭 내보내기를 지원하는 Valkey 및 Redis 데이터베이스용 실시간 모니터링 및 slowlog 분석 도구입니다.
Valkey에 걸맞은 모니터링 계층.
BetterDB는 Valkey가 버리는 것들 - slowlog, 명령 패턴, 클라이언트 활동, 이상 징후 신호 - 을 영속화하여, 새벽 3시에 무슨 일이 있었는지 디버깅할 수 있게 해줍니다. 단순히 지금 무슨 일이 일어나고 있는지가 아니라 말이죠. COMMANDLOG, CLUSTER SLOT-STATS, 스레드별 I/O 메트릭을 네이티브로 지원하며 Valkey 8.x를 위해 만들어졌습니다. 그 외의 모든 기능은 Redis 6+와 호환됩니다.
웹사이트 | Docker Hub | npm | 문서 | 블로그
BetterDB는 OCV Open Charter에 따라 운영되는 공익 기업인 BetterDB Inc.가 만들었습니다.

docker run -d --name betterdb -p 3001:3001 betterdb/monitor:latest
브라우저에서 http://localhost:3001로 접속하세요. 특정 인스턴스를 모니터링하려면:
docker run -d \
--name betterdb \
-p 3001:3001 \
-e DB_HOST=your-valkey-host \
-e DB_PORT=6379 \
-e DB_PASSWORD=your-password \
betterdb/monitor:latest
호스트 머신의 데이터베이스에 연결하시나요? 컨테이너 내부에서
localhost는 컨테이너 자신을 가리키며, 호스트가 아닙니다 — 따라서 데이터베이스 호스트로host.docker.internal을 사용하세요. Docker Desktop (macOS/Windows) 에서는 별도 설정 없이 작동합니다. Linux 에서는docker run명령에--add-host=host.docker.internal:host-gateway를 추가하여 이름이 해석되도록 하세요. 대시보드의 원클릭 "로컬 인스턴스에 연결" 버튼이 이를 자동으로 감지하여 올바른 호스트를 미리 채워줍니다.
두 가지 이미지 변형이 게시되며, 둘 다 멀티 아키텍처(linux/amd64, linux/arm64)를 지원합니다:
| 태그 | 설명 |
|---|---|
latest, X.Y.Z-no-ai | 기본 이미지 - 실험적인 로컬 LLM AI Helper용 의존성 없이 모든 모니터링 기능 포함 |
X.Y.Z | 실험적인 AI Helper 추가 (자체 Ollama 사용; AI_ENABLED를 통해 기본적으로 비활성화됨) |
영구 저장소, 사용자 지정 포트, 라이선스, 에어갭 설정은 Docker 프로덕션 배포를 참조하세요.
helm repo add betterdb https://docs.betterdb.com/charts
helm repo update
helm install betterdb-monitor betterdb/betterdb-monitor \
--namespace betterdb --create-namespace \
--set db.host=my-valkey.default.svc.cluster.local \
--set db.password=yourpassword
그런 다음 kubectl port-forward -n betterdb svc/betterdb-monitor 3001:3001를 실행하고 http://localhost:3001을 열거나, 차트의 인그레스를 활성화하세요. PostgreSQL 기반 히스토리, 자체 Secrets 사용, 에어갭 라이선싱은 모두 Kubernetes 가이드와 차트 README에서 다룹니다.
Docker 없이 BetterDB Monitor를 실행하세요:
npx @betterdb/monitor
첫 실행 시, 대화형 설정 마법사가 데이터베이스 연결, 스토리지 백엔드(SQLite, PostgreSQL 또는 인메모리), 서버 설정을 안내합니다. 구성은 ~/.betterdb/config.json에 저장됩니다.
npm install -g @betterdb/monitor # global install
betterdb --setup # re-run setup wizard
betterdb --port 8080 # override server port
betterdb --db-host 1.2.3.4 # override database host
betterdb --help # all options
Node.js >= 20.0.0과 모니터링할 Valkey 또는 Redis 인스턴스가 필요합니다. SQLite 저장소를 사용하려면 npm install -g better-sqlite3도 필요합니다.
@betterdb/mcp를 통해 Claude Code, Cursor 또는 모든 MCP 클라이언트를 위한 60개 도구.betterdb_* 메트릭. docs/prometheus-metrics.md를 참조하세요.| 인터페이스 | 세부 정보 |
|---|---|
| 웹 UI | http://localhost:3001 |
| MCP 서버 | npx @betterdb/mcp (stdio) - Settings → MCP Tokens에서 토큰 생성 (클라우드에서는 필수, 자체 호스팅에서는 선택) |
| Prometheus | http://localhost:3001/api/prometheus/metrics |
| REST API (OpenAPI) | http://localhost:3001/docs |
| 상태 확인 | http://localhost:3001/api/health |
참고: 프로덕션 빌드(Docker, CLI)에서는 API 라우트가
/api접두사 아래에서 제공됩니다. 로컬 개발(pnpm dev)에서는 접두사가 없습니다 - 예:http://localhost:3001/health.
| 데이터베이스 | 최소 버전 | 지원되는 기능 |
|---|---|---|
| Valkey | 8.0+ | COMMANDLOG (8.1+) 및 CLUSTER SLOT-STATS를 포함한 모든 기능 |
| Redis | 6+ | Valkey 전용 COMMANDLOG 및 CLUSTER SLOT-STATS를 제외한 모든 기능 |
백엔드는 와이어 호환 iovalkey 클라이언트 위에 통합 어댑터를 사용하며 INFO 응답에서 Valkey와 Redis를 자동 감지합니다 (DB_TYPE=auto). COMMANDLOG 및 SLOT-STATS와 같은 기능은 버전별로 감지되며, 기능을 사용할 수 없을 때 UI는 자연스럽게 성능이 저하됩니다.
관리형 서비스도 지원됩니다 - AWS ElastiCache, MemoryDB, Redis Cloud, Upstash에 대한 가이드는 docs/providers에 있으며, @betterdb/agent는 아웃바운드 WebSocket을 통해 VPC 전용 인스턴스에 도달합니다.
Docker 이미지에는 모니터링 애플리케이션(백엔드 + 프론트엔드)이 포함되어 있습니다. 필요한 것: