@@ -2,9 +2,9 @@ package main
22
33import (
44 "github.com/micro/go-micro/v2"
5+ sgrpc "github.com/micro/go-micro/v2/server/grpc"
56 "github.com/rs/zerolog/log"
67
7- // "github.com/micro/go-micro/v2/service/grpc"
88 "github.com/xmlking/micro-starter-kit/service/account/handler"
99 profilePB "github.com/xmlking/micro-starter-kit/service/account/proto/profile"
1010 userPB "github.com/xmlking/micro-starter-kit/service/account/proto/user"
@@ -19,68 +19,66 @@ import (
1919 validatorWrapper "github.com/xmlking/micro-starter-kit/shared/wrapper/validator"
2020)
2121
22- const (
23- serviceName = constants .ACCOUNT_SERVICE
24- )
22+ func main () {
23+ serviceName : = constants .ACCOUNT_SERVICE
24+ cfg := config . GetConfig ( )
2525
26- var (
27- cfg = config .GetConfig ()
28- )
26+ lis , err := config .GetListener (cfg .Services .Account .Endpoint )
27+ if err != nil {
28+ log .Fatal ().Msgf ("failed to create listener: %v" , err )
29+ }
30+ println (lis .Addr ())
2931
30- func main () {
3132 // New Service
3233 service := micro .NewService (
34+ micro .Server (sgrpc .NewServer (sgrpc .Listener (lis ))), // KEEP-IT-FIRST
3335 micro .Name (serviceName ),
3436 micro .Version (config .Version ),
3537 )
3638
37- // Initialize service
38- service .Init (
39- micro .BeforeStart (func () (err error ) {
40- return
41- }),
42- micro .BeforeStop (func () (err error ) {
43- return
44- }),
45- )
46-
4739 // Initialize Features
4840 var options []micro.Option
41+
4942 if cfg .Features .Tls .Enabled {
5043 if tlsConf , err := config .CreateServerCerts (); err != nil {
5144 log .Error ().Err (err ).Msg ("unable to load certs" )
5245 } else {
5346 log .Info ().Msg ("TLS Enabled" )
54- options = append (options ,
55- tls .WithTLS (tlsConf ),
56- )
47+ options = append (options , tls .WithTLS (tlsConf ))
5748 }
5849 }
50+
5951 // Wrappers are invoked in the order as they added
6052 if cfg .Features .Reqlogs .Enabled {
6153 options = append (options ,
6254 micro .WrapHandler (logWrapper .NewHandlerWrapper ()),
6355 micro .WrapClient (logWrapper .NewClientWrapper ()),
6456 )
6557 }
66- if cfg .Features .Validator .Enabled {
67- options = append (options ,
68- micro .WrapHandler (validatorWrapper .NewHandlerWrapper ()),
69- )
70- }
7158 if cfg .Features .Translogs .Enabled {
7259 topic := cfg .Features .Translogs .Topic
7360 publisher := micro .NewEvent (topic , service .Client ())
74- options = append (options ,
75- micro .WrapHandler (transWrapper .NewHandlerWrapper (publisher )),
76- )
61+ options = append (options , micro .WrapHandler (transWrapper .NewHandlerWrapper (publisher )))
62+ }
63+ if cfg .Features .Validator .Enabled {
64+ options = append (options , micro .WrapHandler (validatorWrapper .NewHandlerWrapper ()))
7765 }
7866
79- // Initialize Features
80- service .Init (
81- options ... ,
67+ // Adding some optional lifecycle actions
68+ options = append (options ,
69+ micro .BeforeStart (func () (err error ) {
70+ log .Debug ().Msg ("called BeforeStart" )
71+ return
72+ }),
73+ micro .BeforeStop (func () (err error ) {
74+ log .Debug ().Msg ("called BeforeStop" )
75+ return
76+ }),
8277 )
8378
79+ // Initialize service
80+ service .Init (options ... )
81+
8482 // Initialize DI Container
8583 ctn , err := registry .NewContainer (cfg )
8684 defer ctn .Clean ()
@@ -104,6 +102,7 @@ func main() {
104102 profilePB .RegisterProfileServiceHandler (service .Server (), profileHandler )
105103
106104 println (config .GetBuildInfo ())
105+
107106 // Run service
108107 if err := service .Run (); err != nil {
109108 log .Fatal ().Err (err ).Msg ("" )
0 commit comments