MCPcopy Create free account
hub / github.com/TheThingsNetwork/lorawan-stack / setupGRPC

Method setupGRPC

pkg/component/grpc.go:49–70  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

47}
48
49func (c *Component) setupGRPC() (err error) {
50 for _, sub := range c.grpcSubsystems {
51 sub.RegisterServices(c.GRPC.Server)
52 }
53 metrics.InitializeServerMetrics(c.GRPC.Server)
54 c.logger.Debug("Starting loopback connection")
55 c.loopback, err = rpcserver.StartLoopback(
56 c.ctx, c.GRPC.Server,
57 rpcclient.DefaultDialOptions(
58 // Suppress loopback client logs, because we already have server logs.
59 log.NewContext(c.ctx, log.Noop),
60 )...,
61 )
62 if err != nil {
63 return errors.New("could not start loopback connection").WithCause(err)
64 }
65 c.logger.Debug("Setting up gRPC gateway")
66 for _, sub := range c.grpcSubsystems {
67 sub.RegisterHandlers(c.GRPC.ServeMux, c.loopback)
68 }
69 return nil
70}
71
72// LoopbackConn returns the loopback gRPC connection to the component.
73// This conn must *not* be closed.

Callers 1

StartMethod · 0.95

Implementers 1

Componentpkg/component/component.go

Calls 9

InitializeServerMetricsFunction · 0.92
StartLoopbackFunction · 0.92
DefaultDialOptionsFunction · 0.92
NewContextFunction · 0.92
NewFunction · 0.92
RegisterServicesMethod · 0.65
DebugMethod · 0.65
RegisterHandlersMethod · 0.65
WithCauseMethod · 0.45

Tested by

no test coverage detected