device icon indicating copy to clipboard operation
device copied to clipboard

Telemetry ved hjelp av otel-collector

Open sechmann opened this issue 1 year ago • 1 comments

Beskrivelse / Essensen

Vi ønsker bedre kontroll på hvordan naisdevice oppfører seg på enhetene.

Investeringsvilje

2 uker

Ikke-mål

  • backend-intrumentering
  • logger (dette kan vi se på senere når go-otel client får støtte for det)

Løsningen i grove trekk

Vi tar i bruk open-telemetry-collector. Denne vil ta i mot metrics og traces. Vi gjør noen naive antakelser om at ingen vil dytte falske data til vår collector.

Opt-out mulighet i klienten for de som måtte ønske det

Sikkert lurt å la URL være en del av bootstrap (men med en hardkodet default), slik at den lar seg overstyre.

Nøkkelmetrikker:

  • alle komponenter:
    • uptime
    • version
  • naisdevice-helper
    • antall WireGuard config syncs
    • antall routes
  • naisdevice-systray
    • redraws (hvis mulig)
    • agentstatuses received
  • naisdevice-agent
    • tid brukt i hver state (i state machine) før man går til neste
    • antall configs mottatt fra apiserver
    • tid fra login til første gateway er connected
    • helsesjekker som har feilet (mot gateways)

Antar vi vil legge til flere metrikker når man først er inne og ser i koden.

Eventuell annen relevant informasjon

  • bruk: https://github.com/open-telemetry/opentelemetry-go
  • venter på: https://github.com/nais/o11y/issues/4
graph LR;
A[device-agent]  -- grpc --> L
B[device-systray] -- grpc --> L
C[device-helper] -- grpc --> L
L{Load Balancer} -- grpc --> D[otel-collector]
D --> P[Prometheus]
D --> T[Tempo]

superseeds #355

sechmann avatar Feb 14 '24 10:02 sechmann

Nothing has happened here for a while (60 days), marking as stale. Add preserve label to avoid deletion

github-actions[bot] avatar Apr 16 '24 12:04 github-actions[bot]