Skip to Content
가이드운영 가이드

운영 · 모니터링

발송 요청은 발송 큐(아직 끝나지 않은 발송)를 거쳐 처리되고, 처리가 끝나면 전송 시도 로그로 남습니다. 대시보드의 모니터링 그룹(발송 큐 · 전송 시도 · 감사 로그)과 개요 화면에서 이 흐름 전체를 추적할 수 있습니다. 모니터링 화면은 viewer를 포함한 모든 역할이 조회할 수 있습니다.

개요 대시보드와 메트릭 차트

개요 화면은 워크스페이스의 발송 현황을 한눈에 보여줍니다.

  • KPI 카드: 총 요청, 성공률(성공 시도 ÷ 전체 시도), 실패, 발송 큐 활성 잡 수. 실패(DLQ) 잡이 있으면 경고 톤으로 강조됩니다.
  • 트래픽 지표: 기본 최근 24시간이며 시작/종료 시각을 지정해 재조회할 수 있습니다. 채널별 시도(막대 차트)와 상태별 분포(도넛 차트)를 제공합니다.
  • 최근 실패한 전송: 최근 실패 5건을 바로 보여주며, 행을 클릭하면 시도 상세로 이동합니다.

메트릭은 API로도 조회할 수 있습니다.

curl "https://api.posmit.io/v1/metrics?from=2026-07-09T00:00:00Z&to=2026-07-10T00:00:00Z" \ -H "Authorization: Bearer YOUR_DASHBOARD_ACCESS_TOKEN"
{ "from": "2026-07-09T00:00:00.000Z", "to": "2026-07-10T00:00:00.000Z", "totalRequests": 1240, "byStatus": { "sent": 1180, "failed": 42, "queued": 18 }, "byChannel": { "sms": 820, "email": 300, "kakao_alimtalk": 120 }, "totalAttempts": 1305, "successAttempts": 1180, "failedAttempts": 125 }

발송 큐

모니터링 › 발송 큐는 아직 끝나지 않은 발송(예약 · 대기 · 처리 · 재시도)을 보여줍니다. 처리가 끝난 건은 전송 시도 로그로 넘어갑니다.

상태라벨의미
scheduled예약됨예약 시각까지 대기 중
queued대기중큐에 적재되어 처리 순서를 기다리는 중
processing처리중워커가 발송을 진행 중
retrying재시도 대기실패 후 다음 재시도를 기다리는 중
dead_letter실패(DLQ)재시도까지 모두 소진되어 최종 실패

화면 상단 배너에는 현재 워크스페이스의 발송 속도 제한(N 건/초 또는 무제한), 처리 대기 건수, 예상 소진 시간이 표시됩니다. 검색어(수신자 · 요청 ID · 템플릿 · 공급자), 채널, 상태로 필터링할 수 있고 필터는 URL에 유지되어 링크로 공유할 수 있습니다.

예약 취소scheduled 상태의 잡에서만 가능합니다. 취소하면 되돌릴 수 없습니다.

curl -X POST https://api.posmit.io/v1/jobs/YOUR_JOB_ID/cancel \ -H "Authorization: Bearer YOUR_DASHBOARD_ACCESS_TOKEN"

목록 조회는 GET /v1/jobs입니다. 각 잡에는 시도 횟수(attemptCount/maxAttempts), 다음 재시도 시각, 마지막 오류 코드가 포함됩니다.

전송 시도 조회

모니터링 › 전송 시도는 공급자에 대한 발송 시도(attempt) 단위의 완료 기록입니다. 하나의 요청이 폴백을 거치면 공급자별로 여러 시도가 남을 수 있습니다.

curl "https://api.posmit.io/v1/dispatches?limit=100&requestId=YOUR_REQUEST_ID" \ -H "Authorization: Bearer YOUR_DASHBOARD_ACCESS_TOKEN"
  • 목록에는 시각, 공급자, 상태(success/failure), 요청 ID, 실패 사유(코드 + 메시지)가 표시됩니다.
  • 상태 · 채널 · 공급자 · 검색어 필터는 URL에 유지됩니다. 예를 들어 ?status=failure로 실패 건만 모아 보는 링크를 공유할 수 있습니다.
  • 요청 ID로 조회하면 특정 발송 요청의 모든 시도를 추적할 수 있습니다.

행을 클릭하면 상세 화면에서 다음을 확인할 수 있습니다.

  • 시도 ID, 공급자, 시작/종료 시각, HTTP 응답 코드, 지연 시간(ms)
  • 발송 요청 정보: 템플릿, 수신자, 변수, 렌더링된 최종 본문(실제로 발송된 제목 · 텍스트 · HTML)
  • 공급자 원문 응답(body/headers JSON) — 실패 건은 기본으로 펼쳐져 있어 원인 파악에 바로 쓸 수 있습니다

감사 로그

모니터링 › 감사 로그는 워크스페이스에서 일어난 변경 이력을 기록합니다. 누가(수행자), 언제, 무엇을(대상), 어떻게(변경 내용) 바꿨는지 남습니다.

curl "https://api.posmit.io/v1/logs/audit?limit=100" \ -H "Authorization: Bearer YOUR_DASHBOARD_ACCESS_TOKEN"

기록되는 액션의 예는 다음과 같습니다.

분류액션
워크스페이스workspace.updated
공급자provider.create / provider.test_send
라우팅route.replace
API 키api_key.create / rotate / revoke / suspend / resume / update
템플릿template.create / template.version.create / template.version.publish
웹훅webhook.create / update / rotate_secret / delete
제한 정책rate_limit.workspace.upsert / rate_limit.api_key.upsert
SES 온보딩ses.domain.connect / ses.domain.adopt / ses.email_identity.verify / ses.callback_secret.rotate / ses.callback_secret.finalize

수행자가 없는 항목(actorUserId가 null)은 시스템이 수행한 작업입니다. 화면에서는 검색어, 액션, 대상 타입, 수행자로 필터링할 수 있습니다.

요청 제한과 발송 속도 제한

두 기능은 서로 다른 개념입니다. 요청 제한은 Posmit으로 “들어오는” API 호출 횟수를 제한하고, 발송 속도 제한은 Posmit이 공급자로 “내보내는” 발송 처리량(TPS)을 제한합니다. 혼동하지 않도록 주의하세요.

두 정책 모두 저장 · 수정은 오너 또는 관리자만 가능합니다.

요청 제한 (Rate Limit — 들어오는 API 호출)

조직 설정 › 요청 제한에서 워크스페이스 기본 정책을 설정합니다.

  • 시간 창(windowSeconds, 13600초)당 최대 요청 수(maxRequests, 11,000,000)를 지정합니다.
  • 워크스페이스 정책은 모든 API 키 사용량 합산에 항상 적용되는 상한입니다. 각 API 키 상세 › 요청 제한 탭에서 키 전용 정책을 두면 해당 키의 기본 키 한도(600회/60초) 가 그 정책으로 대체됩니다. 두 한도(워크스페이스 + 키)는 매 요청 모두 검사됩니다.
curl -X PUT https://api.posmit.io/v1/limits/rate/workspace \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_DASHBOARD_ACCESS_TOKEN" \ -d '{ "windowSeconds": 60, "maxRequests": 120, "enabled": true }'

발송 속도 제한 (Dispatch Limit — 나가는 발송 TPS)

큐에서 공급자로 나가는 발송 처리량을 초당 건수(TPS)로 제어합니다. 발송 큐가 소진되는 속도가 이 값에 맞춰집니다.

스코프대상설정 위치
workspace워크스페이스 전체 기본값조직 설정 › 발송 속도 제한
provider특정 공급자 계정채널 › 공급자 상세
apiKey특정 API 키API 키 상세 › 요청 제한 탭

여러 스코프의 제한이 동시에 활성화되어 있으면 실효값은 그중 최솟값(가장 엄격한 값)입니다. 활성 제한이 하나도 없으면 무제한으로 동작합니다.

# 워크스페이스 기본 TPS를 200건/초로 설정 curl -X PUT https://api.posmit.io/v1/limits/dispatch \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_DASHBOARD_ACCESS_TOKEN" \ -d '{ "scope": "workspace", "ratePerSecond": 200, "enabled": true }'

provider 또는 apiKey 스코프로 저장할 때는 targetId에 각각 공급자 계정 ID, API 키 ID를 함께 보냅니다. 오버라이드를 해제하려면 DELETE /v1/limits/dispatch/YOUR_LIMIT_ID를 호출하면 워크스페이스 기본값으로 복귀합니다.

요청 제한의 초과 응답과 재시도 처리 등 API 관점의 상세는 요청 한도 문서를 참고하세요.

Last updated on