Go to file
Vasiliy Tolstov dbcf52e590
Some checks failed
codeql / analyze (go) (push) Failing after 40s
build / test (push) Failing after 4m54s
build / lint (push) Successful in 9m28s
fix clone with prometheus compat mode
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2024-11-10 17:49:01 +03:00
.github Bump golangci/golangci-lint-action from 3.3.1 to 3.4.0 (#104) 2023-01-30 22:29:29 +03:00
.synced use own fork 2021-01-19 16:31:38 +03:00
go.mod add ability to use prometheus compat histogram 2024-11-09 19:49:45 +03:00
go.sum add ability to use prometheus compat histogram 2024-11-09 19:49:45 +03:00
LICENSE use own fork 2021-01-19 16:31:38 +03:00
README.md use own fork 2021-01-19 16:31:38 +03:00
victoriametrics_test.go add ability to use prometheus compat histogram 2024-11-09 19:49:45 +03:00
victoriametrics.go fix clone with prometheus compat mode 2024-11-10 17:49:01 +03:00

VictoriaMetrics

Wrappers are a form of middleware that can be used with go-micro services. They can wrap both the Client and Server handlers. This plugin implements the HandlerWrapper interface to provide automatic prometheus metric handling for each microservice method execution time and operation count for success and failed cases.

This handler will export two metrics to prometheus:

  • micro_request_total. How many go-miro requests processed, partitioned by method and status.
  • micro_request_duration_microseconds. Service method request latencies in microseconds, partitioned by method.

Usage

When creating your service, add the wrapper like so.

    service := micro.NewService(
        micro.Name("service name"),
    	micro.Version("latest"),
    	micro.WrapHandler(victoriametrics.NewHandlerWrapper()),
    )
    
    service.Init()