pyroscope

package
v0.0.0-...-7afc304 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

README

Pyroscope client

Status
Stability [beta]

The Extension provides the functionality to export the opentelementry collector profiles into a pyroscope compatible server.

The following settings can be configured:

  • application_name (default = "opentelemetry-collector"): The name of the application as it will appear in Pyroscope.
  • tags (default = empty map): A map of key-value pairs for additional tags to be associated with the profiles.
  • server_address (default = "http://localhost:8062"): The URL of the Pyroscope server to which the profiles will be sent.
  • basic_auth (default = empty): Basic authentication configuration for connecting to the Pyroscope server.
    • username: The username for basic authentication.
    • password: The password for basic authentication.
  • profile_types (default = ["cpu", "alloc_objects", "alloc_space", "inuse_objects", "inuse_space"]): An array of profile types to collect and send to Pyroscope.
  • tenant_id (default = ""): The tenant ID to use when sending profiles to Pyroscope, for multi-tenancy support.

Example:

extensions:
  pyroscope:
    application_name: "my-collector"
    tags:
      environment: "production"
      region: "us-west-2"
    server_address: "http://localhost:8062"
    basic_auth:
      username: "user"
      password: "secret"
    profile_types:
      - "cpu"
      - "alloc_objects"
      - "inuse_space"
service:
  extensions: [pyroscope]

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFactory

func NewFactory() extension.Factory

NewNopFactory returns an extension.Factory that constructs nop extensions.

func NewPyroscopeCreateSettings

func NewPyroscopeCreateSettings() extension.Settings

NewNopSettings returns a new nop settings for extension.Factory Create* functions.

Types

type BasicAuth

type BasicAuth struct {
	Username string `mapstructure:"username"`
	Password string `mapstructure:"password"`
}

type Config

type Config struct {
	ApplicationName string            `mapstructure:"application_name"`
	Tags            map[string]string `mapstructure:"tags"`
	ServerAddress   string            `mapstructure:"server_address"`
	BasicAuth       BasicAuth         `mapstructure:"basic_auth"`
	ProfileTypes    []string          `mapstructure:"profile_types"`
	TenantID        string            `mapstructure:"tenant_id"`
}

type PyroscopeExtension

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

func (PyroscopeExtension) Shutdown

func (p PyroscopeExtension) Shutdown(ctx context.Context) error

func (PyroscopeExtension) Start

Jump to

Keyboard shortcuts

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