Documentation
¶
Index ¶
- Variables
- func DefaultSkipper(echo.Context) bool
- func Logger() echo.MiddlewareFunc
- func LoggerWithConfig(config LoggerConfig) echo.MiddlewareFunc
- func NewMetric() echo.MiddlewareFunc
- func NewMetricWithConfig(config PrometheusConfig) echo.MiddlewareFunc
- type BeforeFunc
- type LoggerConfig
- type PrometheusConfig
- type Skipper
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // DefaultLoggerConfig is the default Logger middleware config. DefaultLoggerConfig = LoggerConfig{ Skipper: DefaultSkipper, Format: `{"time":"${time_rfc3339_nano}","id":"${id}","remote_ip":"${remote_ip}",` + `"host":"${host}","method":"${method}","uri":"${uri}","user_agent":"${user_agent}",` + `"status":${status},"error":"${error}","latency":${latency},"latency_human":"${latency_human}"` + `,"bytes_in":${bytes_in},"bytes_out":${bytes_out}}` + "\n", CustomTimeFormat: "2006-01-02 15:04:05.00000", // contains filtered or unexported fields } )
View Source
var ( // DefaultPrometheusConfig supplies Prometheus client with the default // skipper and the 'echo' namespace. DefaultPrometheusConfig = PrometheusConfig{ Skipper: middleware.DefaultSkipper, Namespace: "http", } )
Functions ¶
func DefaultSkipper ¶
func DefaultSkipper(echo.Context) bool
DefaultSkipper returns false which processes the middleware.
func Logger ¶
func Logger() echo.MiddlewareFunc
Logger returns a middleware that logs HTTP requests.
func LoggerWithConfig ¶
func LoggerWithConfig(config LoggerConfig) echo.MiddlewareFunc
LoggerWithConfig returns a Logger middleware with config. See: `Logger()`.
func NewMetric ¶
func NewMetric() echo.MiddlewareFunc
NewMetric returns an echo middleware with the default configuration.
func NewMetricWithConfig ¶
func NewMetricWithConfig(config PrometheusConfig) echo.MiddlewareFunc
NewMetricWithConfig returns an echo middleware with a custom configuration.
Types ¶
type BeforeFunc ¶
type BeforeFunc func(echo.Context)
BeforeFunc defines a function which is executed just before the middleware.
type LoggerConfig ¶
type LoggerConfig struct { // Skipper defines a function to skip middleware. Skipper Skipper // Tags to construct the logger format. // // - time_unix // - time_unix_nano // - time_rfc3339 // - time_rfc3339_nano // - time_custom // - id (Request ID) // - remote_ip // - uri // - host // - method // - path // - protocol // - referer // - user_agent // - status // - error // - latency (In nanoseconds) // - latency_human (Human readable) // - bytes_in (Bytes received) // - bytes_out (Bytes sent) // - header:<NAME> // - query:<NAME> // - form:<NAME> // // Example "${remote_ip} ${status}" // // Optional. Default value DefaultLoggerConfig.Format. Format string `yaml:"format"` // Optional. Default value DefaultLoggerConfig.CustomTimeFormat. CustomTimeFormat string `yaml:"custom_time_format"` // Output is a writer where logs in JSON format are written. // Optional. Default value os.Stdout. Output io.Writer // contains filtered or unexported fields }
LoggerConfig defines the config for Logger middleware.
type PrometheusConfig ¶
type PrometheusConfig struct { // Skipper defines a function to skip middleware. Skipper middleware.Skipper // Namespace is single-word prefix relevant to the domain the metric // belongs to. For metrics specific to an application, the prefix is // usually the application name itself. Namespace string }
PrometheusConfig contains the configuation for the echo-prometheus middleware.
Click to show internal directories.
Click to hide internal directories.