package main
import (
"context"
"flag"
"fmt"
"os"
"github.com/go-kratos/kratos/v2/transport/grpc"
"github.com/go-kratos/kratos/v2"
"github.com/go-kratos/kratos/v2/config"
"github.com/go-kratos/kratos/v2/config/file"
"github.com/go-kratos/kratos/v2/log"
"github.com/go-kratos/kratos/v2/middleware/tracing"
"github.com/go-kratos/kratos/v2/transport/http"
_ "go.uber.org/automaxprocs"
)
func newApp(logger log.Logger, gs *grpc.Server, hs *http.Server) *kratos.App {
return kratos.New(
...
kratos.BeforeStart(func(ctx context.Context) error {
// 打印路由信息
printRoutes(hs)
return nil
}),
)
}
func printRoutes(router *http.Server) {
fmt.Println("HTTP Routes:")
router.WalkRoute(func(h http.RouteInfo) error {
fmt.Printf("[%-7s]\t%s\n", h.Method, h.Path)
return nil
})
fmt.Println()
}
网友评论