timer

package
v0.32.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 11, 2021 License: GPL-2.0, GPL-3.0 Imports: 4 Imported by: 0

README

timer - Timer Middleware

Arguments

Enable time recording by setting the record argument to true.

- some_pipeline:
    timer:
      record: bool,

The execution time of the pipe will be logged at debug level. You might need to use the -v debug argument to ensure the log entries are actually visible.

TODO:
  • use dedicated logging channel to merge timing information into actual output

Documentation

Overview

Package timer provides a middleware that records execution time

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Middleware added in v0.32.2

type Middleware struct {
	// contains filtered or unexported fields
}

Middleware is an execution time recorder

func NewMiddleware added in v0.32.2

func NewMiddleware() Middleware

NewMiddleware creates a new middleware instance

func NewMiddlewareWithProvider added in v0.32.2

func NewMiddlewareWithProvider(timeProvider timeProvider) Middleware

NewMiddlewareWithProvider creates a new middleware instance with the specified time provider

func (Middleware) Apply added in v0.32.2

func (timerMiddleware Middleware) Apply(
	run *pipeline.Run,
	next func(*pipeline.Run),
	_ *middleware.ExecutionContext,
)

Apply is where the middleware's logic resides

It adapts the run based on its slice of the run's arguments. It may also trigger side effects such as executing shell commands or full runs of other pipelines. When done, this function should call next in order to continue unwinding the stack.

func (Middleware) String added in v0.32.2

func (timerMiddleware Middleware) String() string

String is a human-readable description

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL