instrumentors

package
v0.3.0-alpha Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Package instrumentors provides instrumentors that instrument Go packages.

Deprecated: This package is no longer supported.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Instrumentor

type Instrumentor interface {
	// LibraryName returns the package name being instrumented.
	LibraryName() string

	// FuncNames returns the fully-qualified function names that are
	// instrumented.
	FuncNames() []string

	// Load loads all instrumentation offsets.
	Load(ctx *context.InstrumentorContext) error

	// Run runs the events processing loop.
	Run(eventsChan chan<- *events.Event)

	// Close stops the Instrumentor.
	Close()
}

Instrumentor provides instrumentation for a Go package.

type Manager

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

Manager handles the management of Instrumentor instances.

func NewManager

func NewManager(otelController *opentelemetry.Controller) (*Manager, error)

NewManager returns a new Manager.

func (*Manager) Close

func (m *Manager) Close()

Close closes m.

func (*Manager) FilterUnusedInstrumentors

func (m *Manager) FilterUnusedInstrumentors(target *process.TargetDetails)

FilterUnusedInstrumentors filterers Instrumentors whose functions are already instrumented out of the Manager.

func (*Manager) GetRelevantFuncs

func (m *Manager) GetRelevantFuncs() map[string]interface{}

GetRelevantFuncs returns the instrumented functions for all managed Instrumentors.

func (*Manager) Run

func (m *Manager) Run(target *process.TargetDetails) error

Run runs the event processing loop for all managed Instrumentors.

Directories

Path Synopsis
Package allocator provides allocation functionality for unix systems.
Package allocator provides allocation functionality for unix systems.
bpf
github.com/gin-gonic/gin
Package gin provides an instrumentor for the github.com/gin-gonic/gin package.
Package gin provides an instrumentor for the github.com/gin-gonic/gin package.
github.com/gorilla/mux
Package mux provides an instrumentation probe for the github.com/gorilla/mux package.
Package mux provides an instrumentation probe for the github.com/gorilla/mux package.
google/golang/org/grpc
Package grpc provides an instrumentor for the client in the google.golang.org/grpc package.
Package grpc provides an instrumentor for the client in the google.golang.org/grpc package.
google/golang/org/grpc/server
Package server provides an instrumentor for the server in the google.golang.org/grpc package.
Package server provides an instrumentor for the server in the google.golang.org/grpc package.
net/http/client
Package client provides an instrumentor for the client in the net/http package.
Package client provides an instrumentor for the client in the net/http package.
net/http/server
Package server provides an instrumentor for the server in the net/http package.
Package server provides an instrumentor for the server in the net/http package.
Package bpffs provides the path to bpf on unix systems.
Package bpffs provides the path to bpf on unix systems.
Package context provides context utilities.
Package context provides context utilities.
Package events provides span event types and functionality.
Package events provides span event types and functionality.
Package utils provides eBPF utilities.
Package utils provides eBPF utilities.

Jump to

Keyboard shortcuts

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