Free
영구 무료
운영 환경에 연결해 모든 것을 볼 수 있습니다.
- 모든 모니터링 화면: 상태, 활동, 잠금, Vacuum 및 비대화, 복제, 스토리지, 느린 쿼리
- TLS, SSH 터널, 지문 고정, Face ID를 갖춘 연결 무제한
- 서버 측 필터, 외래 키, CSV·JSON 내보내기를 지원하는 데이터 브라우저
- 읽기용 SQL 콘솔(읽기 전용 트랜잭션 안에서 실행)
- SQL 분류기와 그 설명
iPhone용 HeapDeck: Postgres® Monitor
Postgres 알림이 울렸는데 노트북은 집에 있다면? HeapDeck은 어떤 세션이 차단하고 있는지, wraparound까지 얼마나 남았는지, 어느 스탠바이가 뒤처지는지 보여 주고, iPhone에서 바로 조치할 수 있게 해 줍니다. 지금은 급한 불을 끄고, 근본적인 수정은 자리로 돌아가서 하면 됩니다.
“잠금” 화면은 pg_blocking_pids() 결과로 차단 트리를 만들고 차단 루트를 맨 위에 둡니다. 루트의 pid, user@app, 잠금을 잡고 있는 시간, 실행 중인 내용이 표시됩니다. 그 아래에는 대기열에 막혀 있는 모든 세션이 나옵니다.
RowExclusiveLock on public.orders처럼 무엇을 기다리는지 표시됩니다. idle in transaction 상태로 버티는 루트는 따로 표시되고, 데드락은 데드락으로 표시됩니다.
“Vacuum 및 비대화” 화면은 서버가 트랜잭션 ID wraparound에 얼마나 가까운지 2³¹ 대비 비율로 보여 주고, relfrozenxid 나이 기준으로 가장 오래된 테이블을 함께 보여 줍니다. 한계에 도달하면 PostgreSQL은 database is not accepting commands to avoid wraparound data loss 오류를 내며 쓰기를 거부합니다.
DROP INDEX CONCURRENTLY를 복사해 줄 뿐, 직접 실행하지 않습니다. VACUUM (ANALYZE) 또는 ANALYZE를 실행할 수 있습니다. VACUUM FULL은 먼저 테이블 이름을 입력해야 합니다. PRO
HeapDeck은 iPhone에서 서버로 직접, 또는 SSH 배스천을 거쳐 연결합니다. 중간에 HeapDeck 서버가 없고 계정도 없습니다. AI 어시스턴트를 설정했다면 어시스턴트는 내가 선택한 제공업체와만, 내 키로 통신합니다.
sslmode=require입니다. 인증서의 SHA-256 지문을 고정하며, 인증서가 바뀌면 결정할 때까지 연결을 멈춥니다. GRANT pg_monitor를 정확히 보여 줍니다.
첫 화면에는 상태 타일 10개가 있고 타일마다 네이티브 화면이 연결되어 있어, 휴대폰 키보드로 psql을 입력할 일이 없습니다. 필요할 때는 SQL 콘솔도 있으며, 모든 구문을 실행 전에 검사합니다.
하나의 종합 판정과 타일 10개: max_connections 대비 세션 수, 차단된 세션, 가장 오래 실행된 쿼리, TPS, 캐시 적중, autovacuum, wraparound, 복제, 데이터베이스 크기, 느린 쿼리. 화면이 열려 있는 동안 10초마다 새로 고칩니다.
pg_stat_activity의 모든 세션을 대기 중인 것부터 보여 줍니다. 활성, idle in transaction, 10초 초과, 대기 중으로 필터링할 수 있습니다. 행을 스와이프하면 취소하거나 종료할 수 있습니다.
스탠바이별 재생 지연을 WAL 단계별로 나눠 보여 줍니다. 모든 슬롯이 보존 중인 WAL을 표시하고, 비활성 슬롯이 디스크를 채우고 있으면 경고합니다.
pg_stat_statements에서 가장 무거운 구문 300개를 총 시간, 평균, 호출 수, 행 수로 정렬해 보여 주고, 지금 그 구문을 실행 중인 세션도 보여 줍니다(PostgreSQL 14 이상).
테이블을 둘러보고, 서버에서 필터링하고, 외래 키를 따라가고, 페이지를 CSV나 JSON으로 내보낼 수 있습니다. 콘솔은 입력하는 동안 각 구문을 분류하며, Free에서는 읽기를 BEGIN READ ONLY 안에서 실행합니다.
인시던트나 잠금 체인을 설명하고 수정안을 작성합니다. 내 API 키나 내 Ollama를 사용합니다. 어시스턴트는 마스킹된 스냅샷을 받으며, 스스로 아무것도 실행하지 않습니다.
샘플 데이터를 넣은 HeapDeck 1.0입니다. iOS처럼 다크와 라이트 모드로 보여 줍니다.
pg_stat_statements 기반 느린 쿼리
pg_monitor가 없다면? 무엇이 가려졌고 어떻게 고치는지 알려 줍니다
먼저 내 운영 환경에서 사용해 보십시오. 서버가 몇 대이든 모니터링 화면은 모두 무료입니다. Pro는 US$29.99 1회 구입으로 조치 기능을 잠금 해제합니다. 구독도 계정도 없습니다.
영구 무료
운영 환경에 연결해 모든 것을 볼 수 있습니다.
US$29.99
1회 구입
조치가 필요한 순간을 위해.
VACUUM, ANALYZE, 복제 슬롯 삭제 Pro 작업은 Free에서도 PRO 표시와 함께 보이므로 무엇을 하는지 확인할 수 있습니다. 어시스턴트는 내장 데모 인시던트에서는 무료로 작동합니다. 미국 외 지역에서는 App Store가 현지 통화로 가격을 표시합니다.
HeapDeck은 iPhone에서 접근할 수 있는 PostgreSQL 13–18 서버라면 자체 호스팅이든 관리형이든, 프라이머리든 스탠바이든 작동합니다. 롤이 슈퍼유저가 아니면 화면에 무엇이 가려졌는지와 이를 해결하는 GRANT pg_monitor를 보여 줍니다.
관리형 제공업체는 iOS에 포함되지 않은 루트로 인증서에 서명합니다. 이런 경우 sslmode=require를 사용하십시오. 연결은 암호화되며, HeapDeck은 첫 연결 때 인증서 지문을 고정합니다.
네. 연결에서 SSH 터널을 켜고 배스천의 호스트, 사용자, 비밀번호 또는 키를 입력하십시오. 키는 암호화되지 않은 OpenSSH 형식의 Ed25519 키여야 합니다. 배스천 자체의 호스트 키는 Ed25519 또는 ECDSA일 수 있으며, 첫 연결 때 고정됩니다.
버전 1.0은 RSA 키, 키 암호가 설정된 키, 일회용 코드, 점프 호스트 체인을 지원하지 않습니다.
HeapDeck은 서버에 직접, 또는 SSH 배스천을 거쳐 연결합니다. HeapDeck 서버도 계정도 없습니다. 비밀번호, SSH 키, 고정된 지문은 이 기기의 iOS Keychain에 보관되며 iCloud와 동기화되지 않습니다.
휴대폰 밖으로 나갈 수 있는 것은 두 가지이며, 둘 다 사용자가 제어합니다. 설정한 AI 제공업체에 보내는 질문(Pro), 그리고 첫 실행 때나 설정에서 끌 수 있는 충돌 보고서와 사용 횟수 집계입니다. 어느 쪽에도 SQL, 테이블 이름, 호스트 이름, 값, 자격 증명은 들어 있지 않습니다. 자세한 내용은 개인정보 처리방침에 있습니다.
아니요. 모니터링 화면에는 pg_monitor를 가진 롤이면 충분합니다: GRANT pg_monitor TO your_role;. 이 권한이 없어도 HeapDeck은 작동하며, 서버가 롤에게 숨기는 항목을 표시합니다. 다른 롤의 세션을 취소하려면 pg_signal_backend 같은 일반적인 PostgreSQL 권한이 필요합니다.
취소(pg_cancel_backend)는 세션이 실행 중인 쿼리를 멈추며, 세션과 트랜잭션은 열린 채로 남습니다. 종료(pg_terminate_backend)는 세션 전체를 끊고 트랜잭션을 롤백합니다.
idle in transaction 상태인 세션에는 실행 중인 쿼리가 없으므로 취소해도 아무 일도 일어나지 않습니다. 잠금을 풀어 주는 것은 종료입니다. HeapDeck은 잠금 체인의 루트나 “운영” 연결의 세션을 종료하기 전에 pid를 입력하게 합니다.
Free에서는 쓰기가 전혀 일어나지 않습니다. 콘솔의 읽기는 BEGIN READ ONLY … ROLLBACK 안에서 실행됩니다. Pro에서는 모든 쓰기가 네 가지 검사를 차례로 거칩니다: Pro, 연결의 “읽기 전용” 스위치, SQL 분류기, 그리고 사용자의 확인.
VACUUM FULL, 슬롯 삭제, 잠금 루트 종료는 먼저 테이블 이름, 슬롯 이름 또는 pid를 입력해야 합니다. “운영”으로 표시한 연결에는 PROD 배지가 붙고 확인 절차가 더 엄격해집니다.
물론 그렇게 해도 됩니다. HeapDeck은 인시던트 때 확인할 질문마다 전용 화면이 있어 휴대폰 키보드로 쿼리를 입력하지 않아도 됩니다: 누가 차단하고 있고 몇 개가 기다리는지, 루트가 무엇을 실행 중인지, wraparound까지 얼마나 남았는지, 어느 슬롯이 WAL을 붙잡고 있는지. 조치하기 전에는 잠금 체인을 다시 읽고 확인을 요청합니다.
질문한 화면의 마스킹된 스냅샷입니다. 호스트, 포트, 비밀번호, 키는 들어가지 않으며, 값은 $1 같은 플레이스홀더로 바뀝니다. 클라우드 모델에서는 데이터베이스, 테이블, 열 이름이 기본적으로 숨겨지고, 답변이 도착하면 휴대폰에서 원래대로 되돌립니다.
요청은 iPhone에서 내 키로 선택한 제공업체(Anthropic, OpenAI, OpenRouter, Z.ai)로, 또는 내 Ollama나 OpenAI 호환 서버로 갑니다. “모델이 보는 것”에서 보내기 전에 정확한 텍스트를 확인할 수 있습니다. 어시스턴트는 Pro 기능이며 스스로 SQL을 실행하지 않습니다.
아니요. 모니터링은 무료이고, Pro는 Apple ID에 연결되는 US$29.99 1회 구입입니다. 계정도 체험 기간 제한도 없습니다.
아니요. HeapDeck은 열려 있는 동안 작동하며 백그라운드 모니터링은 하지 않습니다. 기존 알림 체계는 그대로 두십시오. HeapDeck은 호출을 받은 뒤에 여는 화면입니다.
HeapDeck은 iPhone 세로 화면용으로 만들어졌습니다. iPad에서는 iPhone 호환 모드로 실행됩니다.
한밤중에 호출되는 문제를 하나씩 한 페이지에 정리했습니다. 직접 확인하는 SQL과 HeapDeck에서 보이는 화면을 담았습니다. 가이드는 영어로 되어 있습니다.
서버를 추가하고 인증서를 고정하면 모든 모니터링 화면을 무료로 쓸 수 있습니다. Pro는 조치가 필요한 밤을 위해 있습니다.