Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[chore]: replace methods with eq from ptracetest #1209

Merged
merged 4 commits into from Mar 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Expand Up @@ -4,3 +4,7 @@ updates:
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "gomod"
directory: "/functional_tests"
schedule:
interval: "weekly"
12 changes: 6 additions & 6 deletions .github/workflows/functional_test_v2.yaml
Expand Up @@ -30,7 +30,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down Expand Up @@ -77,7 +77,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down Expand Up @@ -140,7 +140,7 @@ jobs:
run: cd base && git checkout HEAD^
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down Expand Up @@ -196,7 +196,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down Expand Up @@ -259,7 +259,7 @@ jobs:
run: cd base && git checkout HEAD^
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down Expand Up @@ -311,7 +311,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/migration_tests.yaml
Expand Up @@ -30,7 +30,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ~1.20.8
go-version: ~1.21.8
cache: false
- name: Cache Go
id: go-cache
Expand Down
112 changes: 15 additions & 97 deletions functional_tests/functional_test.go
Expand Up @@ -421,20 +421,6 @@ func testNodeJSTraces(t *testing.T) {
}, 3*time.Minute, 5*time.Second)
require.NotNil(t, selectedTrace)

ignoreSpanAttribute("net.peer.port", expectedTraces)
ignoreSpanAttribute("net.peer.port", *selectedTrace)
ignoreSpanAttribute("http.user_agent", expectedTraces)
ignoreSpanAttribute("http.user_agent", *selectedTrace)
ignoreSpanAttribute("os.version", *selectedTrace)
ignoreTraceID(expectedTraces)
ignoreSpanID(expectedTraces)
ignoreTraceID(*selectedTrace)
ignoreSpanID(*selectedTrace)
ignoreStartTimestamp(*selectedTrace)
ignoreEndTimestamp(*selectedTrace)
ignoreStartTimestamp(expectedTraces)
ignoreEndTimestamp(expectedTraces)

err = ptracetest.CompareTraces(expectedTraces, *selectedTrace,
ptracetest.IgnoreResourceAttributeValue("process.pid"),
ptracetest.IgnoreResourceAttributeValue("container.id"),
Expand All @@ -448,6 +434,13 @@ func testNodeJSTraces(t *testing.T) {
ptracetest.IgnoreResourceAttributeValue("telemetry.sdk.version"),
ptracetest.IgnoreResourceAttributeValue("splunk.distro.version"),
ptracetest.IgnoreResourceAttributeValue("splunk.zc.method"),
ptracetest.IgnoreSpanAttributeValue("net.peer.port"),
ptracetest.IgnoreSpanAttributeValue("http.user_agent"),
ptracetest.IgnoreSpanAttributeValue("os.version"),
ptracetest.IgnoreTraceID(),
ptracetest.IgnoreSpanID(),
ptracetest.IgnoreStartTimestamp(),
ptracetest.IgnoreEndTimestamp(),
ptracetest.IgnoreResourceSpansOrder(),
ptracetest.IgnoreScopeSpansOrder(),
)
Expand Down Expand Up @@ -482,22 +475,6 @@ func testJavaTraces(t *testing.T) {

require.NotNil(t, selectedTrace)

ignoreSpanAttribute("net.sock.peer.port", expectedTraces)
ignoreSpanAttribute("net.sock.peer.port", *selectedTrace)
ignoreSpanAttribute("thread.id", expectedTraces)
ignoreSpanAttribute("thread.id", *selectedTrace)
ignoreSpanAttribute("thread.name", expectedTraces)
ignoreSpanAttribute("thread.name", *selectedTrace)
ignoreSpanAttribute("os.version", *selectedTrace)
ignoreTraceID(expectedTraces)
ignoreSpanID(expectedTraces)
ignoreTraceID(*selectedTrace)
ignoreSpanID(*selectedTrace)
ignoreStartTimestamp(*selectedTrace)
ignoreEndTimestamp(*selectedTrace)
ignoreStartTimestamp(expectedTraces)
ignoreEndTimestamp(expectedTraces)

err = ptracetest.CompareTraces(expectedTraces, *selectedTrace,
ptracetest.IgnoreResourceAttributeValue("os.description"),
ptracetest.IgnoreResourceAttributeValue("process.pid"),
Expand All @@ -513,80 +490,21 @@ func testJavaTraces(t *testing.T) {
ptracetest.IgnoreResourceAttributeValue("telemetry.auto.version"),
ptracetest.IgnoreResourceAttributeValue("splunk.distro.version"),
ptracetest.IgnoreResourceAttributeValue("splunk.zc.method"),
ptracetest.IgnoreSpanAttributeValue("net.sock.peer.port"),
ptracetest.IgnoreSpanAttributeValue("thread.id"),
ptracetest.IgnoreSpanAttributeValue("thread.name"),
ptracetest.IgnoreSpanAttributeValue("os.version"),
ptracetest.IgnoreTraceID(),
ptracetest.IgnoreSpanID(),
ptracetest.IgnoreStartTimestamp(),
ptracetest.IgnoreEndTimestamp(),
ptracetest.IgnoreResourceSpansOrder(),
ptracetest.IgnoreScopeSpansOrder(),
)

require.NoError(t, err)
}

func ignoreStartTimestamp(traces ptrace.Traces) {
for i := 0; i < traces.ResourceSpans().Len(); i++ {
rs := traces.ResourceSpans().At(i)
for j := 0; j < rs.ScopeSpans().Len(); j++ {
ss := rs.ScopeSpans().At(j)
for k := 0; k < ss.Spans().Len(); k++ {
span := ss.Spans().At(k)
span.SetStartTimestamp(0)
}
}
}
}

func ignoreEndTimestamp(traces ptrace.Traces) {
for i := 0; i < traces.ResourceSpans().Len(); i++ {
rs := traces.ResourceSpans().At(i)
for j := 0; j < rs.ScopeSpans().Len(); j++ {
ss := rs.ScopeSpans().At(j)
for k := 0; k < ss.Spans().Len(); k++ {
span := ss.Spans().At(k)
span.SetEndTimestamp(0)
}
}
}
}

func ignoreSpanAttribute(attributeName string, traces ptrace.Traces) {
for i := 0; i < traces.ResourceSpans().Len(); i++ {
rs := traces.ResourceSpans().At(i)
for j := 0; j < rs.ScopeSpans().Len(); j++ {
ss := rs.ScopeSpans().At(j)
for k := 0; k < ss.Spans().Len(); k++ {
span := ss.Spans().At(k)
if _, ok := span.Attributes().Get(attributeName); ok {
span.Attributes().PutStr(attributeName, "*")
}
}
}
}
}

func ignoreTraceID(traces ptrace.Traces) {
for i := 0; i < traces.ResourceSpans().Len(); i++ {
rs := traces.ResourceSpans().At(i)
for j := 0; j < rs.ScopeSpans().Len(); j++ {
ss := rs.ScopeSpans().At(j)
for k := 0; k < ss.Spans().Len(); k++ {
span := ss.Spans().At(k)
span.SetTraceID(pcommon.NewTraceIDEmpty())
}
}
}
}

func ignoreSpanID(traces ptrace.Traces) {
for i := 0; i < traces.ResourceSpans().Len(); i++ {
rs := traces.ResourceSpans().At(i)
for j := 0; j < rs.ScopeSpans().Len(); j++ {
ss := rs.ScopeSpans().At(j)
for k := 0; k < ss.Spans().Len(); k++ {
span := ss.Spans().At(k)
span.SetSpanID(pcommon.NewSpanIDEmpty())
}
}
}
}

func shortenNames(value string) string {
if strings.HasPrefix(value, "kube-proxy") {
return "kube-proxy"
Expand Down