Procházet zdrojové kódy

Expose surveillance spectra bins in refinement API

master
Jan Svabenik před 6 hodinami
rodič
revize
c3bf28297b
1 změnil soubory, kde provedl 25 přidání a 17 odebrání
  1. +25
    -17
      cmd/sdrd/http_handlers.go

+ 25
- 17
cmd/sdrd/http_handlers.go Zobrazit soubor

@@ -165,24 +165,32 @@ func registerAPIHandlers(mux *http.ServeMux, cfgPath string, cfgManager *runtime
snap := phaseSnap.Snapshot()
windowStats := buildWindowStats(snap.refinement.Input.Windows)
arbitration := buildArbitrationSnapshot(snap.refinement, snap.arbitration)
spectraBins := map[string]int{}
for _, spec := range snap.surveillance.Spectra {
if len(spec.Spectrum) == 0 {
continue
}
spectraBins[spec.Level.Name] = len(spec.Spectrum)
}
out := map[string]any{
"plan": snap.refinement.Input.Plan,
"windows": snap.refinement.Input.Windows,
"window_stats": windowStats,
"request": snap.refinement.Input.Request,
"context": snap.refinement.Input.Context,
"detail_level": snap.refinement.Input.Detail,
"arbitration": arbitration,
"work_items": snap.refinement.Input.WorkItems,
"candidates": len(snap.refinement.Input.Candidates),
"scheduled": len(snap.refinement.Input.Scheduled),
"signals": len(snap.refinement.Result.Signals),
"decisions": len(snap.refinement.Result.Decisions),
"surveillance_level": snap.surveillance.Level,
"surveillance_levels": snap.surveillance.Levels,
"display_level": snap.surveillance.DisplayLevel,
"refinement_level": snap.refinement.Input.Level,
"presentation_level": snap.presentation,
"plan": snap.refinement.Input.Plan,
"windows": snap.refinement.Input.Windows,
"window_stats": windowStats,
"request": snap.refinement.Input.Request,
"context": snap.refinement.Input.Context,
"detail_level": snap.refinement.Input.Detail,
"arbitration": arbitration,
"work_items": snap.refinement.Input.WorkItems,
"candidates": len(snap.refinement.Input.Candidates),
"scheduled": len(snap.refinement.Input.Scheduled),
"signals": len(snap.refinement.Result.Signals),
"decisions": len(snap.refinement.Result.Decisions),
"surveillance_level": snap.surveillance.Level,
"surveillance_levels": snap.surveillance.Levels,
"surveillance_spectra_bins": spectraBins,
"display_level": snap.surveillance.DisplayLevel,
"refinement_level": snap.refinement.Input.Level,
"presentation_level": snap.presentation,
}
_ = json.NewEncoder(w).Encode(out)
})


Načítá se…
Zrušit
Uložit