diff --git a/examples/metrics/main.go b/examples/metrics/main.go index 1a69aa545..5e682eb7f 100644 --- a/examples/metrics/main.go +++ b/examples/metrics/main.go @@ -3,15 +3,14 @@ package main import ( "context" "fmt" + "log" + "github.com/go-kratos/kratos/v2/middleware/metrics" prom "github.com/go-kratos/prometheus/metrics" "github.com/prometheus/client_golang/prometheus/promhttp" - "log" "github.com/go-kratos/kratos/examples/helloworld/helloworld" "github.com/go-kratos/kratos/v2" - "github.com/go-kratos/kratos/v2/errors" - "github.com/go-kratos/kratos/v2/middleware/recovery" "github.com/go-kratos/kratos/v2/transport/grpc" "github.com/go-kratos/kratos/v2/transport/http" "github.com/prometheus/client_golang/prometheus" @@ -26,14 +25,16 @@ var ( _metricSeconds = prometheus.NewHistogramVec(prometheus.HistogramOpts{ Namespace: "server", - Name: "request_duration_millisecond", + Subsystem: "requests", + Name: "duration_ms", Help: "server requests duration(ms).", Buckets: []float64{5, 10, 25, 50, 100, 250, 500, 1000}, }, []string{"kind", "operation"}) _metricRequests = prometheus.NewCounterVec(prometheus.CounterOpts{ Namespace: "client", - Name: "api_requests_total", + Subsystem: "requests", + Name: "code_total", Help: "The total number of processed requests", }, []string{"kind", "operation", "code", "reason"}) ) @@ -45,12 +46,6 @@ type server struct { // SayHello implements helloworld.GreeterServer func (s *server) SayHello(ctx context.Context, in *helloworld.HelloRequest) (*helloworld.HelloReply, error) { - if in.Name == "error" { - return nil, errors.BadRequest("custom_error", fmt.Sprintf("invalid argument %s", in.Name)) - } - if in.Name == "panic" { - panic("server panic") - } return &helloworld.HelloReply{Message: fmt.Sprintf("Hello %+v", in.Name)}, nil } @@ -59,16 +54,11 @@ func init() { } func main() { - s := &server{} - grpcSrv := grpc.NewServer( grpc.Address(":9000"), grpc.Middleware( - recovery.Recovery(), metrics.Server( - metrics.WithSeconds( - prom.NewHistogram(_metricSeconds), - ), + metrics.WithSeconds(prom.NewHistogram(_metricSeconds)), metrics.WithRequests(prom.NewCounter(_metricRequests)), ), ), @@ -76,18 +66,15 @@ func main() { httpSrv := http.NewServer( http.Address(":8000"), http.Middleware( - recovery.Recovery(), metrics.Server( - metrics.WithSeconds( - prom.NewHistogram(_metricSeconds), - ), + metrics.WithSeconds(prom.NewHistogram(_metricSeconds)), metrics.WithRequests(prom.NewCounter(_metricRequests)), ), ), ) - httpSrv.Handle("/metrics", promhttp.Handler()) + s := &server{} helloworld.RegisterGreeterServer(grpcSrv, s) helloworld.RegisterGreeterHTTPServer(httpSrv, s)