Documentation ¶
Overview ¶
Package metrics defines a common interface for instrumenting applications and components to collect metrics.
See also:
- github.com/Vonage/gosrvlib/pkg/metrics/statsd
- github.com/Vonage/gosrvlib/pkg/metrics/prometheus
Index ¶
- type Client
- type Default
- func (c *Default) Close() error
- func (c *Default) IncErrorCounter(_, _, _ string)
- func (c *Default) IncLogLevelCounter(_ string)
- func (c *Default) InstrumentDB(_ string, _ *sql.DB) error
- func (c *Default) InstrumentHandler(_ string, handler http.HandlerFunc) http.Handler
- func (c *Default) InstrumentRoundTripper(next http.RoundTripper) http.RoundTripper
- func (c *Default) MetricsHandlerFunc() http.HandlerFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface { // InstrumentDB wraps a sql.DB to collect metrics. InstrumentDB(dbName string, db *sql.DB) error // InstrumentHandler wraps a http.Handler to collect metrics. InstrumentHandler(path string, handler http.HandlerFunc) http.Handler // InstrumentRoundTripper is a middleware that wraps the provided http.RoundTripper to observe the request result with default metrics. InstrumentRoundTripper(next http.RoundTripper) http.RoundTripper // MetricsHandlerFunc returns an http handler function to serve the metrics endpoint. MetricsHandlerFunc() http.HandlerFunc // IncLogLevelCounter counts the number of errors for each log severity level. IncLogLevelCounter(level string) // IncErrorCounter increments the number of errors by task, operation and error code. IncErrorCounter(task, operation, code string) // Close method. Close() error }
Client is an interface type for the metrics functions.
type Default ¶
type Default struct{}
Default is the default implementation for the Client interface.
func (*Default) IncErrorCounter ¶
IncErrorCounter is an empty function.
func (*Default) IncLogLevelCounter ¶
IncLogLevelCounter is an empty function.
func (*Default) InstrumentDB ¶
InstrumentDB wraps a sql.DB to collect metrics.
func (*Default) InstrumentHandler ¶
InstrumentHandler returns the input handler.
func (*Default) InstrumentRoundTripper ¶
func (c *Default) InstrumentRoundTripper(next http.RoundTripper) http.RoundTripper
InstrumentRoundTripper returns the input Roundtripper.
func (*Default) MetricsHandlerFunc ¶
func (c *Default) MetricsHandlerFunc() http.HandlerFunc
MetricsHandlerFunc returns an http handler function.
Directories ¶
Path | Synopsis |
---|---|
Package prometheus implements the metrics interface for Prometheus.
|
Package prometheus implements the metrics interface for Prometheus. |
Package statsd implements the metrics interface for StatsD.
|
Package statsd implements the metrics interface for StatsD. |
Click to show internal directories.
Click to hide internal directories.