Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewReaderAtCloser ¶
func NewReaderAtCloser(data []byte) interface { io.ReadCloser io.ReaderAt }
Types ¶
type Config ¶
type Config struct {
DebuginfodURL string `yaml:"debuginfod_url" category:"advanced"`
MaxDebuginfodConcurrency int `yaml:"max_debuginfod_concurrency" category:"advanced"`
}
func (*Config) RegisterFlags ¶
type DebuginfodClient ¶
type DebuginfodClientConfig ¶
type DebuginfodClientConfig struct {
BaseURL string
HTTPClient *http.Client
BackoffConfig backoff.Config
UserAgent string
NotFoundCacheMaxItems int64
NotFoundCacheTTL time.Duration
// BreakerFailureThreshold consecutive network-level failures open the
// circuit breaker for BreakerOpenDuration. A threshold <= 0 disables
// the breaker.
BreakerFailureThreshold int
BreakerOpenDuration time.Duration
// MaxConcurrentFetches bounds in-flight upstream fetches (the
// politeness budget toward the debuginfod server).
// <= 0 uses defaultMaxDebuginfodConcurrency.
MaxConcurrentFetches int
}
DebuginfodClientConfig holds configuration for the debuginfod client.
type DebuginfodHTTPClient ¶
type DebuginfodHTTPClient struct {
// contains filtered or unexported fields
}
DebuginfodHTTPClient implements the DebuginfodClient interface using HTTP.
func NewDebuginfodClient ¶
func NewDebuginfodClientWithConfig ¶
func NewDebuginfodClientWithConfig(logger log.Logger, cfg DebuginfodClientConfig, metrics *metrics, limits Limits) (*DebuginfodHTTPClient, error)
NewDebuginfodClientWithConfig creates a new client with the specified configuration.
func (*DebuginfodHTTPClient) FetchDebuginfo ¶
func (c *DebuginfodHTTPClient) FetchDebuginfo(ctx context.Context, buildID string) (io.ReadCloser, error)
FetchDebuginfo fetches the debuginfo file for a specific build ID.
type ErrSymbolSizeBytesExceedsLimit ¶
type ErrSymbolSizeBytesExceedsLimit struct {
Limit int64
}
func (*ErrSymbolSizeBytesExceedsLimit) Error ¶
func (e *ErrSymbolSizeBytesExceedsLimit) Error() string
type LidiaTableCacheEntry ¶
type LidiaTableCacheEntry struct {
Data []byte // Processed Lidia table data
}
LidiaTableCacheEntry represents a cached Lidia table with its binary layout information
type Symbolizer ¶
type Symbolizer struct {
// contains filtered or unexported fields
}
func New ¶
func New(logger log.Logger, cfg Config, reg prometheus.Registerer, storageBucket objstore.Bucket, limits Limits) (*Symbolizer, error)
func (*Symbolizer) SymbolizePprof ¶
Click to show internal directories.
Click to hide internal directories.