discovery: +invoke url
This commit is contained in:
@@ -4,6 +4,7 @@ runtime:
|
||||
grpc:
|
||||
network: tcp
|
||||
address: ":50052"
|
||||
advertise_host: "sendico_ledger"
|
||||
enable_reflection: true
|
||||
enable_health: true
|
||||
|
||||
|
||||
@@ -116,7 +116,11 @@ func (i *Imp) Start() error {
|
||||
}
|
||||
|
||||
serviceFactory := func(logger mlogger.Logger, repo storage.Repository, producer msg.Producer) (grpcapp.Service, error) {
|
||||
svc := ledger.NewService(logger, repo, producer, feesClient, feesTimeout)
|
||||
invokeURI := ""
|
||||
if cfg.GRPC != nil {
|
||||
invokeURI = cfg.GRPC.DiscoveryInvokeURI()
|
||||
}
|
||||
svc := ledger.NewService(logger, repo, producer, feesClient, feesTimeout, invokeURI)
|
||||
i.service = svc
|
||||
return svc, nil
|
||||
}
|
||||
|
||||
@@ -44,6 +44,7 @@ type Service struct {
|
||||
producer pmessaging.Producer
|
||||
fees feesDependency
|
||||
announcer *discovery.Announcer
|
||||
invokeURI string
|
||||
|
||||
outbox struct {
|
||||
once sync.Once
|
||||
@@ -61,14 +62,15 @@ func (f feesDependency) available() bool {
|
||||
return f.client != nil
|
||||
}
|
||||
|
||||
func NewService(logger mlogger.Logger, repo storage.Repository, prod pmessaging.Producer, feesClient feesv1.FeeEngineClient, feesTimeout time.Duration) *Service {
|
||||
func NewService(logger mlogger.Logger, repo storage.Repository, prod pmessaging.Producer, feesClient feesv1.FeeEngineClient, feesTimeout time.Duration, invokeURI string) *Service {
|
||||
// Initialize Prometheus metrics
|
||||
initMetrics()
|
||||
|
||||
service := &Service{
|
||||
logger: logger.Named("ledger"),
|
||||
storage: repo,
|
||||
producer: prod,
|
||||
logger: logger.Named("ledger"),
|
||||
storage: repo,
|
||||
producer: prod,
|
||||
invokeURI: strings.TrimSpace(invokeURI),
|
||||
fees: feesDependency{
|
||||
client: feesClient,
|
||||
timeout: feesTimeout,
|
||||
@@ -204,7 +206,7 @@ func (s *Service) startDiscoveryAnnouncer() {
|
||||
announce := discovery.Announcement{
|
||||
Service: "LEDGER",
|
||||
Operations: []string{"balance.read", "ledger.debit", "ledger.credit"},
|
||||
InvokeURI: discovery.DefaultInvokeURI(string(mservice.Ledger)),
|
||||
InvokeURI: s.invokeURI,
|
||||
Version: appversion.Create().Short(),
|
||||
}
|
||||
s.announcer = discovery.NewAnnouncer(s.logger, s.producer, string(mservice.Ledger), announce)
|
||||
|
||||
Reference in New Issue
Block a user