Documentation
¶
Overview ¶
Package filterprocessor implements a processor for filtering (dropping) metrics and/or spans by various properties.
Index ¶
- func DefaultDataPointFunctions() []ottl.Factory[ottldatapoint.TransformContext]deprecated
- func DefaultDataPointFunctionsNew() []ottl.Factory[*ottldatapoint.TransformContext]
- func DefaultLogFunctions() []ottl.Factory[ottllog.TransformContext]deprecated
- func DefaultLogFunctionsNew() []ottl.Factory[*ottllog.TransformContext]
- func DefaultMetricFunctions() []ottl.Factory[ottlmetric.TransformContext]deprecated
- func DefaultMetricFunctionsNew() []ottl.Factory[*ottlmetric.TransformContext]
- func DefaultProfileFunctions() []ottl.Factory[ottlprofile.TransformContext]
- func DefaultResourceFunctions() []ottl.Factory[*ottlresource.TransformContext]
- func DefaultSpanEventFunctions() []ottl.Factory[*ottlspanevent.TransformContext]deprecated
- func DefaultSpanEventFunctionsNew() []ottl.Factory[*ottlspanevent.TransformContext]
- func DefaultSpanFunctions() []ottl.Factory[ottlspan.TransformContext]deprecated
- func DefaultSpanFunctionsNew() []ottl.Factory[*ottlspan.TransformContext]
- func NewFactory() processor.Factory
- func NewFactoryWithOptions(options ...FactoryOption) processor.Factory
- type Config
- type FactoryOption
- func WithDataPointFunctions(dataPointFunctions []ottl.Factory[ottldatapoint.TransformContext]) FactoryOptiondeprecated
- func WithDataPointFunctionsNew(dataPointFunctions []ottl.Factory[*ottldatapoint.TransformContext]) FactoryOption
- func WithLogFunctions(logFunctions []ottl.Factory[ottllog.TransformContext]) FactoryOptiondeprecated
- func WithLogFunctionsNew(logFunctions []ottl.Factory[*ottllog.TransformContext]) FactoryOption
- func WithMetricFunctions(metricFunctions []ottl.Factory[ottlmetric.TransformContext]) FactoryOptiondeprecated
- func WithMetricFunctionsNew(metricFunctions []ottl.Factory[*ottlmetric.TransformContext]) FactoryOption
- func WithProfileFunctions(profileFunctions []ottl.Factory[ottlprofile.TransformContext]) FactoryOption
- func WithResourceFunctions(resourceFunctions []ottl.Factory[ottlresource.TransformContext]) FactoryOptiondeprecated
- func WithResourceFunctionsNew(resourceFunctions []ottl.Factory[*ottlresource.TransformContext]) FactoryOption
- func WithSpanEventFunctions(spanEventFunctions []ottl.Factory[ottlspanevent.TransformContext]) FactoryOptiondeprecated
- func WithSpanEventFunctionsNew(spanEventFunctions []ottl.Factory[*ottlspanevent.TransformContext]) FactoryOption
- func WithSpanFunctions(spanFunctions []ottl.Factory[ottlspan.TransformContext]) FactoryOptiondeprecated
- func WithSpanFunctionsNew(spanFunctions []ottl.Factory[*ottlspan.TransformContext]) FactoryOption
- type LogFilters
- type LogMatchProperties
- type LogMatchType
- type LogSeverityNumberMatchProperties
- type MetricFilters
- type ProfileFilters
- type TraceFilters
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultDataPointFunctions
deprecated
added in
v0.133.0
func DefaultDataPointFunctions() []ottl.Factory[ottldatapoint.TransformContext]
Deprecated: [v0.142.0] use DefaultDataPointFunctionsNew.
func DefaultDataPointFunctionsNew ¶ added in v0.142.0
func DefaultDataPointFunctionsNew() []ottl.Factory[*ottldatapoint.TransformContext]
func DefaultLogFunctions
deprecated
added in
v0.133.0
func DefaultLogFunctions() []ottl.Factory[ottllog.TransformContext]
Deprecated: [v0.142.0] use DefaultLogFunctionsNew.
func DefaultLogFunctionsNew ¶ added in v0.142.0
func DefaultLogFunctionsNew() []ottl.Factory[*ottllog.TransformContext]
func DefaultMetricFunctions
deprecated
added in
v0.133.0
func DefaultMetricFunctions() []ottl.Factory[ottlmetric.TransformContext]
Deprecated: [v0.142.0] use DefaultMetricFunctionsNew.
func DefaultMetricFunctionsNew ¶ added in v0.142.0
func DefaultMetricFunctionsNew() []ottl.Factory[*ottlmetric.TransformContext]
func DefaultProfileFunctions ¶ added in v0.138.0
func DefaultProfileFunctions() []ottl.Factory[ottlprofile.TransformContext]
func DefaultResourceFunctions ¶ added in v0.139.0
func DefaultResourceFunctions() []ottl.Factory[*ottlresource.TransformContext]
func DefaultSpanEventFunctions
deprecated
added in
v0.133.0
func DefaultSpanEventFunctions() []ottl.Factory[*ottlspanevent.TransformContext]
Deprecated: [v0.142.0] use DefaultSpanEventFunctionsNew.
func DefaultSpanEventFunctionsNew ¶ added in v0.142.0
func DefaultSpanEventFunctionsNew() []ottl.Factory[*ottlspanevent.TransformContext]
func DefaultSpanFunctions
deprecated
added in
v0.133.0
func DefaultSpanFunctions() []ottl.Factory[ottlspan.TransformContext]
Deprecated: [v0.142.0] use DefaultSpanFunctionsNew.
func DefaultSpanFunctionsNew ¶ added in v0.142.0
func DefaultSpanFunctionsNew() []ottl.Factory[*ottlspan.TransformContext]
func NewFactory ¶
NewFactory returns a new factory for the Filter processor.
func NewFactoryWithOptions ¶ added in v0.133.0
func NewFactoryWithOptions(options ...FactoryOption) processor.Factory
NewFactoryWithOptions can receive FactoryOption like With*Functions to register non-default OTTL functions in the resulting processor.
Types ¶
type Config ¶
type Config struct {
// ErrorMode determines how the processor reacts to errors that occur while processing an OTTL condition.
// Valid values are `ignore` and `propagate`.
// `ignore` means the processor ignores errors returned by conditions and continues on to the next condition. This is the recommended mode.
// `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector.
// The default value is `propagate`.
ErrorMode ottl.ErrorMode `mapstructure:"error_mode"`
Metrics MetricFilters `mapstructure:"metrics"`
Logs LogFilters `mapstructure:"logs"`
Spans filterconfig.MatchConfig `mapstructure:"spans"`
Traces TraceFilters `mapstructure:"traces"`
Profiles ProfileFilters `mapstructure:"profiles"`
// contains filtered or unexported fields
}
Config defines configuration for Resource processor.
type FactoryOption ¶ added in v0.133.0
type FactoryOption func(factory *filterProcessorFactory)
FactoryOption applies changes to filterProcessorFactory.
func WithDataPointFunctions
deprecated
added in
v0.133.0
func WithDataPointFunctions(dataPointFunctions []ottl.Factory[ottldatapoint.TransformContext]) FactoryOption
Deprecated: [v0.142.0] Use WithDataPointFunctionsNew.
func WithDataPointFunctionsNew ¶ added in v0.142.0
func WithDataPointFunctionsNew(dataPointFunctions []ottl.Factory[*ottldatapoint.TransformContext]) FactoryOption
WithDataPointFunctionsNew will override the default OTTL datapoint context functions with the provided dataPointFunctions in resulting processor. Subsequent uses of WithDataPointFunctionsNew will merge the provided dataPointFunctions with the previously registered functions.
func WithLogFunctions
deprecated
added in
v0.133.0
func WithLogFunctions(logFunctions []ottl.Factory[ottllog.TransformContext]) FactoryOption
Deprecated: [v0.142.0] Use WithLogFunctionsNew.
func WithLogFunctionsNew ¶ added in v0.142.0
func WithLogFunctionsNew(logFunctions []ottl.Factory[*ottllog.TransformContext]) FactoryOption
WithLogFunctionsNew will override the default OTTL log context functions with the provided logFunctions in the resulting processor. Subsequent uses of WithLogFunctionsNew will merge the provided logFunctions with the previously registered functions.
func WithMetricFunctions
deprecated
added in
v0.133.0
func WithMetricFunctions(metricFunctions []ottl.Factory[ottlmetric.TransformContext]) FactoryOption
Deprecated: [v0.142.0] Use WithMetricFunctionsNew.
func WithMetricFunctionsNew ¶ added in v0.142.0
func WithMetricFunctionsNew(metricFunctions []ottl.Factory[*ottlmetric.TransformContext]) FactoryOption
WithMetricFunctionsNew will override the default OTTL metric context functions with the provided metricFunctions in the resulting processor. Subsequent uses of WithMetricFunctionsNew will merge the provided metricFunctions with the previously registered functions.
func WithProfileFunctions ¶ added in v0.138.0
func WithProfileFunctions(profileFunctions []ottl.Factory[ottlprofile.TransformContext]) FactoryOption
WithProfileFunctions will override the default OTTL profile context functions with the provided profileFunctions in the resulting processor. Subsequent uses of WithProfileFunctions will merge the provided profileFunctions with the previously registered functions.
func WithResourceFunctions
deprecated
added in
v0.139.0
func WithResourceFunctions(resourceFunctions []ottl.Factory[ottlresource.TransformContext]) FactoryOption
Deprecated: [v0.142.0] Use WithResourceFunctionsNew.
func WithResourceFunctionsNew ¶ added in v0.142.0
func WithResourceFunctionsNew(resourceFunctions []ottl.Factory[*ottlresource.TransformContext]) FactoryOption
WithResourceFunctionsNew will override the default OTTL resource context functions with the provided resourceFunctions in resulting processor. Subsequent uses of WithResourceFunctionsNew will merge the provided resourceFunctions with the previously registered functions.
func WithSpanEventFunctions
deprecated
added in
v0.133.0
func WithSpanEventFunctions(spanEventFunctions []ottl.Factory[ottlspanevent.TransformContext]) FactoryOption
Deprecated: [v0.142.0] Use WithSpanEventFunctionsNew.
func WithSpanEventFunctionsNew ¶ added in v0.142.0
func WithSpanEventFunctionsNew(spanEventFunctions []ottl.Factory[*ottlspanevent.TransformContext]) FactoryOption
WithSpanEventFunctionsNew will override the default OTTL spanevent context functions with the provided spanEventFunctions in the resulting processor. Subsequent uses of WithSpanEventFunctionsNew will merge the provided spanEventFunctions with the previously registered functions.
func WithSpanFunctions
deprecated
added in
v0.133.0
func WithSpanFunctions(spanFunctions []ottl.Factory[ottlspan.TransformContext]) FactoryOption
Deprecated: [v0.142.0] use WithSpanFunctionsNew.
func WithSpanFunctionsNew ¶ added in v0.142.0
func WithSpanFunctionsNew(spanFunctions []ottl.Factory[*ottlspan.TransformContext]) FactoryOption
WithSpanFunctionsNew will override the default OTTL span context functions with the provided spanFunctions in the resulting processor. Subsequent uses of WithSpanFunctions will merge the provided spanFunctions with the previously registered functions.
type LogFilters ¶
type LogFilters struct {
// Include match properties describe logs that should be included in the Collector Service pipeline,
// all other logs should be dropped from further processing.
// If both Include and Exclude are specified, Include filtering occurs first.
Include *LogMatchProperties `mapstructure:"include"`
// Exclude match properties describe logs that should be excluded from the Collector Service pipeline,
// all other logs should be included.
// If both Include and Exclude are specified, Include filtering occurs first.
Exclude *LogMatchProperties `mapstructure:"exclude"`
// ResourceConditions is a list of OTTL conditions for an ottlresource context.
// If any condition resolves to true, the whole resource will be dropped.
// Supports `and`, `or`, and `()`
ResourceConditions []string `mapstructure:"resource"`
// LogConditions is a list of OTTL conditions for an ottllog context.
// If any condition resolves to true, the log event will be dropped.
// Supports `and`, `or`, and `()`
LogConditions []string `mapstructure:"log_record"`
}
LogFilters filters by Log properties.
type LogMatchProperties ¶ added in v0.36.0
type LogMatchProperties struct {
// LogMatchType specifies the type of matching desired
LogMatchType LogMatchType `mapstructure:"match_type"`
// ResourceAttributes defines a list of possible resource attributes to match logs against.
// A match occurs if any resource attribute matches all expressions in this given list.
ResourceAttributes []filterconfig.Attribute `mapstructure:"resource_attributes"`
// RecordAttributes defines a list of possible record attributes to match logs against.
// A match occurs if any record attribute matches at least one expression in this given list.
RecordAttributes []filterconfig.Attribute `mapstructure:"record_attributes"`
// SeverityTexts is a list of strings that the LogRecord's severity text field must match
// against.
SeverityTexts []string `mapstructure:"severity_texts"`
// SeverityNumberProperties defines how to match against a log record's SeverityNumber, if defined.
SeverityNumberProperties *LogSeverityNumberMatchProperties `mapstructure:"severity_number"`
// LogBodies is a list of strings that the LogRecord's body field must match
// against.
LogBodies []string `mapstructure:"bodies"`
}
LogMatchProperties specifies the set of properties in a log to match against and the type of string pattern matching to use.
type LogMatchType ¶ added in v0.36.0
type LogMatchType string
LogMatchType specifies the strategy for matching against `plog.Log`s.
type LogSeverityNumberMatchProperties ¶ added in v0.58.0
type LogSeverityNumberMatchProperties struct {
// Min is the minimum severity needed for the log record to match.
// This corresponds to the short names specified here:
// https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#displaying-severity
// this field is case-insensitive ("INFO" == "info")
Min logSeverity `mapstructure:"min"`
// MatchUndefined lets logs records with "unknown" severity match.
// If MinSeverity is not set, this field is ignored, as fields are not matched based on severity.
MatchUndefined bool `mapstructure:"match_undefined"`
}
type MetricFilters ¶
type MetricFilters struct {
// Include match properties describe metrics that should be included in the Collector Service pipeline,
// all other metrics should be dropped from further processing.
// If both Include and Exclude are specified, Include filtering occurs first.
Include *filterconfig.MetricMatchProperties `mapstructure:"include"`
// Exclude match properties describe metrics that should be excluded from the Collector Service pipeline,
// all other metrics should be included.
// If both Include and Exclude are specified, Include filtering occurs first.
Exclude *filterconfig.MetricMatchProperties `mapstructure:"exclude"`
// RegexpConfig specifies options for the regexp match type
RegexpConfig *regexp.Config `mapstructure:"regexp"`
// ResourceConditions is a list of OTTL conditions for an ottlresource context.
// If any condition resolves to true, the whole resource will be dropped.
// Supports `and`, `or`, and `()`
ResourceConditions []string `mapstructure:"resource"`
// MetricConditions is a list of OTTL conditions for an ottlmetric context.
// If any condition resolves to true, the metric will be dropped.
// Supports `and`, `or`, and `()`
MetricConditions []string `mapstructure:"metric"`
// DataPointConditions is a list of OTTL conditions for an ottldatapoint context.
// If any condition resolves to true, the datapoint will be dropped.
// Supports `and`, `or`, and `()`
DataPointConditions []string `mapstructure:"datapoint"`
}
MetricFilters filters by Metric properties.
type ProfileFilters ¶ added in v0.138.0
type ProfileFilters struct {
// ResourceConditions is a list of OTTL conditions for an ottlresource context.
// If any condition resolves to true, the whole resource will be dropped.
// Supports `and`, `or`, and `()`
ResourceConditions []string `mapstructure:"resource"`
// ProfileConditions is a list of OTTL conditions for an ottlprofile context.
// If any condition resolves to true, the profile will be dropped.
// Supports `and`, `or`, and `()`
ProfileConditions []string `mapstructure:"profile"`
// contains filtered or unexported fields
}
ProfileFilters filters by OTTL conditions
type TraceFilters ¶ added in v0.65.0
type TraceFilters struct {
// ResourceConditions is a list of OTTL conditions for an ottlresource context.
// If any condition resolves to true, the whole resource will be dropped.
// Supports `and`, `or`, and `()`
ResourceConditions []string `mapstructure:"resource"`
// SpanConditions is a list of OTTL conditions for an ottlspan context.
// If any condition resolves to true, the span will be dropped.
// Supports `and`, `or`, and `()`
SpanConditions []string `mapstructure:"span"`
// SpanEventConditions is a list of OTTL conditions for an ottlspanevent context.
// If any condition resolves to true, the span event will be dropped.
// Supports `and`, `or`, and `()`
SpanEventConditions []string `mapstructure:"spanevent"`
}
TraceFilters filters by OTTL conditions