가시성(Observability)
로그, 요청 ID, 메트릭, 오류, 세션, 감사 로그.
가시성(Observability)
ObjectOS 운영에는 인프라 신호와 애플리케이션 신호가 모두 필요합니다. 프레임워크는 request-id, 메트릭, 오류 리포터, 감사 프리미티브를 제공하며, 이를 어디로 내보낼지는 배포 환경에서 결정합니다.
요청 식별자
모든 프로덕션 배포는 요청 ID를 전파하거나 생성해야 합니다.
X-Request-Id이를 사용해 다음을 상호 연관시킵니다.
- 인그레스 로그;
- ObjectOS 로그;
- 데이터베이스 슬로우 쿼리;
- 오류 보고서;
- 고객 지원 티켓.
메트릭과 오류
런타임은 플러그형 메트릭 및 오류 리포터 인터페이스를 노출합니다. 이를 Prometheus, OpenTelemetry, Datadog, Sentry 또는 그 밖에 승인된 백엔드 등 고객이 선택한 시스템에 연결하십시오.
최소한 다음 항목을 추적하십시오.
| 신호 | 이유 |
|---|---|
| 라우트/상태별 요청 수 | 오류 급증 감지 |
| 요청 소요 시간 | 지연 시간 회귀 감지 |
| 5xx 오류 | 런타임 장애에 대한 알림 |
| 인증 실패 | 구성 오류 또는 공격 패턴 감지 |
| Artifact/kernel 캐시 미스 | 콜드 스타트 동작 이해 |
최소 Prometheus 예제
메트릭 서비스가 활성화되면 ObjectOS는 Prometheus 호환 메트릭 엔드포인트를 노출합니다.
# prometheus.yml
scrape_configs:
- job_name: objectos
metrics_path: /metrics
static_configs:
- targets: ['objectos:3000']유용한 시작용 알림:
groups:
- name: objectos
rules:
- alert: ObjectOS5xxSpike
expr: |
sum(rate(http_requests_total{status=~"5.."}[5m]))
/ sum(rate(http_requests_total[5m])) > 0.02
for: 5m
annotations:
summary: "ObjectOS 5xx rate above 2% for 5 minutes"
- alert: ObjectOSAuthFailureSpike
expr: rate(auth_failures_total[5m]) > 5
for: 10m
annotations:
summary: "Sustained auth failure rate — check for misconfiguration or attack"
- alert: ObjectOSKernelColdStartHigh
expr: rate(kernel_cache_misses_total[15m]) > 1
for: 15m
annotations:
summary: "Frequent project kernel cold starts — consider raising OS_KERNEL_CACHE_SIZE"OpenTelemetry의 경우 OS_OBS_EXPORTER=otlp와 OS_OTLP_ENDPOINT
(예: https://<collector>/otlp)를 설정하면 ObjectOS가 OTLP 형식으로 트레이스와
메트릭을 내보냅니다. 익스포터의 기본값은 noop(런타임 비용 0)이므로 OTLP
내보내기는 옵트인입니다 — OS_OBS_EXPORTER=otlp 없이 엔드포인트만 설정하면 아무것도
내보내지 않습니다. 로컬 디버깅에는 OS_OBS_EXPORTER=console 또는 json을, 배포에
태그를 붙이려면 OS_OBS_DEPLOYMENT_ENV(기본값 production)를 사용하세요. 스팬의
형태는 요청 흐름과 일치합니다.
감사 로그
감사 기능이 활성화되면 ObjectOS는 감사 레코드를 sys_audit_log에 기록합니다.
감사 로그는 다음 용도로 사용합니다.
- 권한에 민감한 변경;
- 설정 변경;
- 사용자/세션 조사;
- 통합 활동;
- 거부된 접근 분석.
규제 환경에서는 데이터베이스 또는 스토리지 계층에서 감사 테이블을 추가 전용(append-only)으로 만들고 보존 정책을 정의하십시오.
Console 진단
Console은 다음과 같은 운영 화면을 노출합니다.
- Sessions;
- Audit Logs;
- Notifications;
- 웹훅이 활성화된 경우 Webhook Deliveries;
- 시스템 및 보안 개요 대시보드.
이는 개발자뿐 아니라 운영자와 지원 엔지니어를 위한 것입니다.