diff --git a/pkg/golden/golden.go b/pkg/golden/golden.go index 823f2b143766..7255f5117f1e 100644 --- a/pkg/golden/golden.go +++ b/pkg/golden/golden.go @@ -86,7 +86,7 @@ func writeMetrics(filePath string, metrics pmetric.Metrics, opts ...WriteMetrics if err != nil { return err } - return os.WriteFile(filePath, b, 0600) + return os.WriteFile(filePath, b, 0o600) } // ReadLogs reads a plog.Logs from the specified YAML or JSON file. @@ -137,7 +137,7 @@ func writeLogs(filePath string, logs plog.Logs) error { if err := enc.Encode(jsonVal); err != nil { return err } - return os.WriteFile(filePath, b.Bytes(), 0600) + return os.WriteFile(filePath, b.Bytes(), 0o600) } // ReadTraces reads a ptrace.Traces from the specified YAML or JSON file. @@ -188,5 +188,5 @@ func writeTraces(filePath string, traces ptrace.Traces) error { if err := enc.Encode(jsonVal); err != nil { return err } - return os.WriteFile(filePath, b.Bytes(), 0600) + return os.WriteFile(filePath, b.Bytes(), 0o600) } diff --git a/pkg/golden/golden_test.go b/pkg/golden/golden_test.go index 3b7550f82de7..dbcae432674a 100644 --- a/pkg/golden/golden_test.go +++ b/pkg/golden/golden_test.go @@ -141,7 +141,7 @@ func testMetrics() pmetric.MetricSlice { dp = dps.AppendEmpty() attributes = pcommon.NewMap() - setDPDoubleVal(dp, 2, attributes, time.Date(1997, 07, 27, 1, 1, 1, 1, &time.Location{})) + setDPDoubleVal(dp, 2, attributes, time.Date(1997, 0o7, 27, 1, 1, 1, 1, &time.Location{})) return slice } diff --git a/pkg/ottl/boolean_value_test.go b/pkg/ottl/boolean_value_test.go index ba6fbd3da430..e688a969938f 100644 --- a/pkg/ottl/boolean_value_test.go +++ b/pkg/ottl/boolean_value_test.go @@ -115,7 +115,7 @@ func Test_newComparisonEvaluator(t *testing.T) { JanFirst2023 := time.Date(2023, 1, 1, 0, 0, 0, 0, time.Local) - var tests = []struct { + tests := []struct { name string l any r any @@ -159,16 +159,16 @@ func Test_newComparisonEvaluator(t *testing.T) { {name: "compare not greater than equal to durations", l: "dur1", r: "dur2", op: ">=", want: false, item: map[string]time.Duration{"dur1": oneMillisecond, "dur2": threeSeconds}}, {name: "compare equal times", l: "time1", r: "time2", op: "==", want: true, item: map[string]time.Time{"time1": JanFirst2023, "time2": JanFirst2023}}, {name: "compare unequal times", l: "time1", r: "time2", op: "==", want: false, item: map[string]time.Time{"time1": JanFirst2023, "time2": time.Date(2023, 1, 2, 0, 0, 0, 0, time.Local)}}, - {name: "compare for not equal times", l: "time1", r: "time2", op: "!=", want: true, item: map[string]time.Time{"time1": JanFirst2023, "time2": time.Date(2002, 11, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare for equal times using not equal", l: "time1", r: "time2", op: "!=", want: false, item: map[string]time.Time{"time1": time.Date(2002, 11, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2002, 11, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare less than times", l: "time1", r: "time2", op: "<", want: true, item: map[string]time.Time{"time1": JanFirst2023, "time2": time.Date(2023, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare not less than times", l: "time1", r: "time2", op: "<", want: false, item: map[string]time.Time{"time1": time.Date(2023, 6, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2023, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare less than equal to times", l: "time1", r: "time2", op: "<=", want: true, item: map[string]time.Time{"time1": time.Date(2003, 5, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2003, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare not less than equal to times", l: "time1", r: "time2", op: "<=", want: false, item: map[string]time.Time{"time1": time.Date(2002, 5, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(1999, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare not greater than equal to w/ times", l: "time1", r: "time2", op: ">=", want: false, item: map[string]time.Time{"time1": time.Date(2002, 5, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2003, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare greater than equal to w/ times", l: "time1", r: "time2", op: ">=", want: true, item: map[string]time.Time{"time1": time.Date(2022, 5, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2003, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare greater than w/ times", l: "time1", r: "time2", op: ">", want: true, item: map[string]time.Time{"time1": time.Date(2022, 5, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2003, 5, 2, 01, 01, 01, 01, time.Local)}}, - {name: "compare not greater than w/ times", l: "time1", r: "time2", op: ">", want: false, item: map[string]time.Time{"time1": time.Date(2002, 3, 2, 01, 01, 01, 01, time.Local), "time2": time.Date(2003, 5, 2, 01, 01, 01, 01, time.Local)}}, + {name: "compare for not equal times", l: "time1", r: "time2", op: "!=", want: true, item: map[string]time.Time{"time1": JanFirst2023, "time2": time.Date(2002, 11, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare for equal times using not equal", l: "time1", r: "time2", op: "!=", want: false, item: map[string]time.Time{"time1": time.Date(2002, 11, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2002, 11, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare less than times", l: "time1", r: "time2", op: "<", want: true, item: map[string]time.Time{"time1": JanFirst2023, "time2": time.Date(2023, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare not less than times", l: "time1", r: "time2", op: "<", want: false, item: map[string]time.Time{"time1": time.Date(2023, 6, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2023, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare less than equal to times", l: "time1", r: "time2", op: "<=", want: true, item: map[string]time.Time{"time1": time.Date(2003, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2003, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare not less than equal to times", l: "time1", r: "time2", op: "<=", want: false, item: map[string]time.Time{"time1": time.Date(2002, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(1999, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare not greater than equal to w/ times", l: "time1", r: "time2", op: ">=", want: false, item: map[string]time.Time{"time1": time.Date(2002, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2003, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare greater than equal to w/ times", l: "time1", r: "time2", op: ">=", want: true, item: map[string]time.Time{"time1": time.Date(2022, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2003, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare greater than w/ times", l: "time1", r: "time2", op: ">", want: true, item: map[string]time.Time{"time1": time.Date(2022, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2003, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, + {name: "compare not greater than w/ times", l: "time1", r: "time2", op: ">", want: false, item: map[string]time.Time{"time1": time.Date(2002, 3, 2, 0o1, 0o1, 0o1, 0o1, time.Local), "time2": time.Date(2003, 5, 2, 0o1, 0o1, 0o1, 0o1, time.Local)}}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { @@ -220,6 +220,7 @@ func True() (ExprFunc[any], error) { return true, nil }, nil } + func False() (ExprFunc[any], error) { return func(_ context.Context, _ any) (any, error) { return false, nil @@ -243,7 +244,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { want bool expr *booleanExpression }{ - {"a", false, + { + "a", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -264,7 +266,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"b", true, + { + "b", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -285,7 +288,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"c", false, + { + "c", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -314,7 +318,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"d", true, + { + "d", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -337,7 +342,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"e", true, + { + "e", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -360,7 +366,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"f", false, + { + "f", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -383,7 +390,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"g", true, + { + "g", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -416,7 +424,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"h", true, + { + "h", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -455,7 +464,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"i", true, + { + "i", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -467,7 +477,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"j", false, + { + "j", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -479,7 +490,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"k", true, + { + "k", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -497,7 +509,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"l", false, + { + "l", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -537,7 +550,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"m", false, + { + "m", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -573,7 +587,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"n", true, + { + "n", true, &booleanExpression{ Left: &term{ Left: &booleanValue{ @@ -586,7 +601,8 @@ func Test_newBooleanExpressionEvaluator(t *testing.T) { }, }, }, - {"o", false, + { + "o", false, &booleanExpression{ Left: &term{ Left: &booleanValue{ diff --git a/pkg/ottl/context_inferrer.go b/pkg/ottl/context_inferrer.go index 562e8387f550..da4ade783278 100644 --- a/pkg/ottl/context_inferrer.go +++ b/pkg/ottl/context_inferrer.go @@ -5,18 +5,16 @@ package ottl // import "github.com/open-telemetry/opentelemetry-collector-contri import "math" -var ( - defaultContextInferPriority = []string{ - "log", - "metric", - "datapoint", - "spanevent", - "span", - "resource", - "scope", - "instrumentation_scope", - } -) +var defaultContextInferPriority = []string{ + "log", + "metric", + "datapoint", + "spanevent", + "span", + "resource", + "scope", + "instrumentation_scope", +} // contextInferrer is an interface used to infer the OTTL context from statements paths. type contextInferrer interface { diff --git a/pkg/ottl/contexts/ottldatapoint/datapoint.go b/pkg/ottl/contexts/ottldatapoint/datapoint.go index a8a6f2158045..9c50d85cd723 100644 --- a/pkg/ottl/contexts/ottldatapoint/datapoint.go +++ b/pkg/ottl/contexts/ottldatapoint/datapoint.go @@ -23,9 +23,11 @@ const ( contextName = "DataPoint" ) -var _ internal.ResourceContext = (*TransformContext)(nil) -var _ internal.InstrumentationScopeContext = (*TransformContext)(nil) -var _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +var ( + _ internal.ResourceContext = (*TransformContext)(nil) + _ internal.InstrumentationScopeContext = (*TransformContext)(nil) + _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +) type TransformContext struct { dataPoint any diff --git a/pkg/ottl/contexts/ottllog/log.go b/pkg/ottl/contexts/ottllog/log.go index 5ae40916864e..7ca056730cc7 100644 --- a/pkg/ottl/contexts/ottllog/log.go +++ b/pkg/ottl/contexts/ottllog/log.go @@ -25,9 +25,11 @@ const ( contextName = "Log" ) -var _ internal.ResourceContext = (*TransformContext)(nil) -var _ internal.InstrumentationScopeContext = (*TransformContext)(nil) -var _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +var ( + _ internal.ResourceContext = (*TransformContext)(nil) + _ internal.InstrumentationScopeContext = (*TransformContext)(nil) + _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +) type TransformContext struct { logRecord plog.LogRecord diff --git a/pkg/ottl/contexts/ottlmetric/metrics.go b/pkg/ottl/contexts/ottlmetric/metrics.go index ce5ff174ee69..eba931c74404 100644 --- a/pkg/ottl/contexts/ottlmetric/metrics.go +++ b/pkg/ottl/contexts/ottlmetric/metrics.go @@ -15,9 +15,11 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/contexts/internal" ) -var _ internal.ResourceContext = TransformContext{} -var _ internal.InstrumentationScopeContext = TransformContext{} -var _ internal.MetricContext = TransformContext{} +var ( + _ internal.ResourceContext = TransformContext{} + _ internal.InstrumentationScopeContext = TransformContext{} + _ internal.MetricContext = TransformContext{} +) type TransformContext struct { metric pmetric.Metric diff --git a/pkg/ottl/contexts/ottlresource/resource.go b/pkg/ottl/contexts/ottlresource/resource.go index f7fddd5b7ac4..da3a8ceea1b6 100644 --- a/pkg/ottl/contexts/ottlresource/resource.go +++ b/pkg/ottl/contexts/ottlresource/resource.go @@ -17,8 +17,10 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/contexts/internal/logging" ) -var _ internal.ResourceContext = (*TransformContext)(nil) -var _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +var ( + _ internal.ResourceContext = (*TransformContext)(nil) + _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +) type TransformContext struct { resource pcommon.Resource diff --git a/pkg/ottl/contexts/ottlscope/scope.go b/pkg/ottl/contexts/ottlscope/scope.go index b55635bdcdb3..3ae5e0976446 100644 --- a/pkg/ottl/contexts/ottlscope/scope.go +++ b/pkg/ottl/contexts/ottlscope/scope.go @@ -17,9 +17,11 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/contexts/internal/logging" ) -var _ internal.ResourceContext = (*TransformContext)(nil) -var _ internal.InstrumentationScopeContext = (*TransformContext)(nil) -var _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +var ( + _ internal.ResourceContext = (*TransformContext)(nil) + _ internal.InstrumentationScopeContext = (*TransformContext)(nil) + _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +) type TransformContext struct { instrumentationScope pcommon.InstrumentationScope diff --git a/pkg/ottl/contexts/ottlspan/span.go b/pkg/ottl/contexts/ottlspan/span.go index 34fc2c944c1e..aa3283124bbd 100644 --- a/pkg/ottl/contexts/ottlspan/span.go +++ b/pkg/ottl/contexts/ottlspan/span.go @@ -18,9 +18,11 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/contexts/internal/logging" ) -var _ internal.ResourceContext = (*TransformContext)(nil) -var _ internal.InstrumentationScopeContext = (*TransformContext)(nil) -var _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +var ( + _ internal.ResourceContext = (*TransformContext)(nil) + _ internal.InstrumentationScopeContext = (*TransformContext)(nil) + _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +) type TransformContext struct { span ptrace.Span diff --git a/pkg/ottl/contexts/ottlspan/span_test.go b/pkg/ottl/contexts/ottlspan/span_test.go index 05782cb543ba..967feac6e27a 100644 --- a/pkg/ottl/contexts/ottlspan/span_test.go +++ b/pkg/ottl/contexts/ottlspan/span_test.go @@ -317,7 +317,6 @@ func Test_newPathGetSetter(t *testing.T) { N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("int"), }, }, @@ -331,11 +330,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes float", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("double"), }, }, @@ -349,11 +346,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes bytes", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("bytes"), }, }, @@ -367,11 +362,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes array string", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("arr_str"), }, }, @@ -388,11 +381,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes array bool", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("arr_bool"), }, }, @@ -409,11 +400,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes array int", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("arr_int"), }, }, @@ -430,11 +419,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes array float", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("arr_float"), }, }, @@ -451,11 +438,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes array bytes", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("arr_bytes"), }, }, @@ -472,11 +457,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes pcommon.Map", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("pMap"), }, }, @@ -495,11 +478,9 @@ func Test_newPathGetSetter(t *testing.T) { { name: "attributes map[string]any", path: &internal.TestPath[TransformContext]{ - N: "attributes", KeySlice: []ottl.Key[TransformContext]{ &internal.TestKey[TransformContext]{ - S: ottltest.Strp("map"), }, }, diff --git a/pkg/ottl/contexts/ottlspanevent/span_events.go b/pkg/ottl/contexts/ottlspanevent/span_events.go index 78a72c2660d6..b3826f690d2d 100644 --- a/pkg/ottl/contexts/ottlspanevent/span_events.go +++ b/pkg/ottl/contexts/ottlspanevent/span_events.go @@ -19,9 +19,11 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/contexts/internal/logging" ) -var _ internal.ResourceContext = (*TransformContext)(nil) -var _ internal.InstrumentationScopeContext = (*TransformContext)(nil) -var _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +var ( + _ internal.ResourceContext = (*TransformContext)(nil) + _ internal.InstrumentationScopeContext = (*TransformContext)(nil) + _ zapcore.ObjectMarshaler = (*TransformContext)(nil) +) type TransformContext struct { spanEvent ptrace.SpanEvent @@ -180,6 +182,7 @@ func (pep *pathExpressionParser) parsePath(path ottl.Path[TransformContext]) (ot return nil, internal.FormatDefaultErrorMessage(path.Name(), path.String(), "Span Event", internal.SpanEventRef) } } + func accessCache() ottl.StandardGetSetter[TransformContext] { return ottl.StandardGetSetter[TransformContext]{ Getter: func(_ context.Context, tCtx TransformContext) (any, error) { diff --git a/pkg/ottl/contexts/ottlspanevent/span_events_test.go b/pkg/ottl/contexts/ottlspanevent/span_events_test.go index 15b53aed0ad1..90b0c9781704 100644 --- a/pkg/ottl/contexts/ottlspanevent/span_events_test.go +++ b/pkg/ottl/contexts/ottlspanevent/span_events_test.go @@ -17,9 +17,7 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/ottltest" ) -var ( - spanID2 = [8]byte{8, 7, 6, 5, 4, 3, 2, 1} -) +var spanID2 = [8]byte{8, 7, 6, 5, 4, 3, 2, 1} func Test_newPathGetSetter(t *testing.T) { refSpanEvent, refSpan, refIS, refResource := createTelemetry() diff --git a/pkg/ottl/expression_test.go b/pkg/ottl/expression_test.go index ed6ccaaaadd2..faf121c0c203 100644 --- a/pkg/ottl/expression_test.go +++ b/pkg/ottl/expression_test.go @@ -601,6 +601,7 @@ func Test_newGetter(t *testing.T) { assert.Error(t, err) }) } + func Test_exprGetter_Get_Invalid(t *testing.T) { tests := []struct { name string diff --git a/pkg/ottl/functions_test.go b/pkg/ottl/functions_test.go index 5fc00bd1a0ca..a7bd4aef87c7 100644 --- a/pkg/ottl/functions_test.go +++ b/pkg/ottl/functions_test.go @@ -2457,7 +2457,8 @@ func Test_newPath_WithPathContextNames(t *testing.T) { }, }, }, - }} + }, + } np, err := ps.newPath(gp) if tt.expectedError != "" { diff --git a/pkg/ottl/math_test.go b/pkg/ottl/math_test.go index f83f9af90d40..4f1af566d5ea 100644 --- a/pkg/ottl/math_test.go +++ b/pkg/ottl/math_test.go @@ -621,7 +621,7 @@ func Test_evaluateMathExpressionTimeDuration(t *testing.T) { tenHoursetc, err := time.ParseDuration("10h47m48s11ns") require.NoError(t, err) - var tests = []struct { + tests := []struct { name string mathExpr *mathExpression expected any diff --git a/pkg/ottl/ottlfuncs/func_append.go b/pkg/ottl/ottlfuncs/func_append.go index 362f89670375..3bf6cb2a9021 100644 --- a/pkg/ottl/ottlfuncs/func_append.go +++ b/pkg/ottl/ottlfuncs/func_append.go @@ -21,6 +21,7 @@ type AppendArguments[K any] struct { func NewAppendFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("append", &AppendArguments[K]{}, createAppendFunction[K]) } + func createAppendFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*AppendArguments[K]) if !ok { diff --git a/pkg/ottl/ottlfuncs/func_double_test.go b/pkg/ottl/ottlfuncs/func_double_test.go index 6a9ebda2894a..8e72a17a29c2 100644 --- a/pkg/ottl/ottlfuncs/func_double_test.go +++ b/pkg/ottl/ottlfuncs/func_double_test.go @@ -76,7 +76,6 @@ func Test_Double(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { exprFunc := doubleFunc[any](&ottl.StandardFloatLikeGetter[any]{ - Getter: func(context.Context, any) (any, error) { return test.value, nil }, diff --git a/pkg/ottl/ottlfuncs/func_duration.go b/pkg/ottl/ottlfuncs/func_duration.go index e125ff2b90d3..27138583fa3d 100644 --- a/pkg/ottl/ottlfuncs/func_duration.go +++ b/pkg/ottl/ottlfuncs/func_duration.go @@ -18,6 +18,7 @@ type DurationArguments[K any] struct { func NewDurationFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Duration", &DurationArguments[K]{}, createDurationFunction[K]) } + func createDurationFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*DurationArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_duration_test.go b/pkg/ottl/ottlfuncs/func_duration_test.go index 3736942ef00a..229f167dbbf8 100644 --- a/pkg/ottl/ottlfuncs/func_duration_test.go +++ b/pkg/ottl/ottlfuncs/func_duration_test.go @@ -28,7 +28,8 @@ func Test_Duration(t *testing.T) { }, }, expected: time.Duration(100000000), - }, { + }, + { name: "234 microseconds", duration: &ottl.StandardStringGetter[any]{ Getter: func(_ context.Context, _ any) (any, error) { @@ -36,7 +37,8 @@ func Test_Duration(t *testing.T) { }, }, expected: time.Duration(234000), - }, { + }, + { name: "777 nanoseconds", duration: &ottl.StandardStringGetter[any]{ Getter: func(_ context.Context, _ any) (any, error) { diff --git a/pkg/ottl/ottlfuncs/func_flatten_test.go b/pkg/ottl/ottlfuncs/func_flatten_test.go index bb1b0cae0131..8b37355d3f56 100644 --- a/pkg/ottl/ottlfuncs/func_flatten_test.go +++ b/pkg/ottl/ottlfuncs/func_flatten_test.go @@ -165,6 +165,7 @@ func Test_flatten(t *testing.T) { }) } } + func Test_flatten_bad_target(t *testing.T) { target := &ottl.StandardPMapGetter[any]{ Getter: func(_ context.Context, _ any) (any, error) { diff --git a/pkg/ottl/ottlfuncs/func_hour.go b/pkg/ottl/ottlfuncs/func_hour.go index 3e30fbd1087e..5bc3e89600ac 100644 --- a/pkg/ottl/ottlfuncs/func_hour.go +++ b/pkg/ottl/ottlfuncs/func_hour.go @@ -17,6 +17,7 @@ type HourArguments[K any] struct { func NewHourFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Hour", &HourArguments[K]{}, createHourFunction[K]) } + func createHourFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*HourArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_hours.go b/pkg/ottl/ottlfuncs/func_hours.go index 66ab2dbcad1a..580091ae4bec 100644 --- a/pkg/ottl/ottlfuncs/func_hours.go +++ b/pkg/ottl/ottlfuncs/func_hours.go @@ -17,6 +17,7 @@ type HoursArguments[K any] struct { func NewHoursFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Hours", &HoursArguments[K]{}, createHoursFunction[K]) } + func createHoursFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*HoursArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_microseconds.go b/pkg/ottl/ottlfuncs/func_microseconds.go index 0855efaca055..f76616782b95 100644 --- a/pkg/ottl/ottlfuncs/func_microseconds.go +++ b/pkg/ottl/ottlfuncs/func_microseconds.go @@ -17,6 +17,7 @@ type MicrosecondsArguments[K any] struct { func NewMicrosecondsFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Microseconds", &MicrosecondsArguments[K]{}, createMicrosecondsFunction[K]) } + func createMicrosecondsFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*MicrosecondsArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_milliseconds.go b/pkg/ottl/ottlfuncs/func_milliseconds.go index da787e0e157e..f0d605d5ee5c 100644 --- a/pkg/ottl/ottlfuncs/func_milliseconds.go +++ b/pkg/ottl/ottlfuncs/func_milliseconds.go @@ -17,6 +17,7 @@ type MillisecondsArguments[K any] struct { func NewMillisecondsFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Milliseconds", &MillisecondsArguments[K]{}, createMillisecondsFunction[K]) } + func createMillisecondsFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*MillisecondsArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_minutes.go b/pkg/ottl/ottlfuncs/func_minutes.go index 5048befc5725..557fa972ed46 100644 --- a/pkg/ottl/ottlfuncs/func_minutes.go +++ b/pkg/ottl/ottlfuncs/func_minutes.go @@ -17,6 +17,7 @@ type MinutesArguments[K any] struct { func NewMinutesFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Minutes", &MinutesArguments[K]{}, createMinutesFunction[K]) } + func createMinutesFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*MinutesArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_nanoseconds.go b/pkg/ottl/ottlfuncs/func_nanoseconds.go index 2bb2cd7d1dd4..327696267505 100644 --- a/pkg/ottl/ottlfuncs/func_nanoseconds.go +++ b/pkg/ottl/ottlfuncs/func_nanoseconds.go @@ -17,6 +17,7 @@ type NanosecondsArguments[K any] struct { func NewNanosecondsFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Nanoseconds", &NanosecondsArguments[K]{}, createNanosecondsFunction[K]) } + func createNanosecondsFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*NanosecondsArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_seconds.go b/pkg/ottl/ottlfuncs/func_seconds.go index 7c7e57d62902..895faebe63d8 100644 --- a/pkg/ottl/ottlfuncs/func_seconds.go +++ b/pkg/ottl/ottlfuncs/func_seconds.go @@ -17,6 +17,7 @@ type SecondsArguments[K any] struct { func NewSecondsFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Seconds", &SecondsArguments[K]{}, createSecondsFunction[K]) } + func createSecondsFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*SecondsArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_time.go b/pkg/ottl/ottlfuncs/func_time.go index af5e37326a4f..c849fb3e11a6 100644 --- a/pkg/ottl/ottlfuncs/func_time.go +++ b/pkg/ottl/ottlfuncs/func_time.go @@ -22,6 +22,7 @@ type TimeArguments[K any] struct { func NewTimeFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Time", &TimeArguments[K]{}, createTimeFunction[K]) } + func createTimeFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*TimeArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_time_test.go b/pkg/ottl/ottlfuncs/func_time_test.go index c98b094f39c7..4f24e36584dc 100644 --- a/pkg/ottl/ottlfuncs/func_time_test.go +++ b/pkg/ottl/ottlfuncs/func_time_test.go @@ -74,7 +74,7 @@ func Test_Time(t *testing.T) { }, }, format: "%b %d %Y %H:%M:%S", - expected: time.Date(2023, 3, 14, 17, 02, 59, 0, time.Local), + expected: time.Date(2023, 3, 14, 17, 0o2, 59, 0, time.Local), }, { name: "day of the week long form", @@ -134,7 +134,7 @@ func Test_Time(t *testing.T) { }, }, format: "%Y-%m-%dT%H:%M:%S%z %Z", - expected: time.Date(2012, 11, 01, 22, 8, 41, 0, time.FixedZone("EST", 0)), + expected: time.Date(2012, 11, 0o1, 22, 8, 41, 0, time.FixedZone("EST", 0)), }, { name: "RFC 3339 in custom format before 2000", @@ -144,7 +144,7 @@ func Test_Time(t *testing.T) { }, }, format: "%Y-%m-%dT%H:%M:%S %Z", - expected: time.Date(1986, 10, 01, 00, 17, 33, 00, time.FixedZone("MST", -7*60*60)), + expected: time.Date(1986, 10, 0o1, 0o0, 17, 33, 0o0, time.FixedZone("MST", -7*60*60)), }, { name: "no location", @@ -154,7 +154,7 @@ func Test_Time(t *testing.T) { }, }, format: "%Y/%m/%d", - expected: time.Date(2022, 01, 01, 0, 0, 0, 0, time.Local), + expected: time.Date(2022, 0o1, 0o1, 0, 0, 0, 0, time.Local), }, { name: "with location - America", @@ -187,7 +187,7 @@ func Test_Time(t *testing.T) { }, location: "Asia/Shanghai", format: "%Y-%m-%dT%H:%M:%S %Z", - expected: time.Date(1986, 10, 01, 00, 17, 33, 00, time.FixedZone("MST", -7*60*60)), + expected: time.Date(1986, 10, 0o1, 0o0, 17, 33, 0o0, time.FixedZone("MST", -7*60*60)), }, { name: "with locale", @@ -198,7 +198,7 @@ func Test_Time(t *testing.T) { }, format: "%B %d %A, %Y, %r", locale: "es-ES", - expected: time.Date(2002, 2, 25, 14, 03, 04, 0, time.Local), + expected: time.Date(2002, 2, 25, 14, 0o3, 0o4, 0, time.Local), }, { name: "with locale - date only", @@ -221,7 +221,7 @@ func Test_Time(t *testing.T) { format: "%B %d %A, %Y, %r", location: "America/New_York", locale: "es-ES", - expected: time.Date(2002, 2, 25, 14, 03, 04, 0, locationAmericaNewYork), + expected: time.Date(2002, 2, 25, 14, 0o3, 0o4, 0, locationAmericaNewYork), }, } for _, tt := range tests { @@ -400,7 +400,7 @@ func Benchmark_Time(t *testing.B) { }, }, format: "%b %d %Y %H:%M:%S", - expected: time.Date(2023, 3, 14, 17, 02, 59, 0, time.Local), + expected: time.Date(2023, 3, 14, 17, 0o2, 59, 0, time.Local), }, { name: "day of the week long form", @@ -460,7 +460,7 @@ func Benchmark_Time(t *testing.B) { }, }, format: "%Y-%m-%dT%H:%M:%S%z %Z", - expected: time.Date(2012, 11, 01, 22, 8, 41, 0, time.FixedZone("EST", 0)), + expected: time.Date(2012, 11, 0o1, 22, 8, 41, 0, time.FixedZone("EST", 0)), }, { name: "RFC 3339 in custom format before 2000", @@ -470,7 +470,7 @@ func Benchmark_Time(t *testing.B) { }, }, format: "%Y-%m-%dT%H:%M:%S %Z", - expected: time.Date(1986, 10, 01, 00, 17, 33, 00, time.FixedZone("MST", -7*60*60)), + expected: time.Date(1986, 10, 0o1, 0o0, 17, 33, 0o0, time.FixedZone("MST", -7*60*60)), }, { name: "no location", @@ -480,7 +480,7 @@ func Benchmark_Time(t *testing.B) { }, }, format: "%Y/%m/%d", - expected: time.Date(2022, 01, 01, 0, 0, 0, 0, time.Local), + expected: time.Date(2022, 0o1, 0o1, 0, 0, 0, 0, time.Local), }, { name: "with location - America", @@ -513,7 +513,7 @@ func Benchmark_Time(t *testing.B) { }, location: "Asia/Shanghai", format: "%Y-%m-%dT%H:%M:%S %Z", - expected: time.Date(1986, 10, 01, 00, 17, 33, 00, time.FixedZone("MST", -7*60*60)), + expected: time.Date(1986, 10, 0o1, 0o0, 17, 33, 0o0, time.FixedZone("MST", -7*60*60)), }, } for _, tt := range tests { diff --git a/pkg/ottl/ottlfuncs/func_truncate_time.go b/pkg/ottl/ottlfuncs/func_truncate_time.go index 3d122dfb8740..167053538130 100644 --- a/pkg/ottl/ottlfuncs/func_truncate_time.go +++ b/pkg/ottl/ottlfuncs/func_truncate_time.go @@ -18,6 +18,7 @@ type TruncateTimeArguments[K any] struct { func NewTruncateTimeFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("TruncateTime", &TruncateTimeArguments[K]{}, createTruncateTimeFunction[K]) } + func createTruncateTimeFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*TruncateTimeArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_unix.go b/pkg/ottl/ottlfuncs/func_unix.go index 06de04b413ba..47c5065ff0e4 100644 --- a/pkg/ottl/ottlfuncs/func_unix.go +++ b/pkg/ottl/ottlfuncs/func_unix.go @@ -19,6 +19,7 @@ type UnixArguments[K any] struct { func NewUnixFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("Unix", &UnixArguments[K]{}, createUnixFunction[K]) } + func createUnixFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*UnixArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_unix_micro.go b/pkg/ottl/ottlfuncs/func_unix_micro.go index d55f717c7509..939941b12fe6 100644 --- a/pkg/ottl/ottlfuncs/func_unix_micro.go +++ b/pkg/ottl/ottlfuncs/func_unix_micro.go @@ -17,6 +17,7 @@ type UnixMicroArguments[K any] struct { func NewUnixMicroFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("UnixMicro", &UnixMicroArguments[K]{}, createUnixMicroFunction[K]) } + func createUnixMicroFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*UnixMicroArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_unix_milli.go b/pkg/ottl/ottlfuncs/func_unix_milli.go index 8f5e587c73b6..7aabfedb47a1 100644 --- a/pkg/ottl/ottlfuncs/func_unix_milli.go +++ b/pkg/ottl/ottlfuncs/func_unix_milli.go @@ -17,6 +17,7 @@ type UnixMilliArguments[K any] struct { func NewUnixMilliFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("UnixMilli", &UnixMilliArguments[K]{}, createUnixMilliFunction[K]) } + func createUnixMilliFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*UnixMilliArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_unix_nano.go b/pkg/ottl/ottlfuncs/func_unix_nano.go index 4c027d855fcb..5ba82f5d607b 100644 --- a/pkg/ottl/ottlfuncs/func_unix_nano.go +++ b/pkg/ottl/ottlfuncs/func_unix_nano.go @@ -17,6 +17,7 @@ type UnixNanoArguments[K any] struct { func NewUnixNanoFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("UnixNano", &UnixNanoArguments[K]{}, createUnixNanoFunction[K]) } + func createUnixNanoFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*UnixNanoArguments[K]) diff --git a/pkg/ottl/ottlfuncs/func_unix_seconds.go b/pkg/ottl/ottlfuncs/func_unix_seconds.go index 612a87f8c50c..55b7f0f130e4 100644 --- a/pkg/ottl/ottlfuncs/func_unix_seconds.go +++ b/pkg/ottl/ottlfuncs/func_unix_seconds.go @@ -17,6 +17,7 @@ type UnixSecondsArguments[K any] struct { func NewUnixSecondsFactory[K any]() ottl.Factory[K] { return ottl.NewFactory("UnixSeconds", &UnixSecondsArguments[K]{}, createUnixSecondsFunction[K]) } + func createUnixSecondsFunction[K any](_ ottl.FunctionContext, oArgs ottl.Arguments) (ottl.ExprFunc[K], error) { args, ok := oArgs.(*UnixSecondsArguments[K]) diff --git a/pkg/ottl/parser.go b/pkg/ottl/parser.go index f16f0e3b0fbb..4856279181d1 100644 --- a/pkg/ottl/parser.go +++ b/pkg/ottl/parser.go @@ -224,12 +224,13 @@ func (p *Parser[K]) prependContextToStatementPaths(context string, statement str return insertContextIntoStatementOffsets(context, statement, missingContextOffsets) } -var parser = newParser[parsedStatement]() -var conditionParser = newParser[booleanExpression]() +var ( + parser = newParser[parsedStatement]() + conditionParser = newParser[booleanExpression]() +) func parseStatement(raw string) (*parsedStatement, error) { parsed, err := parser.ParseString("", raw) - if err != nil { return nil, fmt.Errorf("statement has invalid syntax: %w", err) } @@ -243,7 +244,6 @@ func parseStatement(raw string) (*parsedStatement, error) { func parseCondition(raw string) (*booleanExpression, error) { parsed, err := conditionParser.ParseString("", raw) - if err != nil { return nil, fmt.Errorf("condition has invalid syntax: %w", err) } diff --git a/pkg/sampling/common.go b/pkg/sampling/common.go index ad94bac763eb..d97c07087226 100644 --- a/pkg/sampling/common.go +++ b/pkg/sampling/common.go @@ -17,11 +17,9 @@ type KV struct { Value string } -var ( - // ErrTraceStateSize is returned when a TraceState is over its - // size limit, as specified by W3C. - ErrTraceStateSize = errors.New("invalid tracestate size") -) +// ErrTraceStateSize is returned when a TraceState is over its +// size limit, as specified by W3C. +var ErrTraceStateSize = errors.New("invalid tracestate size") // keyValueScanner defines distinct scanner behaviors for lists of // key-values. diff --git a/pkg/sampling/randomness_test.go b/pkg/sampling/randomness_test.go index 9d4a164b6509..d0f900e700ad 100644 --- a/pkg/sampling/randomness_test.go +++ b/pkg/sampling/randomness_test.go @@ -24,7 +24,7 @@ func TestExplicitRandomness(t *testing.T) { func ExampleTraceIDToRandomness() { // TraceID represented in hex as "abababababababababd29d6a7215ced0" - var exampleTid = pcommon.TraceID{ + exampleTid := pcommon.TraceID{ // 9 meaningless bytes 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, // 7 bytes randomness diff --git a/pkg/stanza/adapter/converter_test.go b/pkg/stanza/adapter/converter_test.go index 8092cb677592..a56a21f94eb2 100644 --- a/pkg/stanza/adapter/converter_test.go +++ b/pkg/stanza/adapter/converter_test.go @@ -895,7 +895,8 @@ func TestConvertTrace(t *testing.T) { }, TraceFlags: []byte{ 0x01, - }}) + }, + }) require.Equal(t, pcommon.TraceID( [16]byte{ @@ -916,7 +917,8 @@ func TestConvertTraceEmptyFlags(t *testing.T) { SpanID: []byte{ 0x32, 0xf0, 0xa2, 0x2b, 0x6a, 0x81, 0x2c, 0xff, }, - TraceFlags: []byte{}}) + TraceFlags: []byte{}, + }) require.Equal(t, pcommon.TraceID( [16]byte{ diff --git a/pkg/stanza/adapter/integration_test.go b/pkg/stanza/adapter/integration_test.go index c75eeedd56d9..51d7676f355c 100644 --- a/pkg/stanza/adapter/integration_test.go +++ b/pkg/stanza/adapter/integration_test.go @@ -70,9 +70,7 @@ func BenchmarkEmitterToConsumer(b *testing.B) { hostsCount = 4 ) - var ( - entries = complexEntriesForNDifferentHosts(entryCount, hostsCount) - ) + entries := complexEntriesForNDifferentHosts(entryCount, hostsCount) cl := &consumertest.LogsSink{} logsReceiver, err := createNoopReceiver(cl) @@ -109,9 +107,7 @@ func BenchmarkEmitterToConsumerScopeGroupping(b *testing.B) { scopesCount = 2 ) - var ( - entries = complexEntriesForNDifferentHostsMDifferentScopes(entryCount, hostsCount, scopesCount) - ) + entries := complexEntriesForNDifferentHostsMDifferentScopes(entryCount, hostsCount, scopesCount) cl := &consumertest.LogsSink{} logsReceiver, err := createNoopReceiver(cl) diff --git a/pkg/stanza/adapter/receiver_test.go b/pkg/stanza/adapter/receiver_test.go index e41df3d9a9fc..1e08e9498e24 100644 --- a/pkg/stanza/adapter/receiver_test.go +++ b/pkg/stanza/adapter/receiver_test.go @@ -271,7 +271,7 @@ pipeline: filePath) confmapFilePath := filepath.Join(b.TempDir(), "conf.yaml") - require.NoError(b, os.WriteFile(confmapFilePath, []byte(pipelineYaml), 0600)) + require.NoError(b, os.WriteFile(confmapFilePath, []byte(pipelineYaml), 0o600)) testConfMaps, err := confmaptest.LoadConf(confmapFilePath) require.NoError(b, err) @@ -322,7 +322,7 @@ pipeline: rcv.emitter = emitter // Populate the file that will be consumed - file, err := os.OpenFile(filePath, os.O_RDWR|os.O_CREATE, 0666) + file, err := os.OpenFile(filePath, os.O_RDWR|os.O_CREATE, 0o666) require.NoError(b, err) for i := 0; i < b.N; i++ { _, err := file.WriteString("testlog\n") @@ -384,7 +384,7 @@ func BenchmarkParseAndMap(b *testing.B) { require.NoError(b, err) // Populate the file that will be consumed - file, err := os.OpenFile(filePath, os.O_RDWR|os.O_CREATE, 0666) + file, err := os.OpenFile(filePath, os.O_RDWR|os.O_CREATE, 0o666) require.NoError(b, err) for i := 0; i < b.N; i++ { _, err := file.WriteString(fmt.Sprintf("10.33.121.119 - - [11/Aug/2020:00:00:00 -0400] \"GET /index.html HTTP/1.1\" 404 %d\n", i%1000)) diff --git a/pkg/stanza/entry/body_field.go b/pkg/stanza/entry/body_field.go index 4db2363b4980..534231b73eb5 100644 --- a/pkg/stanza/entry/body_field.go +++ b/pkg/stanza/entry/body_field.go @@ -55,7 +55,7 @@ func (f BodyField) String() string { // Get will retrieve a value from an entry's body using the field. // It will return the value and whether the field existed. func (f BodyField) Get(entry *Entry) (any, bool) { - var currentValue = entry.Body + currentValue := entry.Body for _, key := range f.Keys { currentMap, ok := currentValue.(map[string]any) diff --git a/pkg/stanza/fileconsumer/attrs/attrs.go b/pkg/stanza/fileconsumer/attrs/attrs.go index 20a96a158f60..5c953c443e42 100644 --- a/pkg/stanza/fileconsumer/attrs/attrs.go +++ b/pkg/stanza/fileconsumer/attrs/attrs.go @@ -30,7 +30,7 @@ type Resolver struct { } func (r *Resolver) Resolve(file *os.File) (attributes map[string]any, err error) { - var path = file.Name() + path := file.Name() // size 2 is sufficient if not resolving symlinks. This optimizes for the most performant cases. attributes = make(map[string]any, 2) if r.IncludeFileName { diff --git a/pkg/stanza/fileconsumer/internal/filetest/filetest.go b/pkg/stanza/fileconsumer/internal/filetest/filetest.go index 4c58cf3762a9..309ba2910d6e 100644 --- a/pkg/stanza/fileconsumer/internal/filetest/filetest.go +++ b/pkg/stanza/fileconsumer/internal/filetest/filetest.go @@ -13,7 +13,7 @@ import ( ) func OpenFile(tb testing.TB, path string) *os.File { - file, err := os.OpenFile(path, os.O_CREATE|os.O_RDWR, 0600) + file, err := os.OpenFile(path, os.O_CREATE|os.O_RDWR, 0o600) require.NoError(tb, err) tb.Cleanup(func() { _ = file.Close() }) return file diff --git a/pkg/stanza/fileconsumer/internal/header/config.go b/pkg/stanza/fileconsumer/internal/header/config.go index 768fc1611df1..41c8b30c82be 100644 --- a/pkg/stanza/fileconsumer/internal/header/config.go +++ b/pkg/stanza/fileconsumer/internal/header/config.go @@ -39,7 +39,6 @@ func NewConfig(set component.TelemetrySettings, matchRegex string, metadataOpera Operators: metadataOperators, DefaultOutput: newPipelineOutput(set), }.Build(set) - if err != nil { return nil, fmt.Errorf("failed to build pipelines: %w", err) } diff --git a/pkg/stanza/fileconsumer/matcher/internal/finder/finder_test.go b/pkg/stanza/fileconsumer/matcher/internal/finder/finder_test.go index ee004f72fce1..d6e360931e3c 100644 --- a/pkg/stanza/fileconsumer/matcher/internal/finder/finder_test.go +++ b/pkg/stanza/fileconsumer/matcher/internal/finder/finder_test.go @@ -177,10 +177,10 @@ func TestFindFiles(t *testing.T) { require.NoError(t, os.Chdir(cwd)) }() for _, f := range tc.files { - require.NoError(t, os.MkdirAll(filepath.Dir(f), 0700)) + require.NoError(t, os.MkdirAll(filepath.Dir(f), 0o700)) var file *os.File - file, err = os.OpenFile(f, os.O_CREATE|os.O_RDWR, 0600) + file, err = os.OpenFile(f, os.O_CREATE|os.O_RDWR, 0o600) require.NoError(t, err) _, err = file.WriteString(filepath.Base(f)) @@ -213,15 +213,15 @@ func TestFindFilesWithIOErrors(t *testing.T) { filepath.Join("dir1", "1.log"), filepath.Join("dir1", "2.log"), } { - require.NoError(t, os.MkdirAll(filepath.Dir(f), 0700)) + require.NoError(t, os.MkdirAll(filepath.Dir(f), 0o700)) - _, err = os.OpenFile(f, os.O_CREATE|os.O_RDWR, 0600) + _, err = os.OpenFile(f, os.O_CREATE|os.O_RDWR, 0o600) require.NoError(t, err) } - require.NoError(t, os.Chmod("no_permission", 0000)) + require.NoError(t, os.Chmod("no_permission", 0o000)) defer func() { - require.NoError(t, os.Chmod("no_permission", 0700)) + require.NoError(t, os.Chmod("no_permission", 0o700)) }() cases := []struct { diff --git a/pkg/stanza/fileconsumer/matcher/matcher_test.go b/pkg/stanza/fileconsumer/matcher/matcher_test.go index 0dd46c1fe6b2..9b078cac35e5 100644 --- a/pkg/stanza/fileconsumer/matcher/matcher_test.go +++ b/pkg/stanza/fileconsumer/matcher/matcher_test.go @@ -753,7 +753,8 @@ func TestMatcher(t *testing.T) { expected: []string{ filepath.Join("a", "1.log"), }, - }} + }, + } for _, tc := range cases { t.Run(tc.name, func(t *testing.T) { @@ -764,8 +765,8 @@ func TestMatcher(t *testing.T) { require.NoError(t, os.Chdir(cwd)) }() for _, f := range tc.files { - require.NoError(t, os.MkdirAll(filepath.Dir(f), 0700)) - file, fErr := os.OpenFile(f, os.O_CREATE|os.O_RDWR, 0600) + require.NoError(t, os.MkdirAll(filepath.Dir(f), 0o700)) + file, fErr := os.OpenFile(f, os.O_CREATE|os.O_RDWR, 0o600) require.NoError(t, fErr) _, fErr = file.WriteString(filepath.Base(f)) diff --git a/pkg/stanza/fileconsumer/rotation_test.go b/pkg/stanza/fileconsumer/rotation_test.go index 1864f0e7e241..bc8f067f535a 100644 --- a/pkg/stanza/fileconsumer/rotation_test.go +++ b/pkg/stanza/fileconsumer/rotation_test.go @@ -191,14 +191,14 @@ func TestTrackMovedAwayFiles(t *testing.T) { operator.wg.Wait() newDir := fmt.Sprintf("%s%s", tempDir[:len(tempDir)-1], "_new/") - err := os.Mkdir(newDir, 0777) + err := os.Mkdir(newDir, 0o777) require.NoError(t, err) newFileName := fmt.Sprintf("%s%s", newDir, "newfile.log") err = os.Rename(temp1.Name(), newFileName) require.NoError(t, err) - movedFile, err := os.OpenFile(newFileName, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) + movedFile, err := os.OpenFile(newFileName, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0o644) require.NoError(t, err) filetest.WriteString(t, movedFile, "testlog2\n") operator.poll(context.Background()) @@ -236,12 +236,12 @@ func TestTrackRotatedFilesLogOrder(t *testing.T) { originalFile.Close() newDir := fmt.Sprintf("%s%s", tempDir[:len(tempDir)-1], "_new/") - require.NoError(t, os.Mkdir(newDir, 0777)) + require.NoError(t, os.Mkdir(newDir, 0o777)) movedFileName := fmt.Sprintf("%s%s", newDir, "newfile.log") require.NoError(t, os.Rename(orginalName, movedFileName)) - newFile, err := os.OpenFile(orginalName, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) + newFile, err := os.OpenFile(orginalName, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0o644) require.NoError(t, err) filetest.WriteString(t, newFile, "testlog3\n") diff --git a/pkg/stanza/internal/time/time.go b/pkg/stanza/internal/time/time.go index 79562212c861..34269bbf3fbf 100644 --- a/pkg/stanza/internal/time/time.go +++ b/pkg/stanza/internal/time/time.go @@ -9,8 +9,10 @@ import ( "github.com/jonboulle/clockwork" ) -var Now = time.Now -var Since = time.Since +var ( + Now = time.Now + Since = time.Since +) // Clock where Now() always returns a greater value than the previous return value type AlwaysIncreasingClock struct { diff --git a/pkg/stanza/operator/helper/parser_test.go b/pkg/stanza/operator/helper/parser_test.go index f8b69985a611..ef5e7c06c669 100644 --- a/pkg/stanza/operator/helper/parser_test.go +++ b/pkg/stanza/operator/helper/parser_test.go @@ -253,6 +253,7 @@ func TestParserInvalidTimeParseSend(t *testing.T) { fakeOut.ExpectEntry(t, testEntry) fakeOut.ExpectNoEntry(t, 100*time.Millisecond) } + func TestParserInvalidSeverityParseDrop(t *testing.T) { writer, fakeOut := writerWithFakeOut(t) parser := ParserOperator{ diff --git a/pkg/stanza/operator/helper/time_test.go b/pkg/stanza/operator/helper/time_test.go index 0d06b456e1a9..4c567d9793db 100644 --- a/pkg/stanza/operator/helper/time_test.go +++ b/pkg/stanza/operator/helper/time_test.go @@ -203,7 +203,7 @@ func TestTimeParser(t *testing.T) { { name: "oracle", sample: "2019-10-15T10:42:01.900436-10:00", - expected: time.Date(2019, time.October, 15, 10, 42, 01, 900436*1000, hst), + expected: time.Date(2019, time.October, 15, 10, 42, 0o1, 900436*1000, hst), gotimeLayout: "2006-01-02T15:04:05.999999-07:00", strptimeLayout: "%Y-%m-%dT%H:%M:%S.%f%j", }, @@ -239,7 +239,7 @@ func TestTimeParser(t *testing.T) { { name: "puppet", sample: "Aug 4 03:26:02", - expected: time.Date(timeutils.Now().Year(), time.August, 4, 3, 26, 02, 0, time.Local), + expected: time.Date(timeutils.Now().Year(), time.August, 4, 3, 26, 0o2, 0, time.Local), gotimeLayout: "Jan _2 15:04:05", strptimeLayout: "%b %e %H:%M:%S", }, diff --git a/pkg/stanza/operator/input/namedpipe/input_test.go b/pkg/stanza/operator/input/namedpipe/input_test.go index de97d08ebacc..5afd84813360 100644 --- a/pkg/stanza/operator/input/namedpipe/input_test.go +++ b/pkg/stanza/operator/input/namedpipe/input_test.go @@ -39,7 +39,7 @@ func filename(t testing.TB) string { func TestCreatePipe(t *testing.T) { conf := NewConfig() conf.Path = filename(t) - conf.Permissions = 0666 + conf.Permissions = 0o666 set := componenttest.NewNopTelemetrySettings() op, err := conf.Build(set) @@ -62,7 +62,7 @@ func TestCreatePipe(t *testing.T) { func TestCreatePipeFailsWithFile(t *testing.T) { conf := NewConfig() conf.Path = filename(t) - conf.Permissions = 0666 + conf.Permissions = 0o666 pipe, err := os.OpenFile(conf.Path, os.O_CREATE, 0) require.NoError(t, err) @@ -81,7 +81,7 @@ func TestCreatePipeFailsWithFile(t *testing.T) { func TestCreatePipeAlreadyExists(t *testing.T) { conf := NewConfig() conf.Path = filename(t) - conf.Permissions = 0666 + conf.Permissions = 0o666 require.NoError(t, unix.Mkfifo(conf.Path, conf.Permissions)) @@ -99,7 +99,7 @@ func TestPipeWrites(t *testing.T) { conf := NewConfig() conf.Path = filename(t) - conf.Permissions = 0666 + conf.Permissions = 0o666 conf.OutputIDs = []string{fake.ID()} set := componenttest.NewNopTelemetrySettings() diff --git a/pkg/stanza/operator/input/tcp/input_test.go b/pkg/stanza/operator/input/tcp/input_test.go index 7ddee6ced3f9..359385f17b5d 100644 --- a/pkg/stanza/operator/input/tcp/input_test.go +++ b/pkg/stanza/operator/input/tcp/input_test.go @@ -391,7 +391,7 @@ func TestFailToBind(t *testing.T) { t.Errorf("failed to find a free port between %d and %d", minPort, maxPort) } - var startTCP = func(int) (*Input, error) { + startTCP := func(int) (*Input, error) { cfg := NewConfigWithID("test_id") cfg.ListenAddress = net.JoinHostPort(ip, strconv.Itoa(port)) set := componenttest.NewNopTelemetrySettings() diff --git a/pkg/stanza/operator/input/udp/input_test.go b/pkg/stanza/operator/input/udp/input_test.go index e7e7366067b0..6f1ab7e9083d 100644 --- a/pkg/stanza/operator/input/udp/input_test.go +++ b/pkg/stanza/operator/input/udp/input_test.go @@ -179,7 +179,7 @@ func TestFailToBind(t *testing.T) { t.Errorf("failed to find a free port between %d and %d", minPort, maxPort) } - var startUDP = func(int) (*Input, error) { + startUDP := func(int) (*Input, error) { cfg := NewConfigWithID("test_input") cfg.ListenAddress = net.JoinHostPort(ip, strconv.Itoa(port)) diff --git a/pkg/stanza/operator/input/windows/event.go b/pkg/stanza/operator/input/windows/event.go index 9fc2bc28b071..7fa8c52292a6 100644 --- a/pkg/stanza/operator/input/windows/event.go +++ b/pkg/stanza/operator/input/windows/event.go @@ -13,8 +13,10 @@ import ( ) // systemPropertiesRenderContext stores a custom rendering context to get only the event properties. -var systemPropertiesRenderContext = uintptr(0) -var systemPropertiesRenderContextErr error +var ( + systemPropertiesRenderContext = uintptr(0) + systemPropertiesRenderContextErr error +) func init() { // This is not expected to fail, however, collecting the error if a new failure mode appears. diff --git a/pkg/stanza/operator/input/windows/xml_test.go b/pkg/stanza/operator/input/windows/xml_test.go index ac8d6e2f9835..313a09f15101 100644 --- a/pkg/stanza/operator/input/windows/xml_test.go +++ b/pkg/stanza/operator/input/windows/xml_test.go @@ -414,7 +414,8 @@ func TestParseEventData(t *testing.T) { expectedSlice := map[string]any{ "data": []any{ map[string]any{"name": "value"}, - map[string]any{"": "no_name"}}, + map[string]any{"": "no_name"}, + }, } require.Equal(t, expectedSlice, parsed["event_data"]) } @@ -423,6 +424,7 @@ func TestInvalidUnmarshal(t *testing.T) { _, err := unmarshalEventXML([]byte("Test \n Invalid \t Unmarshal")) require.Error(t, err) } + func TestUnmarshalWithEventData(t *testing.T) { data, err := os.ReadFile(filepath.Join("testdata", "xmlSample.xml")) require.NoError(t, err) @@ -455,7 +457,8 @@ func TestUnmarshalWithEventData(t *testing.T) { EventData: EventData{ Data: []Data{ {Name: "Time", Value: "2022-04-28T19:48:52Z"}, - {Name: "Source", Value: "RulesEngine"}}, + {Name: "Source", Value: "RulesEngine"}, + }, }, Keywords: []string{"0x80000000000000"}, Original: string(data), diff --git a/pkg/stanza/operator/output/file/output.go b/pkg/stanza/operator/output/file/output.go index 6f98c3a09196..36552c50d99c 100644 --- a/pkg/stanza/operator/output/file/output.go +++ b/pkg/stanza/operator/output/file/output.go @@ -31,7 +31,7 @@ type Output struct { // Start will open the output file. func (o *Output) Start(_ operator.Persister) error { var err error - o.file, err = os.OpenFile(o.path, os.O_RDWR|os.O_APPEND|os.O_CREATE, 0600) + o.file, err = os.OpenFile(o.path, os.O_RDWR|os.O_APPEND|os.O_CREATE, 0o600) if err != nil { return err } diff --git a/pkg/stanza/operator/parser/container/parser.go b/pkg/stanza/operator/parser/container/parser.go index 1db63db1be4a..4e111360d3fb 100644 --- a/pkg/stanza/operator/parser/container/parser.go +++ b/pkg/stanza/operator/parser/container/parser.go @@ -21,17 +21,19 @@ import ( "github.com/open-telemetry/opentelemetry-collector-contrib/pkg/stanza/operator/helper" ) -const dockerFormat = "docker" -const crioFormat = "crio" -const containerdFormat = "containerd" -const recombineInternalID = "recombine_container_internal" -const dockerPattern = "^\\{" -const crioPattern = "^(?P