Documentation
¶
Overview ¶
Package grpc provides Chronos's gRPC transport layer. It mirrors the HTTP REST surface: ingest observations and query signals. The gRPC server shares the same domain ports (EntityStateRepository, SignalRepository) as the HTTP server; it is a thin transport adapter only.
Index ¶
- type Server
- func (s *Server) GetSignal(ctx context.Context, req *chronosv1.GetSignalRequest) (*chronosv1.Signal, error)
- func (s *Server) Ingest(ctx context.Context, req *chronosv1.IngestRequest) (*chronosv1.IngestResponse, error)
- func (s *Server) ListSignals(ctx context.Context, req *chronosv1.ListSignalsRequest) (*chronosv1.ListSignalsResponse, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Server ¶
type Server struct {
chronosv1.UnimplementedChronosServiceServer
// contains filtered or unexported fields
}
Server implements chronosv1.ChronosServiceServer.
func NewServer ¶
func NewServer(states ports.EntityStateRepository, signals ports.SignalRepository, metrics *observability.Metrics, logger *slog.Logger) *Server
NewServer wires a gRPC server. Pass slog.Default() for the logger if the caller has no preference. metrics may be nil.
func (*Server) GetSignal ¶
func (s *Server) GetSignal(ctx context.Context, req *chronosv1.GetSignalRequest) (*chronosv1.Signal, error)
GetSignal returns a single signal by ID.
func (*Server) Ingest ¶
func (s *Server) Ingest(ctx context.Context, req *chronosv1.IngestRequest) (*chronosv1.IngestResponse, error)
Ingest persists a single EntityState observation.
func (*Server) ListSignals ¶
func (s *Server) ListSignals(ctx context.Context, req *chronosv1.ListSignalsRequest) (*chronosv1.ListSignalsResponse, error)
ListSignals returns signals matching the provided filter.
Click to show internal directories.
Click to hide internal directories.