tracing

package
v0.0.349 Latest Latest
Warning

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

Go to latest
Published: Feb 23, 2022 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Overview

Package tracing provides helpers for dealing with Open Tracing and Distributed Tracing.

Index

Constants

View Source
const (
	// BCryptHashOpName is the operation name for bcrypt hashing operations.
	BCryptHashOpName = "bcrypt.hash"

	// BCryptCompareOpName is the operation name for bcrypt comparation operations.
	BCryptCompareOpName = "bcrypt.compare"

	// BCryptWorkFactorTagName is the operation name for bcrypt workfactor settings.
	BCryptWorkFactorTagName = "bcrypt.workfactor"
)
View Source
const ConfigSchemaID = "ory://tracing-config"

Variables

View Source
var ConfigSchema string

Functions

func AddConfigSchema added in v0.0.269

func AddConfigSchema(c interface {
	AddResource(url string, r io.Reader) error
}) error

AddConfigSchema adds the tracing schema to the compiler. The interface is specified instead of `jsonschema.Compiler` to allow the use of any jsonschema library fork or version.

func RoundTripper added in v0.0.337

func RoundTripper(tracer opentracing.Tracer, delegate http.RoundTripper) http.RoundTripper

Types

type Config added in v0.0.166

type Config struct {
	ServiceName string           `json:"service_name"`
	Provider    string           `json:"provider"`
	Providers   *ProvidersConfig `json:"providers"`
}

type JaegerConfig

type JaegerConfig struct {
	LocalAgentAddress string          `json:"local_agent_address"`
	Sampling          *JaegerSampling `json:"sampling"`
	Propagation       string          `json:"propagation"`
	MaxTagValueLength int             `json:"max_tag_value_length"`
}

JaegerConfig encapsulates jaeger's configuration.

type JaegerSampling added in v0.0.269

type JaegerSampling struct {
	Type      string  `json:"type"`
	Value     float64 `json:"value"`
	ServerURL string  `json:"server_url"`
}

type ProvidersConfig added in v0.0.269

type ProvidersConfig struct {
	Jaeger *JaegerConfig `json:"jaeger"`
	Zipkin *ZipkinConfig `json:"zipkin"`
}

type RoundTripperFunc added in v0.0.337

type RoundTripperFunc func(req *http.Request) (*http.Response, error)

The RoundTripperFunc type is an adapter to allow the use of ordinary functions as RoundTrippers. If f is a function with the appropriate signature, RountTripperFunc(f) is a RoundTripper that calls f.

func (RoundTripperFunc) RoundTrip added in v0.0.337

func (rt RoundTripperFunc) RoundTrip(r *http.Request) (*http.Response, error)

RoundTrip implements the RoundTripper interface.

type TracedBCrypt

type TracedBCrypt struct {
	WorkFactor int
}

TracedBCrypt implements the Hasher interface.

func (*TracedBCrypt) Compare

func (b *TracedBCrypt) Compare(ctx context.Context, hash, data []byte) error

Compare returns nil if hash and data match.

func (*TracedBCrypt) Hash

func (b *TracedBCrypt) Hash(ctx context.Context, data []byte) ([]byte, error)

Hash returns the hashed string or an error.

type Tracer

type Tracer struct {
	Config *Config
	// contains filtered or unexported fields
}

Tracer encapsulates tracing abilities.

func New added in v0.0.166

func New(l *logrusx.Logger, c *Config) (*Tracer, error)

func (*Tracer) Close

func (t *Tracer) Close()

Close closes the tracer.

func (*Tracer) IsLoaded

func (t *Tracer) IsLoaded() bool

IsLoaded returns true if the tracer has been loaded.

func (*Tracer) ServeHTTP

func (t *Tracer) ServeHTTP(rw http.ResponseWriter, r *http.Request, next http.HandlerFunc)

func (*Tracer) Tracer added in v0.0.166

func (t *Tracer) Tracer() opentracing.Tracer

Tracer returns the wrapped tracer

type ZipkinConfig added in v0.0.130

type ZipkinConfig struct {
	ServerURL string `json:"server_url"`
}

ZipkinConfig encapsulates zipkin's configuration.

Jump to

Keyboard shortcuts

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