debug

package
v0.28.0 Latest Latest
Warning

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

Go to latest
Published: Apr 27, 2022 License: Apache-2.0 Imports: 6 Imported by: 154

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Enabled

func Enabled() bool

Enabled returns whether debugging is enabled or not.

func Flush

func Flush()

Flush dispatches to the current provider's Flush function.

func NewFile

func NewFile(s string) io.WriteCloser

NewFile dispatches to the current provider's NewFile function.

func NewTeeReader added in v0.25.0

func NewTeeReader(rc io.ReadCloser, w io.Writer) io.ReadCloser

NewTeeReader wraps io.TeeReader and patches through the Close() function.

func Scrub added in v0.22.0

func Scrub(in []byte) []byte

func SetProvider

func SetProvider(p Provider)

Types

type FileProvider

type FileProvider struct {
	Path string
	// contains filtered or unexported fields
}

FileProvider implements a debugging provider that creates a real file for every call to NewFile. It maintains a list of all files that it creates, such that it can close them when its Flush function is called.

func (*FileProvider) Flush

func (fp *FileProvider) Flush()

func (*FileProvider) NewFile

func (fp *FileProvider) NewFile(p string) io.WriteCloser

type FileWriterCloser added in v0.22.0

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

func NewFileWriterCloser added in v0.22.0

func NewFileWriterCloser(f *os.File, p string) *FileWriterCloser

func (*FileWriterCloser) Close added in v0.22.0

func (fwc *FileWriterCloser) Close() error

func (*FileWriterCloser) Write added in v0.22.0

func (fwc *FileWriterCloser) Write(p []byte) (n int, err error)

type LogProvider added in v0.22.0

type LogProvider struct {
}

func (*LogProvider) Flush added in v0.22.0

func (s *LogProvider) Flush()

func (*LogProvider) NewFile added in v0.22.0

func (s *LogProvider) NewFile(p string) io.WriteCloser

type LogWriterCloser added in v0.22.0

type LogWriterCloser struct {
}

func NewLogWriterCloser added in v0.22.0

func NewLogWriterCloser() *LogWriterCloser

func (*LogWriterCloser) Close added in v0.22.0

func (lwc *LogWriterCloser) Close() error

func (*LogWriterCloser) Write added in v0.22.0

func (lwc *LogWriterCloser) Write(p []byte) (n int, err error)

type Provider

type Provider interface {
	NewFile(s string) io.WriteCloser
	Flush()
}

Provider specified the interface types must implement to be used as a debugging sink. Having multiple such sink implementations allows it to be changed externally (for example when running tests).

type ReadCloser added in v0.25.0

type ReadCloser struct {
	io.Reader
	io.Closer
}

ReadCloser is a struct that satisfies the io.ReadCloser interface

Jump to

Keyboard shortcuts

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