Skip to main content

Observability

vNext observable-by-default prensibiyle (bkz. #7) tasarlanmıştır: bir akış canlıya çıktığı an gözlemlenmektedir, ek enstrümantasyon gerekmez.

Telemetri Veri Akışı

Sinyaller

Distributed Tracing

  • Standart: OpenTelemetry (OTLP)
  • Instrumentation: HTTP, Dapr (service invocation, pub/sub), DB, Redis, custom spans
  • Custom spans & events:
    • workflow.transition — geçiş tetiklenmesi
    • workflow.task.execute — task yürütümü
    • workflow.script.run — Roslyn script çalışması
    • workflow.outbox.publish — outbox event yayını
  • Correlation:
    • Parent ↔ child workflow ilişkisi (sub-workflow)
    • HTTP / pub-sub trace context propagation
    • Instance ID + correlation ID her span'de

Structured Logging

  • Format: JSON (machine-readable)
  • Standart alanlar: timestamp, level, service, domain, workflow_id, instance_id, trace_id, span_id, correlation_id
  • Sensitive data: PII alanları redaction layer'dan geçer
  • Sink: OpenTelemetry Logs → Loki / ELK

Metrics

KategoriÖrnek MetrikKaynak
HTTPrequest rate, latency p50/p95/p99, error rateOrchestration / Execution API
Workflowtransition count, transition duration, active instance countExecution API
Tasktask execution duration, success/failure, retry countExecution API
Cache (Redis)hit/miss ratio, eviction count, latencyRedis exporter
Database (PostgreSQL)connection pool, slow query, lock waitPG exporter
Pub/Subpublish rate, consume lag, DLQ rateDapr / broker exporter
Outboxdrain rate, backlog size, publish failureOutbox worker
Inboxinbox lag, dedupe hit, apply failureInbox worker

Persistent Metrics (ClickHouse)

Prometheus kısa vadeli (default 15 gün) saklama yapar. Uzun vadeli trend ve SLO raporu için OpenTelemetry metrics → ClickHouse pipeline'ı kullanılır:

  • Saklama süresi: Yıllar bazında konfigüre edilebilir
  • Kullanım amacı: SLO compliance raporu, trend analizi, kapasite planlama, audit
  • Sorgu modeli: SQL üzerinden time-series + analitik
  • Avantaj: PostgreSQL audit ile aynı analitik motor; cross-join mümkün

Health Endpoints

ServisEndpointProbe Tipi
Orchestration API:4201/healthliveness + readiness
Execution API:4202/healthliveness + readiness
Inbox Worker/health (workers HTTP host)liveness
Outbox Worker/health (workers HTTP host)liveness

Kubernetes deployment'larda livenessProbe ve readinessProbe bu endpoint'lere bağlanır. Health-based traffic sayesinde sağlıksız replica'ya istek gitmez.

SLO Bağlantısı

Product roadmap Now fazında "Operasyonel SLO" işlendi. Bu sayfa o SLO'ların ölçüm altyapısını sağlar:

  • Availability: health endpoint + HTTP success rate
  • Latency: HTTP p99 + transition duration p99
  • Throughput: transition rate + outbox publish rate
  • Error budget: error rate + DLQ rate

Detay: Product / Roadmap — Now

Çapraz Bağlantılar