timer

package
v0.37.1 Latest Latest
Warning

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

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

README

timer - Execution Timer

The timer middleware measures the time taken to execute a pipe and prints it to the console for performance debugging purposes.

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.

Arguments

Enable time recording by setting the record argument to true.

private:
    some-pipeline:
        timer:
            record: true

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