Select Git revision
logging_middleware.go
error_logging_middleware.go 3.23 KiB
// Code generated by gowrap. DO NOT EDIT.
// template: ../../../assets/templates/middleware/error_log
// gowrap: http://github.com/hexdigest/gowrap
package middleware
//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/extension -i Manager -t ../../../assets/templates/middleware/error_log -o error_logging_middleware.go -l ""
import (
"context"
"git.perx.ru/perxis/perxis-go/extension"
"go.uber.org/zap"
)
// errorLoggingMiddleware implements extension.Manager that is instrumented with logging
type errorLoggingMiddleware struct {
logger *zap.Logger
next extension.Manager
}
// ErrorLoggingMiddleware instruments an implementation of the extension.Manager with simple logging
func ErrorLoggingMiddleware(logger *zap.Logger) Middleware {
return func(next extension.Manager) extension.Manager {
return &errorLoggingMiddleware{
next: next,
logger: logger,
}
}
}
func (m *errorLoggingMiddleware) Action(ctx context.Context, in *extension.ActionRequest) (ap1 *extension.ActionResponse, err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.Action(ctx, in)
}
func (m *errorLoggingMiddleware) Check(ctx context.Context, in *extension.CheckRequest) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.Check(ctx, in)
}
func (m *errorLoggingMiddleware) GetDescriptor() (ep1 *extension.ExtensionDescriptor) {
return m.next.GetDescriptor()
}
func (m *errorLoggingMiddleware) Install(ctx context.Context, in *extension.InstallRequest) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.Install(ctx, in)
}
func (m *errorLoggingMiddleware) ListExtensions(ctx context.Context, space string, env string, filter *extension.ListExtensionsFilter) (ipa1 []*extension.Info, err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.ListExtensions(ctx, space, env, filter)
}
func (m *errorLoggingMiddleware) ListRegisteredExtensions(ctx context.Context, extensions ...string) (epa1 []*extension.ExtensionConnector, err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.ListRegisteredExtensions(ctx, extensions...)
}
func (m *errorLoggingMiddleware) RegisterExtensions(ctx context.Context, ext ...*extension.ExtensionConnector) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.RegisterExtensions(ctx, ext...)
}
func (m *errorLoggingMiddleware) Uninstall(ctx context.Context, in *extension.UninstallRequest) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.Uninstall(ctx, in)
}
func (m *errorLoggingMiddleware) UnregisterExtensions(ctx context.Context, ext ...*extension.ExtensionConnector) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.UnregisterExtensions(ctx, ext...)
}