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

[Draft; don't merge] v2.0.0-alpha #2427

Draft
wants to merge 522 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 239 commits
Commits
Show all changes
522 commits
Select commit Hold shift + click to select a range
1c62b2f
v2: stabilize contribs go.mod
darccio Dec 21, 2023
34ae239
v2/contrib/google.golang.org/api/internal/gen_endpoints: fix go.sum
darccio Dec 21, 2023
004877c
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Dec 21, 2023
7da8714
.github/workflows: add contribs smoke tests
darccio Dec 21, 2023
64b5f4b
.github/workflows: install gotestsum for contribs' smoke tests
darccio Dec 21, 2023
6acbdcf
.github/workflows: add support for test results path
darccio Dec 21, 2023
0ad0231
.github/workflows/apps: add -t to contribs' go get for smoke tests
darccio Dec 21, 2023
c592d67
.github/workflows: add -t to smoke tests go get to include test packages
darccio Dec 21, 2023
e424dbf
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Dec 21, 2023
93bb147
v2/contrib/aws/*: add empty go files to allow govulncheck to work
darccio Dec 21, 2023
a480295
.github/workflows: add ref to waf-disabled checkout
darccio Dec 21, 2023
89d3f4f
.github/workflows: adapt govunlcheck workflow to some special cases i…
darccio Dec 21, 2023
740580a
.github/workflows: add logging to govulncheck step
darccio Dec 21, 2023
b3096c2
.github/workflows: fix bash conditional
darccio Dec 21, 2023
41483cb
.github/workflows: skip aws-sdk-go contribs
darccio Dec 21, 2023
c0f9915
.github/workflows: move govulncheck for contribs to a bash script
darccio Dec 21, 2023
31f2051
.github/workflows: add execution permission to govulncheck-contribs-v…
darccio Dec 21, 2023
6bb06a7
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Dec 22, 2023
309701f
internal/*: fix v1 import URLs
darccio Dec 22, 2023
006f64a
internal/appsec: remove cyclic import
darccio Dec 22, 2023
469a902
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Dec 22, 2023
10b254c
.github/workflows/apps: fix gotestsum_runner for appsec-test-contrib-…
darccio Dec 22, 2023
0730a99
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Dec 27, 2023
089e965
ddtrace/tracer: remove deprecated SQLCommentInjectionMode
darccio Dec 27, 2023
059d7ed
ddtrace/tracer: remove deprecated WithHTTPRoundTripper
darccio Dec 27, 2023
34efc83
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Dec 27, 2023
cb961b8
v2: unify all *Option under one option pattern for each integration (…
darccio Dec 27, 2023
d4a099d
ddtrace/tracer: remove TODO in traceID.HasUpper (AIT-9181)
darccio Dec 29, 2023
cf01074
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 2, 2024
aca54f5
v2/contrib/gocql/gocql: restore Wrap{Batch,Query}
darccio Jan 2, 2024
dc47607
all: shift all usages of ddtrace.Span to *tracer.Span (#2408)
knusbaum Jan 2, 2024
9766e12
tools/v2check: basic implementation (#2471)
darccio Jan 3, 2024
0ceee5a
contrib: set span.kind and component in httptrace.TraceAndServe (#2474)
ahmed-mez Jan 3, 2024
7936067
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 4, 2024
9888023
ddtrace/tracer: unexport span fields (#2473)
knusbaum Jan 4, 2024
b2c7ecc
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 8, 2024
9145891
ddtrace/tracer: add missing merged changes
darccio Jan 8, 2024
f773e62
ddtracer/tracer: remove internal prefix to GetGlobalTracer call
darccio Jan 8, 2024
7a56cd1
.github/workflows: move back to Dario's branch (#2488)
knusbaum Jan 9, 2024
a925cf9
ddtracer/tracer: add nolint tags for revive
darccio Jan 9, 2024
b3c324a
ddtracer/tracer: add body to waster blocks
darccio Jan 9, 2024
4cea60a
ddtrace/mocktracer: reset mock tracer on stop & don't add finished sp…
darccio Jan 9, 2024
b755518
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 9, 2024
8910183
ddtracer/tracer: update TestStartupLog/errors & TestLogSamplingRules …
darccio Jan 9, 2024
d03b755
ddtrace/tracer: refactor SpanContext to be a struct. (#2476)
knusbaum Jan 10, 2024
43f3d5e
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 10, 2024
672e8c6
.github/workflows: switch back to main system-tests v2-dev branch
darccio Jan 10, 2024
0f76e55
Merge branch 'main' into v2-dev
darccio Jan 10, 2024
97674e4
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 10, 2024
5a5e357
ddtrace/tracer: fix sampler_test.go & go.sum
darccio Jan 10, 2024
36b4528
v2/contrib: go mod tidy
darccio Jan 11, 2024
e694cbd
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 11, 2024
c7497ac
v2/contrib: go mod tidy
darccio Jan 11, 2024
b19658f
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 11, 2024
e3db04b
internal/appsec: set v2 import URLs for telemetry
darccio Jan 11, 2024
57f6f98
ddtrace/tracer: enable nil-object pattern for spans (#2498)
darccio Jan 11, 2024
e6f1b79
Merge branch 'main' into v2-dev
darccio Jan 12, 2024
bb4e4ce
ddtrace/tracer: remove comment and TODO for nil spans
darccio Jan 15, 2024
b17c920
ddtrace: pass log level in Logger interface (#2480)
ahmed-mez Jan 16, 2024
9039e16
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 16, 2024
5c42d12
ddtrace/tracer: add SpanContext.TraceIDLower function
darccio Jan 17, 2024
efab8c4
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 18, 2024
4c57801
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 19, 2024
b9bd457
go.mod: revert to 1.19
darccio Jan 19, 2024
c5c82eb
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 24, 2024
e62631d
internal: revert accidental go mod tidy
darccio Jan 24, 2024
e720f57
ddtrace: add TraceIDLower to ddtrace.SpanContext
darccio Jan 25, 2024
e2083f5
go.mod: mod tidy
darccio Jan 25, 2024
dccb0ed
general: use root go.work instead of replace directives in nested mod…
darccio Jan 25, 2024
2ed35bc
ddtrace/mocktracer: fix mock spanContext
darccio Jan 25, 2024
007518d
ddtrace/opentelemetry: fix otelCtxToDDCtx
darccio Jan 25, 2024
ec2e8e2
go.mod: keep dd-trace-go contribs up to date
darccio Jan 25, 2024
68de6a7
go.mod: revert 1.21 toolchain (again)
darccio Jan 25, 2024
7db38ab
go.mod: all contribs updated
darccio Jan 25, 2024
8ef67f7
go.mod: revert toolchain
darccio Jan 25, 2024
5c47d03
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Jan 26, 2024
9d87297
go.work: add missing go.work.sum
darccio Jan 26, 2024
fa51344
ddtrace/tracer: fix call to GetGlobalTracer
darccio Jan 26, 2024
b5f607d
v2/contrib/confluentinc/confluent-kafka-go/kafka.v2: pin spf13/viper …
darccio Jan 26, 2024
88d1ffb
go.mod: mod tidy
darccio Jan 26, 2024
953581a
ddtrace/mocktracer: add missing UnwrapSlice
darccio Jan 26, 2024
fc1516f
ddtrace/mocktracer: add missing mocktracer.FinishSpan
darccio Jan 26, 2024
64098b5
go.work.sum: mod tidy
darccio Jan 26, 2024
3753906
ddtrace/tracer: fix Test128/enable_128_bit_trace_ids
darccio Jan 26, 2024
63d1bbc
v2/contrib/database/sql: fix test to handle different version of mysq…
darccio Jan 26, 2024
6de4f6a
ddtrace/tracer: add Span.Tag function (#2523)
darccio Jan 31, 2024
a53f613
ddtracer/tracer: Unify sampling rules options (#2522)
dianashevchenko Jan 31, 2024
64fd9f5
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Feb 1, 2024
2c96377
general: upgrade dd-trace-go/v2 in all nested modules
darccio Feb 1, 2024
efda878
ci: trigger
darccio Feb 1, 2024
106f6bf
v2/contrib/labstack/echo.v4: adapt v1 option to v2
darccio Feb 1, 2024
58323b9
ci: trigger
darccio Feb 1, 2024
c56e9c5
v2/contrib/labstack/echo.v4: fix broken test due to deprecation of v1…
darccio Feb 1, 2024
b8c2740
general: upgrade dd-trace-go/v2 in all nested modules
darccio Feb 1, 2024
73a80d5
ci: trigger
darccio Feb 1, 2024
09f5a14
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Feb 2, 2024
26f6781
ddtrace/tracer: add wrapper functions for newUnstartedTracer
darccio Feb 8, 2024
8879acf
README.md: review and update (#2539)
darccio Feb 12, 2024
ca37919
ddtrace/tracer: add nil guard on propagatorW2c.injectTextMap
darccio Feb 12, 2024
c22ccf4
ddtrace/tracer: add private interface spanContextV1 to access unexpor…
darccio Feb 12, 2024
0e11104
ddtrace/tracer: get back custom samplers
darccio Feb 12, 2024
797daf5
ddtrace/tracer: return *StartSpanConfig from NewStartSpanConfig
darccio Feb 12, 2024
0fe3525
ddtrace/tracer: add nil guard for newConfig's StartOption
darccio Feb 12, 2024
412c28f
ddtrace/tracer: add WithFinishConfig
darccio Feb 12, 2024
6c0828a
ddtrace/tracer: add test option WithTestDefaults
darccio Feb 12, 2024
c57d43e
ddtrace/tracer: allow WithTestDefaults to mock the statsd client
darccio Feb 12, 2024
6389c7b
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Feb 15, 2024
255e6ae
contrib/jackc/pgx.v5: move to v2/contrib
darccio Feb 15, 2024
43acc94
v2/contrib/jackc/pgx.v5: go mod init
darccio Feb 15, 2024
018ee94
ddtrace/tracer: fix remote config test
darccio Feb 15, 2024
b607477
Merge remote-tracking branch 'origin/v2-dev' into v2-vits
darccio Feb 15, 2024
1d21ea7
ddtrace/tracer: support SpanLinks in WithStartSpanConfig
darccio Feb 16, 2024
8364b6b
Merge remote-tracking branch 'origin/v2-dev' into v2-vits
darccio Feb 16, 2024
a633e06
ddtracer/opentelemetry: apply attributes on span start based on key p…
darccio Feb 16, 2024
c464ae9
ddtrace/opentelemetry: handle prioritzation of finish time set with E…
darccio Feb 16, 2024
914f0c3
ddtrace/tracer: fix conditional to set NoDebugStack in WithFinishConfig
darccio Feb 16, 2024
f8d4db3
Merge remote-tracking branch 'origin' into v2-vits
darccio Feb 22, 2024
f576f22
ddtrace/mocktracer: allow to set tags in mock spans
darccio Feb 22, 2024
aff5f3b
ddtrace/mocktracer: allow to finish mock spans
darccio Feb 22, 2024
386ab57
ddtrace/mocktracer: set mock spans' tags into underlying span too
darccio Feb 22, 2024
0206562
ddtrace/tracer: fix metrics tests
darccio Feb 23, 2024
07211ad
v2/contrib: update contrib naming policy (#2536)
darccio Feb 23, 2024
37ac519
ddtrace/mocktracer: fix mockspan.Tags to make sure to include the emb…
darccio Feb 23, 2024
bf09059
go.work.sum: mod tidy
darccio Feb 23, 2024
4f446ac
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Mar 4, 2024
e9992c5
disable DB stats feature until bug is fixed
katiehockman Mar 5, 2024
46baf89
contrib/database/sql: remove WithDBStats in example
darccio Mar 6, 2024
c8aa56d
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Mar 6, 2024
4f374b6
Merge branch 'katie.hockman/disable_dbstats' into v2-dev
darccio Mar 6, 2024
bd5878c
ddtrace/tracer: mark parameter as unused in customSampler.SetRate
darccio Mar 6, 2024
db7669a
ddtrace/tracer: fix testAsyncSpanRace
darccio Mar 6, 2024
ca7dda2
v2/contrib/gofiber/fiber.v2: fix WithIgnoreRequest return type
darccio Mar 6, 2024
f6fa61e
.github/workflows: use v2 appsec-test-contrib-submodules.sh to test a…
darccio Mar 6, 2024
002b1bb
.github/workflows/apps: adapt appsec-test-contrib-submodules to remov…
darccio Mar 6, 2024
4c02f59
.github/workflows/apps: fix debug message to find CI failure
darccio Mar 6, 2024
554a60c
.github/workflows/apps: quote $go_tags
darccio Mar 6, 2024
3a25101
internal/globalconfig: disable TestPushStat
darccio Mar 6, 2024
756319d
.github/workflows/apps: remove duplicated appsec tests
darccio Mar 6, 2024
31e88b4
.github/workflows: use absolute path for running appsec script tests
darccio Mar 6, 2024
96a07d7
.github/workflows: fix absolute path for running appsec script tests
darccio Mar 6, 2024
8b44630
.github/workflows: revert to inline scripting to avoid external script
darccio Mar 6, 2024
a9dd3b3
.github/workflows: fix submodules paths
darccio Mar 6, 2024
767889e
.github/workflows: fix disabled appsec Go tests
darccio Mar 6, 2024
73eb80d
.github/workflows: improve submodules logging
darccio Mar 6, 2024
01a2827
.github/workflows: run *CGO tests using Docker
darccio Mar 6, 2024
6e2084f
.github/workflows: move cd statements into docker argument
darccio Mar 6, 2024
02ec36d
.github/workflows: quote bash command
darccio Mar 6, 2024
7403a88
.github/workflows: double quote bash command
darccio Mar 6, 2024
a9da587
.github/workflows: quote the whole env command including the inlined …
darccio Mar 7, 2024
5290319
.github/workflows: move envs to docker env args
darccio Mar 7, 2024
a329b73
.github/workflows: fix syntax
darccio Mar 7, 2024
98e0a0e
.github/workflows: use bash in all runners
darccio Mar 7, 2024
d584c4d
ci: trigger
darccio Mar 7, 2024
1887b04
testing: add testing/v1adapter to help adapt v1 as frontend of v2 (vi…
darccio Mar 7, 2024
60899f5
v2/contrib: upgrade dd-trace-go/v2
darccio Mar 8, 2024
d2c7ed5
v2/contrib/aws/aws-sdk-go-v2: harmonize aws-sdk-go-v2 version with main
darccio Mar 8, 2024
a67afb2
v2/contrib/aws/aws-sdk-go-v2: harmonize smithy-go version with main
darccio Mar 8, 2024
92758f5
v2/contrib/database/sql: harmonize SQL drivers versions with main
darccio Mar 8, 2024
4a1b536
v2/contrib/dimfeld/httptreemux.v5: upgrade dd-trace-go/v2/contrib/net…
darccio Mar 8, 2024
3df8062
v2/contrib/elastic/go-elasticsearch.v6: harmonize SQL drivers version…
darccio Mar 8, 2024
d4d2757
v2/contrib/hashicorp/vault: upgrade dd-trace-go/v2/contrib/net/http
darccio Mar 8, 2024
8775bf8
v2/contrib/jackc/pgx.v5: harmonize versions with main
darccio Mar 8, 2024
0f69c12
v2/contrib/jmoiron/sqlx: harmonize SQL drivers versions with main
darccio Mar 8, 2024
4634440
v2/contrib/labstack/echo.v4: upgrade dd-trace-go/v2/contrib/net/http
darccio Mar 8, 2024
198d2b9
v2/contrib/julienschmidt/httprouter: upgrade dd-trace-go/v2/contrib/n…
darccio Mar 8, 2024
6c3cd02
v2/contrib/gorm.io/gorm.v1: harmonize dependency versions with main
darccio Mar 8, 2024
317dae4
v2/contrib/miekg/dns: harmonize dependency versions with main
darccio Mar 8, 2024
2a9ed66
v2/contrib/valyala/fasthttp: harmonize dependency versions with main
darccio Mar 8, 2024
80f100d
v2/contrib/google.golang.org/api: harmonize dependency versions with …
darccio Mar 8, 2024
b239489
v2/contrib/k8s.io/client-go: harmonize dependency versions with main
darccio Mar 8, 2024
cc13161
v2/contrib/hashicorp/vault: go mod tidy
darccio Mar 8, 2024
d07a4c5
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Mar 11, 2024
b16ce3c
v1internal: refactor namingschematest & globalconfig
darccio Mar 11, 2024
d7921f3
v1internal/namingschema: refactor for v1
darccio Mar 11, 2024
178d5d1
go.work.sum: go mod tidy
darccio Mar 11, 2024
95b28ce
ddtrace/tracer: WithStartSpanConfig must override existing tags if ex…
darccio Mar 11, 2024
37d042c
ddtrace/tracer: WithFinishConfig must override FinishConfig.Error
darccio Mar 11, 2024
7c654a6
ddtrace/mocktracer: get tags from underlying span first
darccio Mar 11, 2024
986c365
ddtrace/mocktracer: ensure that underlying span's tags are treated as…
darccio Mar 11, 2024
f10e297
v1internal/namingschema: add more exported functions & fix tests
darccio Mar 11, 2024
b3f62a0
v1internal/namingschema: export IntegrationType & add go docs to all …
darccio Mar 11, 2024
fdb8ac2
v1internal: rename root package file
darccio Mar 11, 2024
e22f199
v1internal/telemetry: add minimal interface
darccio Mar 11, 2024
c29e4b7
v1internal/telemetry: enhance API
darccio Mar 11, 2024
cf3d523
v1internal/telemetry: add telemetry.Count
darccio Mar 11, 2024
e86899c
v1internal/normalizer: expose normalizer
darccio Mar 11, 2024
d54c964
v2/contrib/hashicorp/vault: update tests
darccio Mar 11, 2024
3046444
v2/contrib/gin-gonic/gin: fix test
darccio Mar 11, 2024
fee9c7c
v2/contrib: fix Tag(ext.Error) related tests
darccio Mar 11, 2024
b5be8a2
contrib/google.golang.org/grpc.v12: remove deprecated contrib
darccio Mar 11, 2024
7691fda
v2/contrib: fix Tag(ext.Error) related tests
darccio Mar 11, 2024
0dad099
v2/contrib/99design/gqlgen: fix Tag(ext.Error) related tests
darccio Mar 11, 2024
b22a5d7
v2/contrib/graph-gophers/graphql-go: fix Tag(ext.Error) related tests
darccio Mar 11, 2024
af0eaa8
ddtrace/tracer: update TestWithStartSpanConfigNonEmptyTags to new Wit…
darccio Mar 11, 2024
dfe9bd9
v2/contrib: fix Tag(ext.Error) related tests
darccio Mar 11, 2024
afa28a0
v2/contrib/aws/aws-sdk-go-v2: pin aws-sdk-go-v2/config to v1.18.21
darccio Mar 11, 2024
3af1c41
v1internal: allow ddtracer/tracer/textmap.go#setPropagatingTag to be …
darccio Mar 11, 2024
e3cfc0f
v1internal/namingschema: add more namingschema API functions
darccio Mar 11, 2024
0209b53
v2/contrib/aws/aws-sdk-go-v2: adjust aws-sdk-go-v2 dependencies
darccio Mar 11, 2024
883dad1
v2/contrib/net/http: go mod tidy
darccio Mar 12, 2024
68327c9
v2/contrib/net/http: go mod tidy (again)
darccio Mar 12, 2024
894b1b1
go.mod: pin google.golang.org/* dependencies
darccio Mar 12, 2024
3b155da
v2/contrib/google.golang.org/api: work on stabilizing dependencies
darccio Mar 12, 2024
54a5c5c
v2/contrib/net/http: go mod tidy
darccio Mar 12, 2024
8c9ac05
v2/contrib/google.golang.org/api: stable dependencies
darccio Mar 12, 2024
cbdabd0
v2/contrib/google.golang.org/api: revert google.golang.org/api back t…
darccio Mar 12, 2024
5ff3b32
v2/contrib/net/http: avoid mocktracer in BenchmarkHttpServeTrace
darccio Mar 12, 2024
fc1f329
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Mar 13, 2024
62e6edb
go.mod: go mod tidy
darccio Mar 13, 2024
39d29bd
v2/contrib/99designs/gqlgen: fix contrib
darccio Mar 13, 2024
0730ca1
FAQ.md: replace WithServiceName by WithService
darccio Mar 13, 2024
163dd88
internal/contrib/options: add Expand function to handle reduced alloc…
darccio Mar 15, 2024
301b62d
v2/contrib: upgrade dd-trace-go/v2 & contribs
darccio Mar 15, 2024
68e1ad2
ci: trigger
darccio Mar 19, 2024
a81194e
ddtrace/tracer: use options.Expand in StartSpanFromContext
darccio Mar 20, 2024
1559d0b
internal/contrib/httptrace: improve memory management in StartRequest…
darccio Mar 20, 2024
7ebff8f
v2/contrib/confluentinc/confluent-kafka-go/kafka*: skip nil options
darccio Mar 20, 2024
224a0bc
chore(otel): adds an API for generating span links (#2614)
mabdinur Mar 21, 2024
918fafc
.github/workflows: fix v2-dev nightly tests
darccio Mar 22, 2024
3ad51a7
internal/contrib/options: fix import cycle
darccio Mar 22, 2024
5b596d3
Merge remote-tracking branch 'origin' into v2-dev
darccio Mar 22, 2024
1694bdb
ddtrace/tracer: fix tests
darccio Mar 25, 2024
c4cfc74
v2/contrib/google.golang.org/grpc: fix tests
darccio Mar 25, 2024
29a213f
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Mar 25, 2024
7fc215e
ddtrace/tracer: create JSON rule in {Span,Trace}SamplingRules
darccio Mar 25, 2024
55cf688
.github/workflows: don't exit on test failure
darccio Mar 25, 2024
09c1b4f
.github/workflows: don't pass a value to run smoke tests in v2
darccio Mar 25, 2024
8af9f77
internal/apps/setup-smoke-test: use go work vendor instead of go mod …
darccio Mar 25, 2024
9562112
internal/apps/setup-smoke-test: revert using go work vendor instead o…
darccio Mar 25, 2024
e062db3
internal/apps/setup-smoke-test: use go work vendor ONLY IN 1.22 inste…
darccio Mar 25, 2024
6f9f98f
internal/apps/setup-smoke-test: add $go argument in corresponding bui…
darccio Mar 25, 2024
42807ee
.github/workflows: disable reviewdog
darccio Mar 25, 2024
a36ab4e
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Mar 27, 2024
21c31dc
v2/contrib/database/sql: set WithDBStats to return OptionFn
darccio Mar 27, 2024
efa4ba6
v1internal: remove statsd carrier stuff
darccio Mar 27, 2024
be6407b
ddtrace/tracer: use localhost instead of my-host in TestTracerOptions…
darccio Mar 27, 2024
8d1ea11
Merge remote-tracking branch 'origin/main' into v2-dev
darccio Apr 8, 2024
c8ff8d7
ddtrace/tracer: remove Span.Tag function (reverts #2523)
darccio Apr 8, 2024
75c8781
v2/contrib/segmentio/kafka-go: fix WithDataStreams option signature
darccio Apr 8, 2024
f0eee6a
[v2] ddtrace/tracer: tidy up Tracer interface (#2633)
darccio May 8, 2024
1422d9c
tools/v2check: implement migration tool with all the required changes…
darccio May 16, 2024
ddac629
Merge branch main into v2-dev
darccio May 16, 2024
8d6fa2b
Merge remote-tracking branch 'origin' into v2-dev
darccio May 16, 2024
1bc2693
go.mod: upgrade to Go 1.20 & latest dd-trace-go/v2*
darccio May 17, 2024
532a55a
go.mod: add missing dependency to github.com/DataDog/dd-trace-go/v2/c…
darccio May 17, 2024
13caae9
chore: preparing for releasing submodules as v2
darccio May 21, 2024
5c87628
v2/contrib: remove v2 directory, move contrib to root
darccio May 21, 2024
13d2706
internal/appsec: remove contrib/net/http dependency
darccio May 21, 2024
32c9fe4
chore: fix contribs go.mod
darccio May 21, 2024
0d5f5a7
go.mod: remove google.golang.org/grpc
darccio May 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 12 additions & 6 deletions .github/workflows/apps/appsec-test-contrib-submodules.sh
Expand Up @@ -22,7 +22,15 @@ function gotestsum_runner() {
function docker_runner() {
# ignore the first argument, which is the JUnit report
shift
docker run --platform=$PLATFORM -v $PWD:$PWD -w $PWD -eCGO_ENABLED=$CGO_ENABLED -eDD_APPSEC_ENABLED=$DD_APPSEC_ENABLED -eDD_APPSEC_WAF_TIMEOUT=$DD_APPSEC_WAF_TIMEOUT golang go test -v "$@"
# capture the working directory for the test run
WD=$(realpath "$1"); shift
docker run \
--platform="$PLATFORM" \
-v "$PWD":"$PWD" -w "$WD" \
-eCGO_ENABLED="$CGO_ENABLED" \
-eDD_APPSEC_ENABLED="$DD_APPSEC_ENABLED" \
-eDD_APPSEC_WAF_TIMEOUT="$DD_APPSEC_WAF_TIMEOUT" \
golang go test -v "$@"
}

runner="gotestsum_runner"
Expand All @@ -32,16 +40,14 @@ if [[ "$1" == "docker" ]]; then
[[ -z "$PLATFORM" ]] && PLATFORM="linux/arm64"
fi

$runner "$JUNIT_REPORT.xml" ./appsec/... ./internal/appsec/...
$runner "$JUNIT_REPORT.xml" "." ./appsec/... ./internal/appsec/...

SCOPES=("gin-gonic/gin" "google.golang.org/grpc" "net/http" "gorilla/mux" "go-chi/chi" "go-chi/chi.v5" "labstack/echo.v4")
for SCOPE in "${SCOPES[@]}"; do
contrib=$(basename "$SCOPE")
if [[ "$V2_BRANCH" == "true" ]]; then
cd "./v2/contrib/$SCOPE"
$runner "$JUNIT_REPORT.$contrib.xml" .
cd -
$runner "$JUNIT_REPORT.$contrib.xml" "./v2/contrib/$SCOPE" "."
else
$runner "$JUNIT_REPORT.$contrib.xml" "./contrib/$SCOPE/..."
$runner "$JUNIT_REPORT.$contrib.xml" "." "./contrib/$SCOPE/..."
fi
done
2 changes: 1 addition & 1 deletion .github/workflows/apps/parse/parse_version.go
Expand Up @@ -8,7 +8,7 @@ package main
import (
"fmt"

"gopkg.in/DataDog/dd-trace-go.v1/internal/version"
"github.com/DataDog/dd-trace-go/v2/internal/version"
)

func ghOutput(varName, v string) string {
Expand Down
83 changes: 70 additions & 13 deletions .github/workflows/appsec.yml
Expand Up @@ -26,7 +26,8 @@ on:
env:
DD_APPSEC_WAF_TIMEOUT: 5s
JUNIT_REPORT: /tmp/gotestsum-report
V2_BRANCH: false
TO_TEST: ./appsec/... ./internal/appsec/...
V2_BRANCH: true
jobs:
native:
strategy:
Expand Down Expand Up @@ -66,7 +67,28 @@ jobs:
run: |
go install gotest.tools/gotestsum@latest
# Run the tests with gotestsum
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} ./.github/workflows/apps/appsec-test-contrib-submodules.sh
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.xml -- -v $TO_TEST
cd ./v2/contrib/gin-gonic/gin
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.gin.xml -- -v .
cd -
cd ./v2/contrib/google.golang.org/grpc
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.grpc.xml -- -v .
cd -
cd ./v2/contrib/net/http
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.http.xml -- -v .
cd -
cd ./v2/contrib/gorilla/mux
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.gorilla.xml -- -v .
cd -
cd ./v2/contrib/go-chi/chi
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.chi.xml -- -v .
cd -
cd ./v2/contrib/go-chi/chi.v5
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.chi.xml -- -v .
cd -
cd ./v2/contrib/labstack/echo.v4
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.echo.xml -- -v .
cd -

- name: Upload the results to Datadog CI App
uses: ./.github/actions/dd-ci-upload
Expand Down Expand Up @@ -107,7 +129,28 @@ jobs:
run: |
go install gotest.tools/gotestsum@latest
# Run the tests with gotestsum
env ${{ matrix.appsec_enabled }} ./.github/workflows/apps/appsec-test-contrib-submodules.sh
env ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.xml -- -v $TO_TEST
cd ./v2/contrib/gin-gonic/gin
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.gin.xml -- -v .
cd -
cd ./v2/contrib/google.golang.org/grpc
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.grpc.xml -- -v .
cd -
cd ./v2/contrib/net/http
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.http.xml -- -v .
cd -
cd ./v2/contrib/gorilla/mux
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.gorilla.xml -- -v .
cd -
cd ./v2/contrib/go-chi/chi
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.chi.xml -- -v .
cd -
cd ./v2/contrib/go-chi/chi.v5
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.chi.xml -- -v .
cd -
cd ./v2/contrib/labstack/echo.v4
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.echo.xml -- -v .
cd -

- name: Upload the results to Datadog CI App
uses: ./.github/actions/dd-ci-upload
Expand Down Expand Up @@ -158,7 +201,28 @@ jobs:
# Install gotestsum to get the results in a junit file
go install gotest.tools/gotestsum@latest
# Run the tests with gotestsum
env CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} /bin/bash ./.github/workflows/apps/appsec-test-contrib-submodules.sh
env CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.xml -- -v $TO_TEST
cd ./v2/contrib/gin-gonic/gin
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.gin.xml -- -v .
cd -
cd ./v2/contrib/google.golang.org/grpc
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.grpc.xml -- -v .
cd -
cd ./v2/contrib/net/http
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.http.xml -- -v .
cd -
cd ./v2/contrib/gorilla/mux
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.gorilla.xml -- -v .
cd -
cd ./v2/contrib/go-chi/chi
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.chi.xml -- -v .
cd -
cd ./v2/contrib/go-chi/chi.v5
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.chi.xml -- -v .
cd -
cd ./v2/contrib/labstack/echo.v4
env ${{ matrix.cgocheck }} CGO_ENABLED=${{ matrix.cgo_enabled }} ${{ matrix.appsec_enabled }} gotestsum --junitfile $JUNIT_REPORT.echo.xml -- -v .
cd -

- name: Upload the results to Datadog CI App
if: matrix.distribution != 'alpine' # datadog-ci CLI doesn't work on alpine
Expand Down Expand Up @@ -194,17 +258,10 @@ jobs:
with:
platforms: arm64
- run: |
env CGO_ENABLED=${{ matrix.cgo_enabled }} DD_APPSEC_ENABLED=${{ matrix.appsec_enabled }} DD_APPSEC_WAF_TIMEOUT=$DD_APPSEC_WAF_TIMEOUT ./.github/workflows/apps/appsec-test-contrib-submodules.sh docker linux/arm64
env V2_BRANCH=$V2_BRANCH CGO_ENABLED=${{ matrix.cgo_enabled }} DD_APPSEC_ENABLED=${{ matrix.appsec_enabled }} DD_APPSEC_WAF_TIMEOUT=$DD_APPSEC_WAF_TIMEOUT ./.github/workflows/apps/appsec-test-contrib-submodules.sh docker linux/arm64

# TODO(darccio): revert to use main on merge into main
smoke-tests:
uses: DataDog/appsec-go-test-app/.github/workflows/smoke-tests.yml@main
if: inputs.ref != 'refs/heads/v2-dev'
with:
dd-trace-go-version: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }}

smoke-tests-v2:
# TODO(darccio): change to main branch on v2 release
uses: DataDog/appsec-go-test-app/.github/workflows/smoke-tests.yml@dario.castane/AIT-3705/dd-trace-go.v2
if: inputs.ref == 'refs/heads/v2-dev'
with:
dd-trace-go-version: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }}
5 changes: 2 additions & 3 deletions .github/workflows/govulncheck.yml
Expand Up @@ -15,7 +15,7 @@ on:
workflow_dispatch:

env:
V2_BRANCH: false
V2_BRANCH: true

jobs:
govulncheck-tests:
Expand All @@ -36,8 +36,7 @@ jobs:
- name: Run govulncheck-contribs
if: ${{ env.V2_BRANCH != 'true' }}
run: |
# Excluding legacy contrib grpc.v12
go list -f '{{.Dir}}' ./contrib/... | grep -v -e grpc.v12 | while read dir ; do
go list -f '{{.Dir}}' ./contrib/... | while read dir ; do
govulncheck -C $dir .
done
- name: Run govulncheck-contribs (v2)
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/multios-unit-tests.yml
Expand Up @@ -27,7 +27,7 @@ on:
type: string

env:
V2_BRANCH: false
V2_BRANCH: true

jobs:
test-multi-os:
Expand All @@ -53,7 +53,7 @@ jobs:
if: ${{ env.V2_BRANCH != 'true' }}
shell: bash
run: |
go list ./... | grep -v -e grpc.v12 -e google.golang.org/api -e sarama -e confluent-kafka-go -e cmemprof | sort >packages.txt
go list ./... | grep -v -e google.golang.org/api -e sarama -e confluent-kafka-go -e cmemprof | sort >packages.txt
gotestsum --junitfile ${REPORT} -- $(cat packages.txt) -v -coverprofile=coverage.txt -covermode=atomic -timeout 15m
- name: "Runner ${{ matrix.runner-index }}: Test Core and Contrib (No Integration Tests) v2"
if: ${{ env.V2_BRANCH == 'true' }}
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/parametric-tests.yml
Expand Up @@ -28,12 +28,13 @@ jobs:
group: "APM Larger Runners"
env:
TEST_LIBRARY: golang
V2_BRANCH: false
V2_BRANCH: true
steps:
- name: Checkout system tests
uses: actions/checkout@v3
with:
repository: 'DataDog/system-tests'
ref: refs/heads/dario.castane/AIT-3705/dd-trace-go.v2

- name: Checkout dd-trace-go
uses: actions/checkout@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/system-tests.yml
Expand Up @@ -94,7 +94,7 @@ jobs:
DD_API_KEY: ${{ secrets.DD_API_KEY }}
SYSTEM_TESTS_E2E_DD_API_KEY: ${{ secrets.SYSTEM_TESTS_E2E_DD_API_KEY }}
SYSTEM_TESTS_E2E_DD_APP_KEY: ${{ secrets.SYSTEM_TESTS_E2E_DD_APP_KEY }}
V2_BRANCH: false
V2_BRANCH: true
name: Test (${{ matrix.weblog-variant }}, ${{ matrix.scenario }})
steps:
- name: Checkout system tests
Expand Down
28 changes: 5 additions & 23 deletions .github/workflows/unit-integration-tests.yml
Expand Up @@ -51,7 +51,7 @@ jobs:
env:
TEST_RESULTS: /tmp/test-results # path to where test results will be saved
INTEGRATION: true
V2_BRANCH: false
V2_BRANCH: true
services:
datadog-agent:
image: datadog/agent:latest
Expand Down Expand Up @@ -199,8 +199,8 @@ jobs:
PACKAGE_NAMES=$(go list ./contrib/... | grep -v -e grpc.v12 -e google.golang.org/api)
gotestsum --junitfile ${TEST_RESULTS}/gotestsum-report.xml -- $PACKAGE_NAMES -v -race -coverprofile=coverage.txt -covermode=atomic

- name: Test Contrib Submodules
if: always()
- name: Test Contrib Submodules (v2)
if: ${{ env.V2_BRANCH == 'true' }} && always()
run: ./.github/workflows/apps/test-contrib-submodules.sh

- name: Upload the results to Datadog CI App
Expand Down Expand Up @@ -248,28 +248,10 @@ jobs:

- name: Testing outlier google.golang.org/api
run: |
cd ./v2/contrib/google.golang.org/api
go get google.golang.org/api@v0.121.0 # version used to generate code
go mod tidy # Go1.16 doesn't update the sum file correctly after the go get, this tidy fixes it
go test -v ./contrib/google.golang.org/api/...

- name: Testing outlier gRPC v1.2
if: ${{ env.V2_BRANCH != 'true' }}
run: |
# This hacky approach is necessary because running the tests regularly
# do not allow using grpc-go@v1.2.0 alongside sketches-go@v1.0.0
go mod vendor

# Checkout grpc-go@v1.2.0
cd vendor/google.golang.org && rm -rf grpc
git clone https://github.com/grpc/grpc-go grpc && cd grpc
git fetch origin && git checkout v1.2.0 && cd ../..

# Checkout sketches-go@v1.0.0
cd vendor/github.com/DataDog && rm -rf sketches-go
git clone https://github.com/DataDog/sketches-go && cd sketches-go
git fetch origin && git checkout v1.0.0 && cd ../..

go test -mod=vendor -v ./contrib/google.golang.org/grpc.v12/...
go test -v ./...

test-core:
runs-on:
Expand Down
6 changes: 3 additions & 3 deletions .gitignore
Expand Up @@ -15,7 +15,7 @@ go.work*
dd-trace-go.iml
vendor

/contrib/google.golang.org/grpc.v12/vendor/
/contrib_coverage.txt
contrib_coverage*.txt
/core_coverage.txt
/gotestsum-report.xml
gotestsum-report*.xml
/internal/apps/unit-of-work/unit-of-work
2 changes: 1 addition & 1 deletion .gitlab-ci.yml
Expand Up @@ -9,7 +9,7 @@ variables:
INDEX_FILE: index.txt
KUBERNETES_SERVICE_ACCOUNT_OVERWRITE: dd-trace-go
FF_USE_LEGACY_KUBERNETES_EXECUTION_STRATEGY: "true"
BENCHMARK_TARGETS: "BenchmarkStartRequestSpan|BenchmarkHttpServeTrace|BenchmarkTracerAddSpans|BenchmarkStartSpan|BenchmarkSingleSpanRetention|BenchmarkOTelApiWithCustomTags|BenchmarkInjectW3C|BenchmarkExtractW3C|BenchmarkPartialFlushing"
BENCHMARK_TARGETS: "BenchmarkStartRequestSpan|BenchmarkHttpServeTrace|BenchmarkTracerAddSpans|BenchmarkStartSpan|BenchmarkSingleSpanRetention|BenchmarkOTelApiWithCustomTags|BenchmarkInjectW3C|BenchmarkExtractW3C|BenchmarkPartialFlushing|BenchmarkConfig|BenchmarkStartSpanConfig"

include:
- ".gitlab/benchmarks.yml"
Expand Down
3 changes: 0 additions & 3 deletions .golangci.yml
@@ -1,8 +1,5 @@
run:
deadline: 10m
skip-dirs:
# This package is an exception and has its own test job (Testing outlier gRPC v1.2).
- contrib/google.golang.org/grpc.v12
linters:
disable-all: true
enable:
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Expand Up @@ -49,7 +49,7 @@ docker run --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.52.2 golangci-l

### Integrations

Please view our contrib [README.md](contrib/README.md) for information on new integrations. If you need support for a new integration, please file an issue to discuss before opening a PR.
Please view our contrib [README.md](v2/contrib/README.md) for information on new integrations. If you need support for a new integration, please file an issue to discuss before opening a PR.

### Go Modules

Expand Down