parca

package
v0.18.0 Latest Latest
Warning

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

Go to latest
Published: Jun 14, 2023 License: Apache-2.0 Imports: 54 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LogFormatJSON = "json"
)

Variables

This section is empty.

Functions

func NewLogger

func NewLogger(logLevel, logFormat, debugName string) log.Logger

NewLogger returns a log.Logger that prints in the provided format at the provided level with a UTC timestamp and the caller of the log entry. If non empty, the debug name is also appended as a field to all log lines. Panics if the log level is not error, warn, info or debug. Log level is expected to be validated before passed to this function.

func Run

func Run(ctx context.Context, logger log.Logger, reg *prometheus.Registry, flags *Flags, version string) error

Run the parca server.

Types

type Flags

type Flags struct {
	ConfigPath  string `default:"parca.yaml" help:"Path to config file."`
	Mode        string `` /* 135-byte string literal not displayed */
	HTTPAddress string `default:":7070" help:"Address to bind HTTP server to."`
	Port        string `default:"" help:"(DEPRECATED) Use http-address instead."`

	Logs FlagsLogs `embed:"" prefix:"log-"`

	CORSAllowedOrigins []string `help:"Allowed CORS origins."`
	OTLPAddress        string   `help:"OpenTelemetry collector address to send traces to."`
	Version            bool     `help:"Show application version."`
	PathPrefix         string   `default:"" help:"Path prefix for the UI"`

	MutexProfileFraction int `default:"0" help:"Fraction of mutex profile samples to collect."`
	BlockProfileRate     int `default:"0" help:"Sample rate for block profile."`

	EnablePersistence bool `default:"false" help:"Turn on persistent storage for the metastore and profile storage."`

	Storage FlagsStorage `embed:"" prefix:"storage-"`

	Symbolizer FlagsSymbolizer `embed:"" prefix:"symbolizer-"`

	Debuginfo  FlagsDebuginfo  `embed:"" prefix:"debuginfo-"`
	Debuginfod FlagsDebuginfod `embed:"" prefix:"debuginfod-"`

	Metastore string `default:"badger" help:"Which metastore implementation to use" enum:"badger"`

	ProfileShareServer string `default:"api.pprof.me:443" help:"gRPC address to send share profile requests to."`

	StoreAddress       string            `kong:"help='gRPC address to send profiles and symbols to.'"`
	BearerToken        string            `kong:"help='Bearer token to authenticate with store.'"`
	BearerTokenFile    string            `kong:"help='File to read bearer token from to authenticate with store.'"`
	Insecure           bool              `kong:"help='Send gRPC requests via plaintext instead of TLS.'"`
	InsecureSkipVerify bool              `kong:"help='Skip TLS certificate verification.'"`
	ExternalLabel      map[string]string `kong:"help='Label(s) to attach to all profiles in scraper-only mode.'"`

	ExperimentalArrow bool `default:"false" help:"EXPERIMENTAL: Enables Arrow ingestion, this will reduce CPU usage but will increase memory usage."`

	Hidden FlagsHidden `embed:"" prefix:""`
}

type FlagsDebuginfo added in v0.16.0

type FlagsDebuginfo struct {
	CacheDir          string        `default:"/tmp" help:"Path to directory where debuginfo is cached."`
	UploadMaxSize     int64         `default:"1000000000" help:"Maximum size of debuginfo upload in bytes."`
	UploadMaxDuration time.Duration `default:"15m" help:"Maximum duration of debuginfo upload."`
	UploadsSignedURL  bool          `default:"false" help:"Whether to use signed URLs for debuginfo uploads."`
}

FlagsDebuginfo configures the Parca Debuginfo client.

type FlagsDebuginfod added in v0.16.0

type FlagsDebuginfod struct {
	UpstreamServers    []string      `` /* 225-byte string literal not displayed */
	HTTPRequestTimeout time.Duration `default:"5m" help:"Timeout duration for HTTP request to upstream debuginfod server. Defaults to 5m"`
}

FlagsDebuginfod configures the Parca Debuginfo daemon / server.

type FlagsHidden added in v0.18.0

type FlagsHidden struct {
	DebugNormalizeAddresses bool `kong:"help='Normalize sampled addresses.',default='true',hidden=''"`
}

FlagsHidden contains hidden flags intended only for debugging.

type FlagsLogs added in v0.16.0

type FlagsLogs struct {
	Level  string `enum:"error,warn,info,debug" default:"info" help:"Log level."`
	Format string `enum:"logfmt,json" default:"logfmt" help:"Configure if structured logging as JSON or as logfmt"`
}

type FlagsStorage added in v0.16.0

type FlagsStorage struct {
	GranuleSize  int64  `default:"26265625" help:"Granule size in bytes for storage."`
	ActiveMemory int64  `default:"536870912" help:"Amount of memory to use for active storage. Defaults to 512MB."`
	Path         string `default:"data" help:"Path to storage directory."`
	EnableWAL    bool   `default:"false" help:"Enables write ahead log for profile storage."`
	RowGroupSize int    `` /* 145-byte string literal not displayed */
}

type FlagsSymbolizer added in v0.16.0

type FlagsSymbolizer struct {
	DemangleMode  string `` /* 159-byte string literal not displayed */
	NumberOfTries int    `default:"3" help:"Number of tries to attempt to symbolize an unsybolized location"`
}

Jump to

Keyboard shortcuts

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