Skip to main content

Observability with LGTM on Compose

Containerized TraderX runtime (state 006) with an LGTM observability layer for local learning.

  • Generated from: system/architecture.model.json
  • Canonical flows: system/end-to-end-flows.md

Architecture Diagram​

Diagram source
flowchart LR
  developer["Developer"]
  app_runtime["TraderX App Runtime (State 006)"]
  obs_runtime["Observability Runtime"]
  ingress["NGINX Ingress"]
  core_services["Core Services"]
  prometheus["Prometheus"]
  blackbox["Blackbox Exporter"]
  loki["Loki"]
  promtail["Promtail"]
  tempo["Tempo"]
  otel["OpenTelemetry Collector"]
  grafana["Grafana"]
  developer -->|"Uses TraderX"| ingress
  ingress -->|"Routes API/UI traffic"| core_services
  blackbox -->|"HTTP probes"| core_services
  prometheus -->|"Scrapes probe metrics"| blackbox
  promtail -->|"Ships logs"| loki
  otel -->|"Exports traces"| tempo
  developer -->|"Views observability dashboards"| grafana
  grafana -->|"Queries metrics"| prometheus
  grafana -->|"Queries logs"| loki
  grafana -->|"Queries traces"| tempo

Node Catalog​

NodeKindLabelNotes
developeractorDeveloperLocal developer using this state.
app_runtimeboundaryTraderX App Runtime (State 006)Baseline containerized TraderX services.
obs_runtimeboundaryObservability RuntimeLGTM + OTel stack for metrics/logs/traces.
ingressserviceNGINX IngressEdge entrypoint for UI and service proxy.
core_servicesserviceCore ServicesAccount, position, trade, processor, people, reference-data, nats-broker, database, UI.
prometheusservicePrometheusScrapes probe and collector metrics.
blackboxserviceBlackbox ExporterHTTP probe exporter for service availability/latency.
lokiserviceLokiLog aggregation backend.
promtailservicePromtailDocker log collector to Loki.
temposerviceTempoTrace backend.
otelserviceOpenTelemetry CollectorOTLP ingest and telemetry routing.
grafanaserviceGrafanaUnified dashboards for metrics, logs, traces.