Compare commits
106 Commits
pdata/xpda
...
main
Author | SHA1 | Date |
---|---|---|
|
ae6050450e | |
|
8f5b642676 | |
|
0b63adbfef | |
|
85b47ce850 | |
|
8b73477b98 | |
|
0f337b4fd5 | |
|
dd47e6b52c | |
|
f17e470e32 | |
|
ae29ab583a | |
|
bc0e7192c8 | |
|
59a00f4e07 | |
|
3711ca93da | |
|
6ba455438d | |
|
cdc6dff545 | |
|
fea16eb4c6 | |
|
bf4324d1fa | |
|
65c94c6e50 | |
|
7e45e34f41 | |
|
c684ed4919 | |
|
fdf5cf0bf6 | |
|
9b8207fb4d | |
|
79e6823db2 | |
|
2655e760c2 | |
|
c1c9314c6d | |
|
d25dc896cd | |
|
b63f70d5ea | |
|
8797b3ea0f | |
|
210e2918f6 | |
|
267df7e843 | |
|
48e4f356c2 | |
|
ad7e42d17d | |
|
96f9a354d2 | |
|
3c0fd3946f | |
|
d4539dd6b4 | |
|
352970729c | |
|
cd7fbdbabb | |
|
128b3d01dc | |
|
421f65cccf | |
|
9db582704b | |
|
1666e4b6ac | |
|
11dffd6891 | |
|
95e5ac6476 | |
|
b5f3b1dea2 | |
|
27018597f7 | |
|
bfac96cd66 | |
|
7be639ff94 | |
|
424a12102d | |
|
1b0fd82c80 | |
|
545866fcf8 | |
|
e83049846d | |
|
cd5ca205f8 | |
|
f78c1b17d1 | |
|
2d85a66196 | |
|
467db83ad3 | |
|
811b19c99b | |
|
51bff5f40f | |
|
84e29958f1 | |
|
43de63c1e2 | |
|
043099e942 | |
|
d1830eed9a | |
|
d3c5766b79 | |
|
59b5328782 | |
|
f68d71016b | |
|
24d9ba8aa3 | |
|
68135b4254 | |
|
8c6b4d3d14 | |
|
41b544ecf2 | |
|
ba583e0ae5 | |
|
872a25e9f8 | |
|
bd2cd2941a | |
|
1ef07837a5 | |
|
d94f17031b | |
|
77a6637368 | |
|
edf0f1d552 | |
|
1dcce58468 | |
|
352f70f7ce | |
|
745f40a6c7 | |
|
f87c5ba59c | |
|
27e88dc70e | |
|
be09659515 | |
|
6f49591252 | |
|
cb83ce89db | |
|
8acfa141bb | |
|
d435dbe8ba | |
|
5b18870ccc | |
|
2b2f6f0bbd | |
|
9ad182f69f | |
|
6334c5b5ac | |
|
06ed9a2553 | |
|
dba8fe458c | |
|
8d23ebe1d6 | |
|
b4f9050739 | |
|
40a308427f | |
|
8183eb10d1 | |
|
13613a9807 | |
|
632a66e9ba | |
|
6fe70f54e1 | |
|
0a7598ec1e | |
|
9b036ad72f | |
|
2a3e63ff33 | |
|
888e9b6459 | |
|
2a81bd0954 | |
|
95513709ce | |
|
e7e589e123 | |
|
a6bffc3ad6 | |
|
f70bc350fd |
|
@ -0,0 +1,25 @@
|
|||
# Use this changelog template to create an entry for release notes.
|
||||
|
||||
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
|
||||
change_type: bug_fix
|
||||
|
||||
# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
|
||||
component: pdata
|
||||
|
||||
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
|
||||
note: Fix null pointer access when copying into a slice with larger cap but smaller len.
|
||||
|
||||
# One or more tracking issues or pull requests related to the change
|
||||
issues: [13523]
|
||||
|
||||
# (Optional) One or more lines of additional information to render under the primary note.
|
||||
# These lines will be padded with 2 spaces and then inserted directly into the document.
|
||||
# Use pipe (|) for multiline entries.
|
||||
subtext:
|
||||
|
||||
# Optional: The change log or logs in which this entry should be included.
|
||||
# e.g. '[user]' or '[user, api]'
|
||||
# Include 'user' if the change is relevant to end users.
|
||||
# Include 'api' if there is a change to a library API.
|
||||
# Default: '[user]'
|
||||
change_logs: [user]
|
|
@ -0,0 +1,4 @@
|
|||
change_type: bug_fix
|
||||
component: confighttp
|
||||
note: Fix middleware configuration field name from "middleware" to "middlewares" for consistency with configgrpc
|
||||
issues: [13444]
|
|
@ -0,0 +1,25 @@
|
|||
# Use this changelog template to create an entry for release notes.
|
||||
|
||||
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
|
||||
change_type: enhancement
|
||||
|
||||
# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
|
||||
component: confighttp
|
||||
|
||||
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
|
||||
note: Add option to configure ForceAttemptHTTP2 to support HTTP/1 specific transport settings.
|
||||
|
||||
# One or more tracking issues or pull requests related to the change
|
||||
issues: [13426]
|
||||
|
||||
# (Optional) One or more lines of additional information to render under the primary note.
|
||||
# These lines will be padded with 2 spaces and then inserted directly into the document.
|
||||
# Use pipe (|) for multiline entries.
|
||||
subtext:
|
||||
|
||||
# Optional: The change log or logs in which this entry should be included.
|
||||
# e.g. '[user]' or '[user, api]'
|
||||
# Include 'user' if the change is relevant to end users.
|
||||
# Include 'api' if there is a change to a library API.
|
||||
# Default: '[user]'
|
||||
change_logs: []
|
|
@ -0,0 +1,32 @@
|
|||
# Use this changelog template to create an entry for release notes.
|
||||
|
||||
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
|
||||
change_type: deprecation
|
||||
|
||||
# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
|
||||
component: service
|
||||
|
||||
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
|
||||
note: move service.noopTraceProvider feature gate to deprecated stage
|
||||
|
||||
# One or more tracking issues or pull requests related to the change
|
||||
issues: [13492]
|
||||
|
||||
# (Optional) One or more lines of additional information to render under the primary note.
|
||||
# These lines will be padded with 2 spaces and then inserted directly into the document.
|
||||
# Use pipe (|) for multiline entries.
|
||||
subtext: |
|
||||
The functionality of the feature gate is available via configuration with the following telemetry settings:
|
||||
```
|
||||
service:
|
||||
telemetry:
|
||||
traces:
|
||||
level: none
|
||||
```
|
||||
|
||||
# Optional: The change log or logs in which this entry should be included.
|
||||
# e.g. '[user]' or '[user, api]'
|
||||
# Include 'user' if the change is relevant to end users.
|
||||
# Include 'api' if there is a change to a library API.
|
||||
# Default: '[user]'
|
||||
change_logs: []
|
|
@ -0,0 +1,25 @@
|
|||
# Use this changelog template to create an entry for release notes.
|
||||
|
||||
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
|
||||
change_type: enhancement
|
||||
|
||||
# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
|
||||
component: pdata
|
||||
|
||||
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
|
||||
note: Improve RemoveIf for slices to not reference anymore the removed memory
|
||||
|
||||
# One or more tracking issues or pull requests related to the change
|
||||
issues: [13522]
|
||||
|
||||
# (Optional) One or more lines of additional information to render under the primary note.
|
||||
# These lines will be padded with 2 spaces and then inserted directly into the document.
|
||||
# Use pipe (|) for multiline entries.
|
||||
subtext:
|
||||
|
||||
# Optional: The change log or logs in which this entry should be included.
|
||||
# e.g. '[user]' or '[user, api]'
|
||||
# Include 'user' if the change is relevant to end users.
|
||||
# Include 'api' if there is a change to a library API.
|
||||
# Default: '[user]'
|
||||
change_logs: [user]
|
|
@ -0,0 +1,25 @@
|
|||
# Use this changelog template to create an entry for release notes.
|
||||
|
||||
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
|
||||
change_type: bug_fix
|
||||
|
||||
# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
|
||||
component: confighttp
|
||||
|
||||
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
|
||||
note: Reuse zstd Reader objects
|
||||
|
||||
# One or more tracking issues or pull requests related to the change
|
||||
issues: [11824]
|
||||
|
||||
# (Optional) One or more lines of additional information to render under the primary note.
|
||||
# These lines will be padded with 2 spaces and then inserted directly into the document.
|
||||
# Use pipe (|) for multiline entries.
|
||||
subtext:
|
||||
|
||||
# Optional: The change log or logs in which this entry should be included.
|
||||
# e.g. '[user]' or '[user, api]'
|
||||
# Include 'user' if the change is relevant to end users.
|
||||
# Include 'api' if there is a change to a library API.
|
||||
# Default: '[user]'
|
||||
change_logs: [user]
|
|
@ -4,6 +4,7 @@ on:
|
|||
types:
|
||||
- opened
|
||||
- synchronize
|
||||
- ready_for_review
|
||||
|
||||
permissions: read-all
|
||||
|
||||
|
@ -12,7 +13,7 @@ jobs:
|
|||
permissions:
|
||||
pull-requests: write
|
||||
runs-on: ubuntu-24.04
|
||||
if: ${{ github.actor != 'dependabot[bot]' && github.actor != 'renovate[bot]' && github.repository_owner == 'open-telemetry' }}
|
||||
if: ${{ github.actor != 'dependabot[bot]' && github.actor != 'renovate[bot]' && github.repository_owner == 'open-telemetry' && github.event.pull_request.draft == false }}
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
|
||||
# Generate apidiff states of Main
|
||||
- name: Generate-States
|
||||
|
|
|
@ -31,7 +31,7 @@ jobs:
|
|||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
|
|
@ -27,7 +27,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
||||
|
@ -56,7 +56,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
||||
|
|
|
@ -23,7 +23,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
@ -46,7 +46,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
@ -70,7 +70,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
@ -95,7 +95,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
@ -148,7 +148,7 @@ jobs:
|
|||
strategy:
|
||||
matrix:
|
||||
runner: [ubuntu-latest]
|
||||
go-version: ["~1.24", "~1.23"] # 1.20 needs quotes otherwise it's interpreted as 1.2
|
||||
go-version: ["stable", "oldstable"]
|
||||
runs-on: ${{ matrix.runner }}
|
||||
needs: [setup-environment]
|
||||
steps:
|
||||
|
@ -206,7 +206,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
@ -254,6 +254,8 @@ jobs:
|
|||
goarch: arm64
|
||||
- goos: linux
|
||||
goarch: ppc64le
|
||||
- goos: linux
|
||||
goarch: riscv64
|
||||
- goos: linux
|
||||
goarch: arm
|
||||
goarm: 7
|
||||
|
@ -270,7 +272,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
|
|
@ -35,6 +35,6 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
- name: Test
|
||||
run: make builder-integration-test
|
||||
|
|
|
@ -9,9 +9,12 @@ on:
|
|||
paths:
|
||||
- "cmd/builder/**"
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
env:
|
||||
# renovate: datasource=github-tags depName=goreleaser-pro packageName=goreleaser/goreleaser-pro
|
||||
GORELEASER_PRO_VERSION: v2.7.0
|
||||
GORELEASER_PRO_VERSION: v2.11.1
|
||||
|
||||
jobs:
|
||||
snapshot:
|
||||
|
@ -31,20 +34,20 @@ jobs:
|
|||
- name: Copy release files
|
||||
run: cp -R ./opentelemetry-collector-releases/cmd/builder/. ./.core/cmd/builder/
|
||||
|
||||
- uses: sigstore/cosign-installer@3454372f43399081ed03b604cb2d021dabca52bb # v3.8.2
|
||||
- uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159 # v3.9.2
|
||||
|
||||
- uses: anchore/sbom-action/download-syft@e11c554f704a0b820cbf8c51673f6945e0731532 # v0.20.0
|
||||
- uses: anchore/sbom-action/download-syft@7b36ad622f042cab6f59a75c2ac24ccb256e9b45 # v0.20.4
|
||||
|
||||
- uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
|
||||
with:
|
||||
platforms: amd64, arm64,ppc64le
|
||||
|
||||
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
|
||||
- uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
|
||||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: "~1.24"
|
||||
go-version: stable
|
||||
|
||||
- name: Check GoReleaser
|
||||
uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # v6.3.0
|
||||
|
|
|
@ -33,7 +33,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
||||
|
@ -79,7 +79,7 @@ jobs:
|
|||
run: make chlog-preview > changelog_preview.md
|
||||
- name: Link Checker
|
||||
id: lychee
|
||||
uses: lycheeverse/lychee-action@82202e5e9c2f4ef1a55a3d02563e1cb6041e5332
|
||||
uses: lycheeverse/lychee-action@5c4ee84814c983aa7164eaee476f014e53ff3963
|
||||
with:
|
||||
args: "--verbose --no-progress ./changelog_preview.md --config .github/lychee.toml"
|
||||
failIfEmpty: false
|
||||
|
|
|
@ -47,7 +47,7 @@ jobs:
|
|||
|
||||
- name: Link Checker
|
||||
id: lychee
|
||||
uses: lycheeverse/lychee-action@82202e5e9c2f4ef1a55a3d02563e1cb6041e5332
|
||||
uses: lycheeverse/lychee-action@5c4ee84814c983aa7164eaee476f014e53ff3963
|
||||
with:
|
||||
args: "--verbose --no-progress ${{needs.changedfiles.outputs.files}} --config .github/lychee.toml"
|
||||
failIfEmpty: false
|
||||
|
|
|
@ -24,7 +24,7 @@ jobs:
|
|||
# This condition is to avoid blocking the PR causing the freeze in the first place.
|
||||
if: |
|
||||
(!startsWith(github.event.pull_request.title || github.event.merge_group.head_commit.message, '[chore] Prepare release')) ||
|
||||
(!(github.event.pull_request.user.login == 'opentelemetrybot' || github.event.merge_group.head_commit.author.name == 'OpenTelemetry Bot'))
|
||||
(!(github.event.pull_request.user.login == 'otelbot[bot]' || github.event.merge_group.head_commit.author.name == 'otelbot'))
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
|
|
@ -25,16 +25,16 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/init@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
|
||||
with:
|
||||
languages: go
|
||||
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/autobuild@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/analyze@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
|
||||
|
|
|
@ -66,7 +66,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Run tests
|
||||
run: |
|
||||
|
|
|
@ -6,6 +6,9 @@ on:
|
|||
- '.github/workflows/*.yml'
|
||||
- '.github/workflows/*.yaml'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
|
@ -17,14 +20,7 @@ jobs:
|
|||
- name: Set up Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5
|
||||
with:
|
||||
go-version: '1.24'
|
||||
|
||||
- name: Install Actionlint
|
||||
run: |
|
||||
mkdir -p .tools
|
||||
cd internal/tools
|
||||
go install github.com/rhysd/actionlint/cmd/actionlint@v1.7.7
|
||||
mv $(go env GOPATH)/bin/actionlint ../../.tools/actionlint
|
||||
go-version: stable
|
||||
|
||||
- name: Run Actionlint
|
||||
run: |
|
||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
|
||||
- name: Run benchmark
|
||||
run: make gobenchmark
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
name: 'Ping code owners on PRs'
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [labeled]
|
||||
types:
|
||||
- labeled
|
||||
- ready_for_review
|
||||
|
||||
permissions: read-all
|
||||
|
||||
|
@ -10,10 +12,10 @@ jobs:
|
|||
permissions:
|
||||
pull-requests: write
|
||||
runs-on: ubuntu-24.04
|
||||
if: ${{ github.actor != 'dependabot[bot]' && github.actor != 'renovate[bot]' && github.repository_owner == 'open-telemetry' }}
|
||||
if: ${{ github.actor != 'dependabot[bot]' && github.actor != 'renovate[bot]' && github.repository_owner == 'open-telemetry' && github.event.pull_request.draft == false }}
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
|
||||
- name: Run ping-codeowners-prs.sh
|
||||
run: ./.github/workflows/scripts/ping-codeowners-prs.sh
|
||||
env:
|
||||
|
|
|
@ -130,14 +130,19 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
- uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
|
||||
id: otelbot-token
|
||||
with:
|
||||
app-id: ${{ vars.OTELBOT_APP_ID }}
|
||||
private-key: ${{ secrets.OTELBOT_PRIVATE_KEY }}
|
||||
# Prepare Core for release.
|
||||
# - Update CHANGELOG.md file, this is done via chloggen
|
||||
# - Run make prepare-release PREVIOUS_VERSION=1.0.0 RELEASE_CANDIDATE=1.1.0 MODSET=stable
|
||||
# - Run make prepare-release PREVIOUS_VERSION=0.52.0 RELEASE_CANDIDATE=0.53.0 MODSET=beta
|
||||
- name: Prepare release for core
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.OPENTELEMETRYBOT_GITHUB_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ steps.otelbot-token.outputs.token }}
|
||||
REPO: open-telemetry/opentelemetry-collector
|
||||
CANDIDATE_BETA: ${{ inputs.candidate-beta }}
|
||||
CANDIDATE_STABLE: ${{ inputs.candidate-stable }}
|
||||
|
|
|
@ -8,6 +8,9 @@ on:
|
|||
- 'v0.[0-9]+.[0-9]+'
|
||||
- 'v0.[0-9]+.[0-9]+-*' # Also support release candidates if needed
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
release-branch:
|
||||
runs-on: ubuntu-latest
|
||||
|
@ -22,12 +25,12 @@ jobs:
|
|||
- name: Setup Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
|
||||
- name: Setup Git config
|
||||
run: |
|
||||
git config --global user.name "opentelemetrybot"
|
||||
git config --global user.email "107717825+opentelemetrybot@users.noreply.github.com"
|
||||
git config --global user.name "otelbot"
|
||||
git config --global user.email "197425009+otelbot@users.noreply.github.com"
|
||||
|
||||
- name: Run release-branch.sh
|
||||
run: |
|
||||
|
|
|
@ -64,6 +64,6 @@ jobs:
|
|||
|
||||
# Upload the results to GitHub's code scanning dashboard.
|
||||
- name: "Upload to code-scanning"
|
||||
uses: github/codeql-action/upload-sarif@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/upload-sarif@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# Check for [chore] Prepare release PRs in core repo
|
||||
BLOCKERS=$( gh pr list -A opentelemetrybot -S "[chore] Prepare release" --json url -q '.[].url' -R "${REPO}" )
|
||||
BLOCKERS=$( gh pr list -A "otelbot[bot]" -S "[chore] Prepare release" --json url -q '.[].url' -R "${REPO}" )
|
||||
|
||||
# Check for [chore] Update core dependencies PRs in opentelemetry-collector-contrib
|
||||
CONTRIB_REPO="open-telemetry/opentelemetry-collector-contrib"
|
||||
CONTRIB_BLOCKERS=$( gh pr list -A opentelemetrybot -S "[chore] Update core dependencies" --json url -q '.[].url' -R "${CONTRIB_REPO}" )
|
||||
CONTRIB_BLOCKERS=$( gh pr list -A "otelbot[bot]" -S "[chore] Update core dependencies" --json url -q '.[].url' -R "${CONTRIB_REPO}" )
|
||||
|
||||
# Combine both blockers
|
||||
BLOCKERS="${BLOCKERS}${BLOCKERS:+ }${CONTRIB_BLOCKERS}"
|
||||
|
|
|
@ -8,8 +8,8 @@ UPSTREAM_REMOTE_NAME=${UPSTREAM_REMOTE_NAME:-"upstream"} # Your upstream remote
|
|||
MAIN_BRANCH_NAME=${MAIN_BRANCH_NAME:-"main"}
|
||||
LOCAL_MAIN_BRANCH_NAME=${LOCAL_MAIN_BRANCH_NAME:-"${MAIN_BRANCH_NAME}"}
|
||||
# These variables are only used if git user.name and git user.email are not configured
|
||||
GIT_CONFIG_USER_NAME=${GIT_CONFIG_USER_NAME:-"opentelemetrybot"}
|
||||
GIT_CONFIG_USER_EMAIL=${GIT_CONFIG_USER_EMAIL:-"107717825+opentelemetrybot@users.noreply.github.com"}
|
||||
GIT_CONFIG_USER_NAME=${GIT_CONFIG_USER_NAME:-"otelbot"}
|
||||
GIT_CONFIG_USER_EMAIL=${GIT_CONFIG_USER_EMAIL:-"197425009+otelbot@users.noreply.github.com"}
|
||||
|
||||
# --- Extract release information from tag ---
|
||||
if [[ -z "$GITHUB_REF" ]]; then
|
||||
|
|
|
@ -22,8 +22,8 @@ fi
|
|||
|
||||
make chlog-update VERSION="${RELEASE_VERSION}"
|
||||
COMMANDS="- make chlog-update VERSION=${RELEASE_VERSION}"
|
||||
git config user.name opentelemetrybot
|
||||
git config user.email 107717825+opentelemetrybot@users.noreply.github.com
|
||||
git config user.name otelbot
|
||||
git config user.email 197425009+otelbot@users.noreply.github.com
|
||||
BRANCH="prepare-release-prs/${CANDIDATE_BETA}"
|
||||
git checkout -b "${BRANCH}"
|
||||
git add --all
|
||||
|
|
|
@ -5,6 +5,9 @@ on:
|
|||
tags:
|
||||
- "v*"
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
goreleaser:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
|
@ -2,6 +2,9 @@ name: Spell Check
|
|||
|
||||
on: [push, pull_request]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
spell-check:
|
||||
runs-on: ubuntu-latest
|
||||
|
@ -10,8 +13,9 @@ jobs:
|
|||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Run cSpell
|
||||
uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 # v7.0.1
|
||||
uses: streetsidesoftware/cspell-action@dcd03dc3e8a59ec2e360d0c62db517baa0b4bb6d # v7.2.0
|
||||
with:
|
||||
files: |
|
||||
**/*.{md,yaml,yml}
|
||||
config: '.github/workflows/utils/cspell.json'
|
||||
check_dot_files: true
|
||||
|
|
|
@ -20,7 +20,7 @@ jobs:
|
|||
ref: ${{ github.head_ref }}
|
||||
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.23.10
|
||||
go-version: oldstable
|
||||
cache: false
|
||||
- name: Cache Go
|
||||
id: go-cache
|
||||
|
@ -39,8 +39,8 @@ jobs:
|
|||
- name: go mod tidy
|
||||
run: |
|
||||
make gotidy
|
||||
git config user.name opentelemetrybot
|
||||
git config user.email 107717825+opentelemetrybot@users.noreply.github.com
|
||||
git config user.name otelbot
|
||||
git config user.email 197425009+otelbot@users.noreply.github.com
|
||||
echo "git diff --exit-code || (git add . && git commit -m \"go mod tidy\" && git push)"
|
||||
git diff --exit-code || (git add . && git commit -m "go mod tidy" && git push)
|
||||
- uses: actions-ecosystem/action-remove-labels@2ce5d41b4b6aa8503e285553f75ed56e0a40bae0 # v1.3.0
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
"Andrzej",
|
||||
"Anoshin",
|
||||
"Appy",
|
||||
"atombender",
|
||||
"Autobuild",
|
||||
"Backpressure",
|
||||
"Baeyens",
|
||||
"Bebbington",
|
||||
|
@ -29,12 +29,14 @@
|
|||
"Funcs",
|
||||
"GHSA",
|
||||
"GOARCH",
|
||||
"GOARM",
|
||||
"GOBIN",
|
||||
"GOCMD",
|
||||
"GOMEMLIMIT",
|
||||
"GOPATH",
|
||||
"GOPROXY",
|
||||
"Guiton",
|
||||
"HKLM",
|
||||
"Helmuth",
|
||||
"Hostfeature",
|
||||
"Islamov",
|
||||
|
@ -54,6 +56,7 @@
|
|||
"Mirabella",
|
||||
"Najaryan",
|
||||
"Nanos",
|
||||
"OTELBOT",
|
||||
"OTEP",
|
||||
"Olly",
|
||||
"Owais",
|
||||
|
@ -75,6 +78,7 @@
|
|||
"Unconfigured",
|
||||
"Unmarshable",
|
||||
"Unmarshal",
|
||||
"Unmarshalable",
|
||||
"Unmarshaller",
|
||||
"Unmarshallers",
|
||||
"Vihas",
|
||||
|
@ -83,12 +87,16 @@
|
|||
"adilhusain",
|
||||
"alibabacloudlogserviceexporter",
|
||||
"alives",
|
||||
"anchore",
|
||||
"andrzej",
|
||||
"apidiff",
|
||||
"atombender",
|
||||
"atoulme",
|
||||
"attributeprocessor",
|
||||
"attributesprocessor",
|
||||
"authextension",
|
||||
"authtest",
|
||||
"autobuild",
|
||||
"backoffs",
|
||||
"backpressure",
|
||||
"ballastextension",
|
||||
|
@ -96,12 +104,17 @@
|
|||
"bearertokenauthextension",
|
||||
"behaviour",
|
||||
"bogdandrutu",
|
||||
"braydonk",
|
||||
"bucketize",
|
||||
"buildinfo",
|
||||
"buildx",
|
||||
"bwalk",
|
||||
"capabilityconsumer",
|
||||
"certfile",
|
||||
"cgroupv",
|
||||
"checkapi",
|
||||
"checkdoc",
|
||||
"checklicense",
|
||||
"cheung",
|
||||
"chlog",
|
||||
"chloggen",
|
||||
|
@ -159,6 +172,7 @@
|
|||
"datapoints",
|
||||
"debugexporter",
|
||||
"defaultcomponents",
|
||||
"dehaansa",
|
||||
"distro",
|
||||
"distros",
|
||||
"djaglowski",
|
||||
|
@ -167,6 +181,7 @@
|
|||
"dokey",
|
||||
"envmapprovider",
|
||||
"envprovider",
|
||||
"eventcreate",
|
||||
"exampleexporter",
|
||||
"examplereceiver",
|
||||
"expandconverter",
|
||||
|
@ -184,9 +199,9 @@
|
|||
"extensionauth",
|
||||
"extensionauthtest",
|
||||
"extensioncapabilities",
|
||||
"extensionhelper",
|
||||
"extensionmiddleware",
|
||||
"extensionmiddlewaretest",
|
||||
"extensionhelper",
|
||||
"extensiontest",
|
||||
"extensionz",
|
||||
"fanout",
|
||||
|
@ -207,19 +222,28 @@
|
|||
"fsnotify",
|
||||
"funcs",
|
||||
"gcflags",
|
||||
"genotelcorecol",
|
||||
"genpdata",
|
||||
"genproto",
|
||||
"goarm",
|
||||
"gobenchmark",
|
||||
"godoc",
|
||||
"gofmt",
|
||||
"gogenerate",
|
||||
"goimpi",
|
||||
"golangci",
|
||||
"goldendataset",
|
||||
"goleak",
|
||||
"golint",
|
||||
"gomod",
|
||||
"gomoddownload",
|
||||
"goporto",
|
||||
"goproxy",
|
||||
"goreleaser",
|
||||
"goroutines",
|
||||
"gotest",
|
||||
"gotidy",
|
||||
"govulncheck",
|
||||
"groupbyattrprocessor",
|
||||
"groupbytrace",
|
||||
"groupbytraceprocessor",
|
||||
|
@ -260,6 +284,7 @@
|
|||
"localhostgate",
|
||||
"loggingexporter",
|
||||
"logstest",
|
||||
"lycheeverse",
|
||||
"mapconverter",
|
||||
"mapstructure",
|
||||
"marshalers",
|
||||
|
@ -276,6 +301,7 @@
|
|||
"metricstransformprocessor",
|
||||
"middleware",
|
||||
"mostynb",
|
||||
"mowies",
|
||||
"muehle",
|
||||
"multiclient",
|
||||
"multimod",
|
||||
|
@ -297,13 +323,15 @@
|
|||
"obsreport",
|
||||
"obsreporttest",
|
||||
"oidcauthextension",
|
||||
"oltp",
|
||||
"okey",
|
||||
"oldstable",
|
||||
"oltp",
|
||||
"omitempty",
|
||||
"omnition",
|
||||
"opencensus",
|
||||
"opencensusexporter",
|
||||
"opencensusreceiver",
|
||||
"otelbot",
|
||||
"otelcol",
|
||||
"otelcoltest",
|
||||
"otelcorecol",
|
||||
|
@ -362,13 +390,16 @@
|
|||
"receiverhelper",
|
||||
"receiverprofiles",
|
||||
"receivertest",
|
||||
"renovatebot",
|
||||
"resourcedetection",
|
||||
"resourcedetectionprocessor",
|
||||
"resourceprocessor",
|
||||
"resourcetolabel",
|
||||
"retryable",
|
||||
"riscv",
|
||||
"rpcz",
|
||||
"rrschulze",
|
||||
"runperf",
|
||||
"safelist",
|
||||
"samplereceiver",
|
||||
"samplingdecision",
|
||||
|
@ -384,6 +415,7 @@
|
|||
"servicetest",
|
||||
"servicez",
|
||||
"sfixed",
|
||||
"shanduur",
|
||||
"sharedcomponent",
|
||||
"sigstore",
|
||||
"someclientid",
|
||||
|
@ -404,6 +436,7 @@
|
|||
"subcomponents",
|
||||
"subpackages",
|
||||
"swiatekm",
|
||||
"syft",
|
||||
"tailsampling",
|
||||
"tchannel",
|
||||
"telemetrygen",
|
||||
|
@ -413,8 +446,10 @@
|
|||
"testfunc",
|
||||
"testonly",
|
||||
"testprovider",
|
||||
"testresults",
|
||||
"testutil",
|
||||
"tlsconfig",
|
||||
"tmpl",
|
||||
"tocstop",
|
||||
"tpmrm",
|
||||
"tracecontext",
|
||||
|
@ -431,7 +466,6 @@
|
|||
"unkeyed",
|
||||
"unmarshal",
|
||||
"unmarshalling",
|
||||
"Unmarshalable",
|
||||
"unmarshalls",
|
||||
"unshallow",
|
||||
"unstarted",
|
||||
|
@ -464,5 +498,9 @@
|
|||
"zpages",
|
||||
"zpagesextension",
|
||||
"zstd"
|
||||
],
|
||||
"ignorePaths": [
|
||||
".golangci.yml",
|
||||
".github/**/*"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,10 @@ formatters:
|
|||
# simplify code: gofmt with `-s` option, true by default
|
||||
simplify: true
|
||||
|
||||
gofumpt:
|
||||
# Choose whether to use the extra rules
|
||||
extra-rules: true
|
||||
|
||||
goimports:
|
||||
# put imports beginning with prefix after 3rd-party packages;
|
||||
# it's a comma-separated list of prefixes
|
||||
|
@ -22,10 +26,13 @@ issues:
|
|||
|
||||
linters:
|
||||
enable:
|
||||
- asasalint
|
||||
- copyloopvar
|
||||
- decorder
|
||||
- depguard
|
||||
- errcheck
|
||||
- errorlint
|
||||
- fatcontext
|
||||
- gocritic
|
||||
- gosec
|
||||
- govet
|
||||
|
@ -78,6 +85,18 @@ linters:
|
|||
- pkg: go.opentelemetry.io/proto
|
||||
desc: Use go.opentelemetry.io/collector/pdata instead
|
||||
|
||||
gocritic:
|
||||
disabled-checks:
|
||||
- commentedOutCode
|
||||
- deferInLoop
|
||||
- filepathJoin
|
||||
- hugeParam
|
||||
- importShadow
|
||||
- rangeValCopy
|
||||
- unnamedResult
|
||||
- whyNoLint
|
||||
enable-all: true
|
||||
|
||||
gosec:
|
||||
excludes:
|
||||
- G104 # FIXME
|
||||
|
|
|
@ -7,6 +7,35 @@ If you are looking for user-facing changes, check out [CHANGELOG.md](./CHANGELOG
|
|||
|
||||
<!-- next version -->
|
||||
|
||||
## v1.37.0/v0.131.0
|
||||
|
||||
### 🛑 Breaking changes 🛑
|
||||
|
||||
- `configgrpc`: Update optional fields to use `configoptional.Optional` field for optional values. (#13252, #13364)
|
||||
Specifically, the following fields have been updated to `configoptional`:
|
||||
- `KeepaliveServerConfig.ServerParameters` (`KeepaliveServerParameters` type)
|
||||
- `KeepaliveServerConfig.EnforcementPolicy` (`KeepaliveEnforcementPolicy` type)
|
||||
|
||||
- `xexporterhelper`: Remove deprecated NewProfilesExporter function from xexporterhelper package (#13391)
|
||||
|
||||
### 💡 Enhancements 💡
|
||||
|
||||
- `consumererror`: Add new "Downstream" error marker (#13234)
|
||||
This new error wrapper type indicates that the error returned by a component's
|
||||
`Consume` method is not an internal failure of the component, but instead
|
||||
was passed through from another component further downstream.
|
||||
This is used internally by the new pipeline instrumentation feature to
|
||||
determine the `outcome` of a component call. This wrapper is not intended to
|
||||
be used by components directly.
|
||||
|
||||
- `pdata/pprofile`: Introduce `Equal` method on the `Function` type (#13222)
|
||||
- `pdata/pprofile`: Introduce `Equal` method on the `Link` type (#13223)
|
||||
- `pdata/pprofile`: Add new helper method `SetFunction` to set a new function on a line. (#13222)
|
||||
- `pdata/pprofile`: Add new helper method `SetLink` to set a new link on a sample. (#13223)
|
||||
- `pdata/pprofile`: Add new helper method `SetString` to set or retrieve the index of a value in the StringTable. (#13225)
|
||||
|
||||
<!-- previous-version -->
|
||||
|
||||
## v1.36.1/v0.130.1
|
||||
|
||||
<!-- previous-version -->
|
||||
|
|
60
CHANGELOG.md
60
CHANGELOG.md
|
@ -7,6 +7,47 @@ If you are looking for developer-facing changes, check out [CHANGELOG-API.md](./
|
|||
|
||||
<!-- next version -->
|
||||
|
||||
## v1.37.0/v0.131.0
|
||||
|
||||
### 🛑 Breaking changes 🛑
|
||||
|
||||
- `confighttp`: Move `confighttp.framedSnappy` feature gate to beta. (#10584)
|
||||
|
||||
### 💡 Enhancements 💡
|
||||
|
||||
- `exporter/debug`: Move to alpha stability except profiles (#13487)
|
||||
- `exporterhelper`: Enable `exporter.PersistRequestContext` feature gate by default. (#13437)
|
||||
Request context is now preserved by default when using persistent queues.
|
||||
Note that Auth extensions context is not propagated through the persistent queue.
|
||||
|
||||
- `pdata`: Use pdatagen to generate marshalJSON without using gogo proto jsonpb. (#13450)
|
||||
- `otlpreceiver`: Remove usage of gogo proto which uses reflect.Value.MethodByName. Removes one source of disabling DCE. (#12747)
|
||||
- `exporterhelper`: Fix metrics split logic to consider metrics description into the size. (#13418)
|
||||
- `service`: New pipeline instrumentation now differentiates internal failures from downstream errors (#13234)
|
||||
With the telemetry.newPipelineTelemetry feature gate enabled, the "received" and "produced"
|
||||
metrics related to a component now distinguish between two types of errors:
|
||||
- "outcome = failure" indicates that the component returned an internal error;
|
||||
- "outcome = refused" indicates that the component successfully emitted data, but returned an
|
||||
error coming from a downstream component processing that data.
|
||||
|
||||
- `pdata`: Remove usage of text/template from pdata, improves DCE. (#12747)
|
||||
- `architecture`: New Tier 3 platform riscv64 allowing the collector to be built and distributed for this platform. (#13462)
|
||||
|
||||
### 🧰 Bug fixes 🧰
|
||||
|
||||
- `exporterhelper`: Prevents the exporter for being stuck when telemetry data is bigger than batch.max_size (#12893)
|
||||
- `mdatagen`: Fix import paths for mdatagen component (#13069)
|
||||
- `otlpreceiver`: Error handler correctly fallbacks to content type (#13414)
|
||||
- `pdata/pprofiles`: Fix profiles JSON unmarshal logic for originalPayload. The bytes have to be base64 encoded. (#13483)
|
||||
- `xpdata`: Fix unmarshaling JSON for entities, add e2e tests to avoid this in the future. (#13480)
|
||||
- `service`: Downgrade dependency of prometheus exporter in OTel Go SDK (#13429)
|
||||
This fixes the bug where collector's internal metrics are emitted with an unexpected suffix in their names when users configure the service::telemetry::metrics::readers with Prometheus
|
||||
- `service`: Revert Default internal metrics config now enables `otel_scope_` labels (#12939, #13344)
|
||||
Reverting change temporarily due to prometheus exporter downgrade. This unfortunately re-introduces the bug that instrumentation scope attributes cause errors in Prometheus exporter. See http://github.com/open-telemetry/opentelemetry-collector/issues/12939 for details.
|
||||
- `builder`: Remove undocumented handling of `DIST_*` environment variables replacements (#13335)
|
||||
|
||||
<!-- previous-version -->
|
||||
|
||||
## v1.36.1/v0.130.1
|
||||
|
||||
### 🧰 Bug fixes 🧰
|
||||
|
@ -18,6 +59,25 @@ If you are looking for developer-facing changes, check out [CHANGELOG-API.md](./
|
|||
|
||||
## v1.36.0/v0.130.0
|
||||
|
||||
### ❗ Known Issues ❗
|
||||
|
||||
- Due to a [bug](https://github.com/open-telemetry/opentelemetry-go/issues/7039) in the prometheus exporter, if you are configuring a prometheus exporter, the collector's internal metrics will be emitted with an unexpected suffix in its name. For example, the metric `otelcol_exporter_sent_spans__spans__total` instead of `otelcol_exporter_sent_spans_total`. The workaround is to manually configure `without_units: true` in your prometheus exporter config
|
||||
|
||||
```yaml
|
||||
service:
|
||||
telemetry:
|
||||
metrics:
|
||||
readers:
|
||||
- pull:
|
||||
exporter:
|
||||
prometheus:
|
||||
host: 0.0.0.0
|
||||
port: 8888
|
||||
without_units: true
|
||||
```
|
||||
|
||||
If you are using the collector's default Prometheus exporter for exporting internal metrics you are unaffected.
|
||||
|
||||
### 🛑 Breaking changes 🛑
|
||||
|
||||
- `exporter/otlp`: Remove deprecated batcher config from OTLP, use queuebatch (#13339)
|
||||
|
|
14
Makefile
14
Makefile
|
@ -152,18 +152,16 @@ endif
|
|||
# Build the Collector executable.
|
||||
.PHONY: otelcorecol
|
||||
otelcorecol:
|
||||
pushd cmd/otelcorecol && CGO_ENABLED=0 $(GOCMD) build -trimpath -o ../../bin/otelcorecol_$(GOOS)_$(GOARCH) \
|
||||
-tags $(GO_BUILD_TAGS) ./cmd/otelcorecol && popd
|
||||
pushd cmd/otelcorecol && CGO_ENABLED=0 $(GOCMD) build -trimpath -o ../../bin/otelcorecol_$(GOOS)_$(GOARCH) -tags "grpcnotrace" ./... && popd
|
||||
|
||||
.PHONY: genotelcorecol
|
||||
genotelcorecol: install-tools
|
||||
pushd cmd/builder/ && $(GOCMD) run ./ --skip-compilation --config ../otelcorecol/builder-config.yaml --output-path ../otelcorecol && popd
|
||||
$(MAKE) -C cmd/otelcorecol fmt
|
||||
cd internal/tools && $(GOCMD) install github.com/rhysd/actionlint/cmd/actionlint@v1.7.7
|
||||
|
||||
.PHONY: actionlint
|
||||
actionlint:
|
||||
./.tools/actionlint -config-file .github/actionlint.yaml -color .github/workflows/*.yml .github/workflows/*.yaml
|
||||
actionlint: $(ACTIONLINT)
|
||||
$(ACTIONLINT) -config-file .github/actionlint.yaml -color .github/workflows/*.yml .github/workflows/*.yaml
|
||||
|
||||
.PHONY: ocb
|
||||
ocb:
|
||||
|
@ -246,9 +244,9 @@ genproto_sub:
|
|||
|
||||
# Generate structs, functions and tests for pdata package. Must be used after any changes
|
||||
# to proto and after running `make genproto`
|
||||
genpdata:
|
||||
pushd pdata/ && $(GOCMD) run ./internal/cmd/pdatagen/main.go && popd
|
||||
$(MAKE) fmt
|
||||
genpdata: $(PDATAGEN)
|
||||
$(PDATAGEN)
|
||||
$(MAKE) -C pdata fmt
|
||||
|
||||
INTERNAL_PROTO_SRC_DIRS := exporter/exporterhelper/internal/queue pdata/xpdata/request/internal
|
||||
INTERNAL_PROTO_FILES := $(foreach dir,$(INTERNAL_PROTO_SRC_DIRS),$(wildcard $(dir)/*.proto))
|
||||
|
|
|
@ -24,6 +24,7 @@ CHLOGGEN_CONFIG := .chloggen/config.yaml
|
|||
# no trailing slash
|
||||
JUNIT_OUT_DIR ?= $(TOOLS_MOD_DIR)/testresults
|
||||
|
||||
ACTIONLINT := $(TOOLS_BIN_DIR)/actionlint
|
||||
ADDLICENSE := $(TOOLS_BIN_DIR)/addlicense
|
||||
APIDIFF := $(TOOLS_BIN_DIR)/apidiff
|
||||
CHECKAPI := $(TOOLS_BIN_DIR)/checkapi
|
||||
|
@ -31,11 +32,12 @@ CHECKFILE := $(TOOLS_BIN_DIR)/checkfile
|
|||
CHLOGGEN := $(TOOLS_BIN_DIR)/chloggen
|
||||
CROSSLINK := $(TOOLS_BIN_DIR)/crosslink
|
||||
ENVSUBST := $(TOOLS_BIN_DIR)/envsubst
|
||||
GITHUBGEN := $(TOOLS_BIN_DIR)/githubgen
|
||||
GITHUBGEN := $(TOOLS_BIN_DIR)/githubgen
|
||||
GOFUMPT := $(TOOLS_BIN_DIR)/gofumpt
|
||||
GOIMPORTS := $(TOOLS_BIN_DIR)/goimports
|
||||
GOVULNCHECK := $(TOOLS_BIN_DIR)/govulncheck
|
||||
LINT := $(TOOLS_BIN_DIR)/golangci-lint
|
||||
PDATAGEN := $(TOOLS_BIN_DIR)/pdatagen
|
||||
IMPI := $(TOOLS_BIN_DIR)/impi
|
||||
MISSPELL := $(TOOLS_BIN_DIR)/misspell
|
||||
MULTIMOD := $(TOOLS_BIN_DIR)/multimod
|
||||
|
@ -91,7 +93,7 @@ common/goimports: $(GOIMPORTS)
|
|||
|
||||
.PHONY: common/gofumpt
|
||||
common/gofumpt: $(GOFUMPT)
|
||||
$(GOFUMPT) -l -w .
|
||||
$(GOFUMPT) -l -w -extra .
|
||||
|
||||
.PHONY: govulncheck
|
||||
govulncheck: $(GOVULNCHECK)
|
||||
|
|
|
@ -4,8 +4,8 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/consumer v1.36.1
|
||||
go.opentelemetry.io/collector/pdata v1.36.1
|
||||
go.opentelemetry.io/collector/consumer v1.37.0
|
||||
go.opentelemetry.io/collector/pdata v1.37.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
)
|
||||
|
||||
|
@ -14,14 +14,14 @@ require (
|
|||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.2 // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/sys v0.32.0 // indirect
|
||||
golang.org/x/text v0.24.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
||||
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
||||
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
|
@ -25,8 +25,9 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
|||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ=
|
||||
|
@ -39,16 +40,16 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de
|
|||
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
|
||||
go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
|
||||
go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ=
|
||||
go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y=
|
||||
go.opentelemetry.io/otel/metric v1.35.0 h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M=
|
||||
go.opentelemetry.io/otel/metric v1.35.0/go.mod h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE=
|
||||
go.opentelemetry.io/otel/sdk v1.35.0 h1:iPctf8iprVySXSKJffSS79eOjl9pvxV9ZqOWT0QejKY=
|
||||
go.opentelemetry.io/otel/sdk v1.35.0/go.mod h1:+ga1bZliga3DxJ3CQGg3updiaAJoNECOgJREo9KHGQg=
|
||||
go.opentelemetry.io/otel/sdk/metric v1.35.0 h1:1RriWBmCKgkeHEhM7a2uMjMUfP7MsOF5JpUCaEqEI9o=
|
||||
go.opentelemetry.io/otel/sdk/metric v1.35.0/go.mod h1:is6XYCUMpcKi+ZsOvfluY5YstFnhW0BidkR+gL+qN+w=
|
||||
go.opentelemetry.io/otel/trace v1.35.0 h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs=
|
||||
go.opentelemetry.io/otel/trace v1.35.0/go.mod h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc=
|
||||
go.opentelemetry.io/otel v1.36.0 h1:UumtzIklRBY6cI/lllNZlALOF5nNIzJVb16APdvgTXg=
|
||||
go.opentelemetry.io/otel v1.36.0/go.mod h1:/TcFMXYjyRNh8khOAO9ybYkqaDBb/70aVwkNML4pP8E=
|
||||
go.opentelemetry.io/otel/metric v1.36.0 h1:MoWPKVhQvJ+eeXWHFBOPoBOi20jh6Iq2CcCREuTYufE=
|
||||
go.opentelemetry.io/otel/metric v1.36.0/go.mod h1:zC7Ks+yeyJt4xig9DEw9kuUFe5C3zLbVjV2PzT6qzbs=
|
||||
go.opentelemetry.io/otel/sdk v1.36.0 h1:b6SYIuLRs88ztox4EyrvRti80uXIFy+Sqzoh9kFULbs=
|
||||
go.opentelemetry.io/otel/sdk v1.36.0/go.mod h1:+lC+mTgD+MUWfjJubi2vvXWcVxyr9rmlshZni72pXeY=
|
||||
go.opentelemetry.io/otel/sdk/metric v1.36.0 h1:r0ntwwGosWGaa0CrSt8cuNuTcccMXERFwHX4dThiPis=
|
||||
go.opentelemetry.io/otel/sdk/metric v1.36.0/go.mod h1:qTNOhFDfKRwX0yXOqJYegL5WRaW376QbB7P4Pb0qva4=
|
||||
go.opentelemetry.io/otel/trace v1.36.0 h1:ahxWNuqZjpdiFAyrIoQ4GIiAIhxAunQR6MUoKrsNd4w=
|
||||
go.opentelemetry.io/otel/trace v1.36.0/go.mod h1:gQ+OnDZzrybY4k4seLzPAWNwVBBVlF2szhehOBB/tGA=
|
||||
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
||||
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
|
||||
|
@ -62,20 +63,20 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20=
|
||||
golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
||||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
|
||||
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -84,10 +85,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -5,28 +5,28 @@ This program generates a custom OpenTelemetry Collector binary based on a given
|
|||
## TL;DR
|
||||
|
||||
```console
|
||||
$ go install go.opentelemetry.io/collector/cmd/builder@v0.109.0
|
||||
$ go install go.opentelemetry.io/collector/cmd/builder@v0.129.0
|
||||
$ cat > otelcol-builder.yaml <<EOF
|
||||
dist:
|
||||
name: otelcol-custom
|
||||
description: Local OpenTelemetry Collector binary
|
||||
output_path: /tmp/dist
|
||||
exporters:
|
||||
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/exporter/alibabacloudlogserviceexporter v0.109.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.109.0
|
||||
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/exporter/alibabacloudlogserviceexporter v0.129.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.129.0
|
||||
|
||||
receivers:
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.109.0
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.129.0
|
||||
|
||||
processors:
|
||||
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.109.0
|
||||
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.129.0
|
||||
|
||||
providers:
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.15.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.15.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v0.109.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v0.109.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v0.109.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.35.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.35.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.35.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.35.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.35.0
|
||||
EOF
|
||||
$ builder --config=otelcol-builder.yaml
|
||||
$ cat > /tmp/otelcol.yaml <<EOF
|
||||
|
@ -36,9 +36,6 @@ receivers:
|
|||
grpc:
|
||||
endpoint: localhost:4317
|
||||
|
||||
processors:
|
||||
batch:
|
||||
|
||||
exporters:
|
||||
debug:
|
||||
|
||||
|
@ -47,8 +44,6 @@ service:
|
|||
traces:
|
||||
receivers:
|
||||
- otlp
|
||||
processors:
|
||||
- batch
|
||||
exporters:
|
||||
- debug
|
||||
EOF
|
||||
|
@ -64,11 +59,11 @@ There are three supported ways to install the builder:
|
|||
|
||||
### Official release Docker image
|
||||
|
||||
You will find the official docker images at [DockerHub](https://hub.docker.com/r/otel/opentelemetry-collector-builder).
|
||||
You will find the official docker images at [DockerHub](https://hub.docker.com/r/otel/opentelemetry-collector-builder).
|
||||
|
||||
Pull the image via tagged version number (e.g. v0.110.0) or 'latest'. You may also specify platform, although Docker will handle this automatically as it is a multi-platform build.
|
||||
Pull the image via tagged version number (e.g. `0.129.0`) or 'latest'. You may also specify platform, although Docker will handle this automatically as it is a multi-platform build.
|
||||
|
||||
```
|
||||
```console
|
||||
docker pull otel/opentelemetry-collector-builder:latest
|
||||
```
|
||||
|
||||
|
@ -76,15 +71,15 @@ The included builder configuration file/manifest should be replaced by mounting
|
|||
|
||||
Assuming you are running this image in your working directory, have a `builder-config.yaml` file located in this folder, the `dist.output_path` item inside your `builder-config.yaml` is set to `./otelcol-dev`, and you wish to output the binary/go module files to a folder named `output`, the command would look as follows:
|
||||
|
||||
```
|
||||
```console
|
||||
docker run -v "$(pwd)/builder-config.yaml:/build/builder-config.yaml" -v "$(pwd)/output:/build/otelcol-dev" otel/opentelemetry-collector-builder:latest --config=/build/builder-config.yaml
|
||||
```
|
||||
|
||||
Please note that a `--config` flag must be passed to specify your custom manifest.yaml/builder-config.yaml file regardless of where you mount it inside the container, otherwise a default config is used that cannot be changed.
|
||||
|
||||
Additional arguments may be passed to ocb on the command line as specified below, but if you wish to do this, you must make sure to pass the `--config` argument, as this is specified as an additional `CMD`, not an entrypoint.
|
||||
Additional arguments may be passed to ocb on the command line as specified below, but if you wish to do this, you must make sure to pass the `--config` argument, as this is specified as an additional `CMD`, not an entrypoint.
|
||||
|
||||
### Official release binaries
|
||||
### Official release binaries
|
||||
|
||||
This is the recommended installation method for the binary. Download the binary for your respective platform from the ["Releases"](https://github.com/open-telemetry/opentelemetry-collector-releases/releases?q=cmd/builder) page.
|
||||
|
||||
|
@ -118,7 +113,7 @@ Use `ocb --help` to learn about which flags are available.
|
|||
|
||||
By default, the LDflags are set to `-s -w`, which strips debugging symbols to produce a smaller OpenTelemetry Collector binary. To retain debugging symbols and DWARF debugging data in the binary, override the LDflags as shown:
|
||||
|
||||
```console
|
||||
```console
|
||||
ocb --ldflags="" --config=builder-config.yaml.
|
||||
```
|
||||
|
||||
|
@ -164,13 +159,13 @@ dist:
|
|||
go: "/usr/bin/go" # which Go binary to use to compile the generated sources. Optional.
|
||||
debug_compilation: false # enabling this causes the builder to keep the debug symbols in the resulting binary. Optional.
|
||||
exporters:
|
||||
- gomod: "github.com/open-telemetry/opentelemetry-collector-contrib/exporter/alibabacloudlogserviceexporter v0.40.0" # the Go module for the component. Required.
|
||||
- gomod: "github.com/open-telemetry/opentelemetry-collector-contrib/exporter/alibabacloudlogserviceexporter v0.129.0" # the Go module for the component. Required.
|
||||
import: "github.com/open-telemetry/opentelemetry-collector-contrib/exporter/alibabacloudlogserviceexporter" # the import path for the component. Optional.
|
||||
name: "alibabacloudlogserviceexporter" # package name to use in the generated sources. Optional.
|
||||
path: "./alibabacloudlogserviceexporter" # in case a local version should be used for the module, the path relative to the current dir, or a full path can be specified. Optional.
|
||||
replaces:
|
||||
# a list of "replaces" directives that will be part of the resulting go.mod
|
||||
- github.com/open-telemetry/opentelemetry-collector-contrib/internal/common => github.com/open-telemetry/opentelemetry-collector-contrib/internal/common v0.40.0
|
||||
- github.com/open-telemetry/opentelemetry-collector-contrib/internal/common => github.com/open-telemetry/opentelemetry-collector-contrib/internal/common v0.128.0
|
||||
```
|
||||
|
||||
The builder also allows setting the scheme to use as the default URI scheme via `conf_resolver.default_uri_scheme`:
|
||||
|
|
|
@ -10,9 +10,9 @@ require (
|
|||
github.com/knadh/koanf/providers/env/v2 v2.0.0
|
||||
github.com/knadh/koanf/providers/file v1.2.0
|
||||
github.com/knadh/koanf/providers/fs v1.0.0
|
||||
github.com/knadh/koanf/v2 v2.2.1
|
||||
github.com/knadh/koanf/v2 v2.2.2
|
||||
github.com/spf13/cobra v1.9.1
|
||||
github.com/spf13/pflag v1.0.6
|
||||
github.com/spf13/pflag v1.0.7
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
go.uber.org/multierr v1.11.0
|
||||
|
@ -23,7 +23,7 @@ require (
|
|||
require (
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.2.1 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/kr/pretty v0.3.1 // indirect
|
||||
|
|
|
@ -4,8 +4,8 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
|
|||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
|
||||
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
||||
github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss=
|
||||
github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
|
||||
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpbo=
|
||||
|
@ -18,8 +18,8 @@ github.com/knadh/koanf/providers/file v1.2.0 h1:hrUJ6Y9YOA49aNu/RSYzOTFlqzXSCpmY
|
|||
github.com/knadh/koanf/providers/file v1.2.0/go.mod h1:bp1PM5f83Q+TOUu10J/0ApLBd9uIzg+n9UgthfY+nRA=
|
||||
github.com/knadh/koanf/providers/fs v1.0.0 h1:tvn4MrduLgdOSUqqEHULUuIcELXf6xDOpH8GUErpYaY=
|
||||
github.com/knadh/koanf/providers/fs v1.0.0/go.mod h1:FksHET+xXFNDozvj8ZCdom54OnZ6eGKJtC5FhZJKx/8=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
|
@ -40,8 +40,9 @@ github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncj
|
|||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/pflag v1.0.7 h1:vN6T9TfwStFPFM5XzjsvmzZkLuaLX+HS+0SeFLRgU6M=
|
||||
github.com/spf13/pflag v1.0.7/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||
|
|
|
@ -18,8 +18,8 @@ import (
|
|||
)
|
||||
|
||||
const (
|
||||
defaultBetaOtelColVersion = "v0.130.1"
|
||||
defaultStableOtelColVersion = "v1.36.1"
|
||||
defaultBetaOtelColVersion = "v0.131.0"
|
||||
defaultStableOtelColVersion = "v1.37.0"
|
||||
)
|
||||
|
||||
// errMissingGoMod indicates an empty gomod field
|
||||
|
|
|
@ -128,8 +128,7 @@ func Compile(cfg *Config) error {
|
|||
}
|
||||
}
|
||||
|
||||
args = append(args, "-ldflags="+ldflags)
|
||||
args = append(args, "-gcflags="+gcflags)
|
||||
args = append(args, "-ldflags="+ldflags, "-gcflags="+gcflags)
|
||||
|
||||
if cfg.Distribution.BuildTags != "" {
|
||||
args = append(args, "-tags", cfg.Distribution.BuildTags)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
module {{.Distribution.Module}}
|
||||
|
||||
go 1.22
|
||||
go 1.23
|
||||
|
||||
require (
|
||||
{{- range .ConfmapConverters}}
|
||||
|
|
|
@ -5,7 +5,6 @@ package internal // import "go.opentelemetry.io/collector/cmd/builder/internal"
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/knadh/koanf/parsers/yaml"
|
||||
"github.com/knadh/koanf/providers/env/v2"
|
||||
|
@ -116,14 +115,7 @@ func initConfig(flags *flag.FlagSet) (*builder.Config, error) {
|
|||
}
|
||||
|
||||
// handle env variables
|
||||
if err = k.Load(env.Provider(".", env.Opt{
|
||||
TransformFunc: func(key string, value string) (string, any) {
|
||||
// Only values from the `dist.` group can be set,
|
||||
// and the subfields in `dist.` contain `_` in their names.
|
||||
// All other fields are arrays and the koanf env provider doesn't provide a straightforward way to set arrays.
|
||||
return strings.Replace(strings.ToLower(key), "dist_", "dist.", 1), value
|
||||
},
|
||||
}), nil); err != nil {
|
||||
if err = k.Load(env.Provider(".", env.Opt{}), nil); err != nil {
|
||||
return nil, fmt.Errorf("failed to load environment variables: %w", err)
|
||||
}
|
||||
|
||||
|
|
|
@ -10,29 +10,29 @@ dist:
|
|||
module: go.opentelemetry.io/collector/cmd/otelcorecol
|
||||
name: otelcorecol
|
||||
description: Local OpenTelemetry Collector binary, testing only.
|
||||
version: 0.130.1-dev
|
||||
version: 0.131.0-dev
|
||||
|
||||
receivers:
|
||||
- gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.131.0
|
||||
exporters:
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/nopexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/nopexporter v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.131.0
|
||||
extensions:
|
||||
- gomod: go.opentelemetry.io/collector/extension/memorylimiterextension v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/extension/memorylimiterextension v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.131.0
|
||||
processors:
|
||||
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.131.0
|
||||
connectors:
|
||||
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.131.0
|
||||
|
||||
providers:
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.37.0
|
||||
|
||||
|
|
|
@ -4,10 +4,10 @@ dist:
|
|||
go: ${GOBIN}
|
||||
|
||||
extensions:
|
||||
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.131.0
|
||||
|
||||
receivers:
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.131.0
|
||||
|
||||
exporters:
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.131.0
|
||||
|
|
|
@ -6,23 +6,23 @@ require (
|
|||
github.com/google/go-cmp v0.7.0
|
||||
github.com/spf13/cobra v1.9.1
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/component/componenttest v0.130.1
|
||||
go.opentelemetry.io/collector/confmap v1.36.1
|
||||
go.opentelemetry.io/collector/confmap/provider/fileprovider v1.36.1
|
||||
go.opentelemetry.io/collector/connector v0.130.1
|
||||
go.opentelemetry.io/collector/connector/connectortest v0.130.1
|
||||
go.opentelemetry.io/collector/consumer v1.36.1
|
||||
go.opentelemetry.io/collector/consumer/consumertest v0.130.1
|
||||
go.opentelemetry.io/collector/filter v0.130.1
|
||||
go.opentelemetry.io/collector/pdata v1.36.1
|
||||
go.opentelemetry.io/collector/pipeline v0.130.1
|
||||
go.opentelemetry.io/collector/processor v1.36.1
|
||||
go.opentelemetry.io/collector/processor/processortest v0.130.1
|
||||
go.opentelemetry.io/collector/receiver v1.36.1
|
||||
go.opentelemetry.io/collector/receiver/receivertest v0.130.1
|
||||
go.opentelemetry.io/collector/scraper v0.130.1
|
||||
go.opentelemetry.io/collector/scraper/scrapertest v0.130.1
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/component/componenttest v0.131.0
|
||||
go.opentelemetry.io/collector/confmap v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/provider/fileprovider v1.37.0
|
||||
go.opentelemetry.io/collector/connector v0.131.0
|
||||
go.opentelemetry.io/collector/connector/connectortest v0.131.0
|
||||
go.opentelemetry.io/collector/consumer v1.37.0
|
||||
go.opentelemetry.io/collector/consumer/consumertest v0.131.0
|
||||
go.opentelemetry.io/collector/filter v0.131.0
|
||||
go.opentelemetry.io/collector/pdata v1.37.0
|
||||
go.opentelemetry.io/collector/pipeline v0.131.0
|
||||
go.opentelemetry.io/collector/processor v1.37.0
|
||||
go.opentelemetry.io/collector/processor/processortest v0.131.0
|
||||
go.opentelemetry.io/collector/receiver v1.37.0
|
||||
go.opentelemetry.io/collector/receiver/receivertest v0.131.0
|
||||
go.opentelemetry.io/collector/scraper v0.131.0
|
||||
go.opentelemetry.io/collector/scraper/scrapertest v0.131.0
|
||||
go.opentelemetry.io/otel v1.37.0
|
||||
go.opentelemetry.io/otel/metric v1.37.0
|
||||
go.opentelemetry.io/otel/sdk/metric v1.37.0
|
||||
|
@ -36,7 +36,7 @@ require (
|
|||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/go-logr/logr v1.4.3 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
|
@ -45,35 +45,35 @@ require (
|
|||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.1 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.2 // indirect
|
||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.2 // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
github.com/spf13/pflag v1.0.6 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/component/componentstatus v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/connector/xconnector v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumererror v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer/xconsumer v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/fanoutconsumer v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata/pprofile v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata/testdata v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pipeline/xpipeline v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/processor/xprocessor v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/receiver/xreceiver v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/component/componentstatus v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/connector/xconnector v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumererror v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer/xconsumer v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/fanoutconsumer v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata/pprofile v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata/testdata v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pipeline/xpipeline v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/processor/xprocessor v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/receiver/xreceiver v0.131.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
go.opentelemetry.io/otel/sdk v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -7,8 +7,8 @@ github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
|||
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
|
@ -32,8 +32,8 @@ github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpb
|
|||
github.com/knadh/koanf/maps v0.1.2/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 h1:mHKLJTE7iXEys6deO5p6olAiZdG5zwp8Aebir+/EaRE=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0/go.mod h1:txHYHiI2hAtF0/0sCmcuol4IDcuQbKTybiB1nOcUo1A=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
|
@ -45,8 +45,9 @@ github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx
|
|||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
|
@ -97,8 +98,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -119,10 +120,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -89,33 +89,38 @@ func run(ymlPath string) error {
|
|||
if md.Status != nil {
|
||||
if !slices.Contains(nonComponents, md.Status.Class) {
|
||||
toGenerate[filepath.Join(tmplDir, "status.go.tmpl")] = filepath.Join(codeDir, "generated_status.go")
|
||||
if err = generateFile(filepath.Join(tmplDir, "component_test.go.tmpl"),
|
||||
filepath.Join(ymlDir, "generated_component_test.go"), md, packageName); err != nil {
|
||||
err = generateFile(filepath.Join(tmplDir, "component_test.go.tmpl"),
|
||||
filepath.Join(ymlDir, "generated_component_test.go"), md, packageName)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
} else {
|
||||
if _, err = os.Stat(filepath.Join(codeDir, "generated_status.go")); err == nil {
|
||||
if err = os.Remove(filepath.Join(codeDir, "generated_status.go")); err != nil {
|
||||
err = os.Remove(filepath.Join(codeDir, "generated_status.go"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err = os.Stat(filepath.Join(ymlDir, "generated_component_test.go")); err == nil {
|
||||
if err = os.Remove(filepath.Join(ymlDir, "generated_component_test.go")); err != nil {
|
||||
err = os.Remove(filepath.Join(ymlDir, "generated_component_test.go"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if err = generateFile(filepath.Join(tmplDir, "package_test.go.tmpl"),
|
||||
filepath.Join(ymlDir, "generated_package_test.go"), md, packageName); err != nil {
|
||||
err = generateFile(filepath.Join(tmplDir, "package_test.go.tmpl"),
|
||||
filepath.Join(ymlDir, "generated_package_test.go"), md, packageName)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if _, err = os.Stat(filepath.Join(ymlDir, "README.md")); err == nil {
|
||||
if err = inlineReplace(
|
||||
err = inlineReplace(
|
||||
filepath.Join(tmplDir, "readme.md.tmpl"),
|
||||
filepath.Join(ymlDir, "README.md"),
|
||||
md, statusStart, statusEnd, md.GeneratedPackageName); err != nil {
|
||||
md, statusStart, statusEnd, md.GeneratedPackageName)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
@ -138,22 +143,26 @@ func run(ymlPath string) error {
|
|||
toGenerate[filepath.Join(tmplDir, "telemetrytest_test.go.tmpl")] = filepath.Join(testDir, "generated_telemetrytest_test.go")
|
||||
} else {
|
||||
if _, err = os.Stat(filepath.Join(ymlDir, "generated_telemetry.go")); err == nil {
|
||||
if err = os.Remove(filepath.Join(ymlDir, "generated_telemetry.go")); err != nil {
|
||||
err = os.Remove(filepath.Join(ymlDir, "generated_telemetry.go"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err = os.Stat(filepath.Join(ymlDir, "generated_telemetry_test.go")); err == nil {
|
||||
if err = os.Remove(filepath.Join(ymlDir, "generated_telemetry_test.go")); err != nil {
|
||||
err = os.Remove(filepath.Join(ymlDir, "generated_telemetry_test.go"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err = os.Stat(filepath.Join(ymlDir, "generated_telemetrytest.go")); err == nil {
|
||||
if err = os.Remove(filepath.Join(ymlDir, "generated_telemetrytest.go")); err != nil {
|
||||
err = os.Remove(filepath.Join(ymlDir, "generated_telemetrytest.go"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err = os.Stat(filepath.Join(ymlDir, "generated_telemetrytest_test.go")); err == nil {
|
||||
if err = os.Remove(filepath.Join(ymlDir, "generated_telemetrytest_test.go")); err != nil {
|
||||
err = os.Remove(filepath.Join(ymlDir, "generated_telemetrytest_test.go"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
@ -198,7 +207,7 @@ func run(ymlPath string) error {
|
|||
}
|
||||
|
||||
for tmpl, dst := range toGenerate {
|
||||
if err = generateFile(tmpl, dst, md, md.GeneratedPackageName); err != nil {
|
||||
if err := generateFile(tmpl, dst, md, md.GeneratedPackageName); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
@ -348,7 +357,7 @@ func executeTemplate(tmplFile string, md Metadata, goPackage string) ([]byte, er
|
|||
return buf.Bytes(), nil
|
||||
}
|
||||
|
||||
func inlineReplace(tmplFile string, outputFile string, md Metadata, start string, end string, goPackage string) error {
|
||||
func inlineReplace(tmplFile, outputFile string, md Metadata, start, end, goPackage string) error {
|
||||
var readmeContents []byte
|
||||
var err error
|
||||
if readmeContents, err = os.ReadFile(outputFile); err != nil { //nolint:gosec
|
||||
|
@ -377,7 +386,7 @@ func inlineReplace(tmplFile string, outputFile string, md Metadata, start string
|
|||
return nil
|
||||
}
|
||||
|
||||
func generateFile(tmplFile string, outputFile string, md Metadata, goPackage string) error {
|
||||
func generateFile(tmplFile, outputFile string, md Metadata, goPackage string) error {
|
||||
if err := os.Remove(outputFile); err != nil && !errors.Is(err, fs.ErrNotExist) {
|
||||
return fmt.Errorf("unable to remove generated file %q: %w", outputFile, err)
|
||||
}
|
||||
|
|
|
@ -40,20 +40,24 @@ func LoadMetadata(filePath string) (Metadata, error) {
|
|||
}
|
||||
|
||||
md := Metadata{ShortFolderName: shortFolderName(filePath), Tests: Tests{Host: "componenttest.NewNopHost()"}}
|
||||
if err = conf.Unmarshal(&md); err != nil {
|
||||
err = conf.Unmarshal(&md)
|
||||
if err != nil {
|
||||
return md, err
|
||||
}
|
||||
packageName, err := packageName(filepath.Dir(filePath))
|
||||
if err != nil {
|
||||
return md, fmt.Errorf("unable to determine package name: %w", err)
|
||||
}
|
||||
md.PackageName = packageName
|
||||
|
||||
if md.ScopeName == "" {
|
||||
md.ScopeName, err = packageName(filepath.Dir(filePath))
|
||||
if err != nil {
|
||||
return md, err
|
||||
}
|
||||
md.ScopeName = packageName
|
||||
}
|
||||
if md.GeneratedPackageName == "" {
|
||||
md.GeneratedPackageName = "metadata"
|
||||
}
|
||||
|
||||
if err = md.Validate(); err != nil {
|
||||
if err := md.Validate(); err != nil {
|
||||
return md, err
|
||||
}
|
||||
|
||||
|
|
|
@ -44,6 +44,7 @@ func TestLoadMetadata(t *testing.T) {
|
|||
GeneratedPackageName: "metadata",
|
||||
Type: "sample",
|
||||
SemConvVersion: "1.9.0",
|
||||
PackageName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/samplereceiver",
|
||||
Status: &Status{
|
||||
DisableCodeCov: true,
|
||||
Class: "receiver",
|
||||
|
@ -409,6 +410,7 @@ func TestLoadMetadata(t *testing.T) {
|
|||
Parent: "parentComponent",
|
||||
GeneratedPackageName: "metadata",
|
||||
ScopeName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/testdata",
|
||||
PackageName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/testdata",
|
||||
ShortFolderName: "testdata",
|
||||
Tests: Tests{Host: "componenttest.NewNopHost()"},
|
||||
},
|
||||
|
@ -419,6 +421,7 @@ func TestLoadMetadata(t *testing.T) {
|
|||
Type: "custom",
|
||||
GeneratedPackageName: "customname",
|
||||
ScopeName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/testdata",
|
||||
PackageName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/testdata",
|
||||
ShortFolderName: "testdata",
|
||||
Tests: Tests{Host: "componenttest.NewNopHost()"},
|
||||
Status: &Status{
|
||||
|
@ -437,6 +440,7 @@ func TestLoadMetadata(t *testing.T) {
|
|||
Type: "test",
|
||||
GeneratedPackageName: "metadata",
|
||||
ScopeName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/testdata",
|
||||
PackageName: "go.opentelemetry.io/collector/cmd/mdatagen/internal/testdata",
|
||||
ShortFolderName: "testdata",
|
||||
Tests: Tests{Host: "componenttest.NewNopHost()"},
|
||||
Status: &Status{
|
||||
|
|
|
@ -43,6 +43,8 @@ type Metadata struct {
|
|||
ShortFolderName string `mapstructure:"-"`
|
||||
// Tests is the set of tests generated with the component
|
||||
Tests Tests `mapstructure:"tests"`
|
||||
// PackageName is the name of the package where the component is defined.
|
||||
PackageName string `mapstructure:"package_name"`
|
||||
}
|
||||
|
||||
func (md Metadata) GetCodeCovComponentID() string {
|
||||
|
@ -318,7 +320,7 @@ func (a Attribute) Name() AttributeName {
|
|||
|
||||
func (a Attribute) TestValue() string {
|
||||
if a.Enum != nil {
|
||||
return fmt.Sprintf(`"%s"`, a.Enum[0])
|
||||
return fmt.Sprintf(`%q`, a.Enum[0])
|
||||
}
|
||||
switch a.Type.ValueType {
|
||||
case pcommon.ValueTypeEmpty:
|
||||
|
|
|
@ -53,10 +53,10 @@ type Stability struct {
|
|||
}
|
||||
|
||||
func (s Stability) String() string {
|
||||
if len(s.Level) == 0 || strings.EqualFold(s.Level, component.StabilityLevelStable.String()) {
|
||||
if s.Level == "" || strings.EqualFold(s.Level, component.StabilityLevelStable.String()) {
|
||||
return ""
|
||||
}
|
||||
if len(s.From) > 0 {
|
||||
if s.From != "" {
|
||||
return fmt.Sprintf(" [%s since %s]", s.Level, s.From)
|
||||
}
|
||||
return fmt.Sprintf(" [%s]", s.Level)
|
||||
|
|
|
@ -19,6 +19,7 @@ import (
|
|||
"go.opentelemetry.io/otel/sdk/metric/metricdata/metricdatatest"
|
||||
|
||||
"go.opentelemetry.io/collector/component/componenttest"
|
||||
"{{ .PackageName }}/internal/{{ .GeneratedPackageName }}"
|
||||
)
|
||||
|
||||
func TestSetupTelemetry(t *testing.T) {
|
||||
|
|
|
@ -10,31 +10,31 @@ dist:
|
|||
module: go.opentelemetry.io/collector/cmd/otelcorecol
|
||||
name: otelcorecol
|
||||
description: Local OpenTelemetry Collector binary, testing only.
|
||||
version: 0.130.1-dev
|
||||
version: 0.131.0-dev
|
||||
|
||||
receivers:
|
||||
- gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.131.0
|
||||
exporters:
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/nopexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/nopexporter v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.131.0
|
||||
extensions:
|
||||
- gomod: go.opentelemetry.io/collector/extension/memorylimiterextension v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/extension/memorylimiterextension v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.131.0
|
||||
processors:
|
||||
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.131.0
|
||||
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.131.0
|
||||
connectors:
|
||||
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.130.1
|
||||
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.131.0
|
||||
|
||||
providers:
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.36.1
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.37.0
|
||||
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.37.0
|
||||
|
||||
replaces:
|
||||
- go.opentelemetry.io/collector => ../../
|
||||
|
|
|
@ -35,8 +35,8 @@ func components() (otelcol.Factories, error) {
|
|||
return otelcol.Factories{}, err
|
||||
}
|
||||
factories.ExtensionModules = make(map[component.Type]string, len(factories.Extensions))
|
||||
factories.ExtensionModules[memorylimiterextension.NewFactory().Type()] = "go.opentelemetry.io/collector/extension/memorylimiterextension v0.130.1"
|
||||
factories.ExtensionModules[zpagesextension.NewFactory().Type()] = "go.opentelemetry.io/collector/extension/zpagesextension v0.130.1"
|
||||
factories.ExtensionModules[memorylimiterextension.NewFactory().Type()] = "go.opentelemetry.io/collector/extension/memorylimiterextension v0.131.0"
|
||||
factories.ExtensionModules[zpagesextension.NewFactory().Type()] = "go.opentelemetry.io/collector/extension/zpagesextension v0.131.0"
|
||||
|
||||
factories.Receivers, err = otelcol.MakeFactoryMap[receiver.Factory](
|
||||
nopreceiver.NewFactory(),
|
||||
|
@ -46,8 +46,8 @@ func components() (otelcol.Factories, error) {
|
|||
return otelcol.Factories{}, err
|
||||
}
|
||||
factories.ReceiverModules = make(map[component.Type]string, len(factories.Receivers))
|
||||
factories.ReceiverModules[nopreceiver.NewFactory().Type()] = "go.opentelemetry.io/collector/receiver/nopreceiver v0.130.1"
|
||||
factories.ReceiverModules[otlpreceiver.NewFactory().Type()] = "go.opentelemetry.io/collector/receiver/otlpreceiver v0.130.1"
|
||||
factories.ReceiverModules[nopreceiver.NewFactory().Type()] = "go.opentelemetry.io/collector/receiver/nopreceiver v0.131.0"
|
||||
factories.ReceiverModules[otlpreceiver.NewFactory().Type()] = "go.opentelemetry.io/collector/receiver/otlpreceiver v0.131.0"
|
||||
|
||||
factories.Exporters, err = otelcol.MakeFactoryMap[exporter.Factory](
|
||||
debugexporter.NewFactory(),
|
||||
|
@ -59,10 +59,10 @@ func components() (otelcol.Factories, error) {
|
|||
return otelcol.Factories{}, err
|
||||
}
|
||||
factories.ExporterModules = make(map[component.Type]string, len(factories.Exporters))
|
||||
factories.ExporterModules[debugexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/debugexporter v0.130.1"
|
||||
factories.ExporterModules[nopexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/nopexporter v0.130.1"
|
||||
factories.ExporterModules[otlpexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/otlpexporter v0.130.1"
|
||||
factories.ExporterModules[otlphttpexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/otlphttpexporter v0.130.1"
|
||||
factories.ExporterModules[debugexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/debugexporter v0.131.0"
|
||||
factories.ExporterModules[nopexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/nopexporter v0.131.0"
|
||||
factories.ExporterModules[otlpexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/otlpexporter v0.131.0"
|
||||
factories.ExporterModules[otlphttpexporter.NewFactory().Type()] = "go.opentelemetry.io/collector/exporter/otlphttpexporter v0.131.0"
|
||||
|
||||
factories.Processors, err = otelcol.MakeFactoryMap[processor.Factory](
|
||||
batchprocessor.NewFactory(),
|
||||
|
@ -72,8 +72,8 @@ func components() (otelcol.Factories, error) {
|
|||
return otelcol.Factories{}, err
|
||||
}
|
||||
factories.ProcessorModules = make(map[component.Type]string, len(factories.Processors))
|
||||
factories.ProcessorModules[batchprocessor.NewFactory().Type()] = "go.opentelemetry.io/collector/processor/batchprocessor v0.130.1"
|
||||
factories.ProcessorModules[memorylimiterprocessor.NewFactory().Type()] = "go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.130.1"
|
||||
factories.ProcessorModules[batchprocessor.NewFactory().Type()] = "go.opentelemetry.io/collector/processor/batchprocessor v0.131.0"
|
||||
factories.ProcessorModules[memorylimiterprocessor.NewFactory().Type()] = "go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.131.0"
|
||||
|
||||
factories.Connectors, err = otelcol.MakeFactoryMap[connector.Factory](
|
||||
forwardconnector.NewFactory(),
|
||||
|
@ -82,7 +82,7 @@ func components() (otelcol.Factories, error) {
|
|||
return otelcol.Factories{}, err
|
||||
}
|
||||
factories.ConnectorModules = make(map[component.Type]string, len(factories.Connectors))
|
||||
factories.ConnectorModules[forwardconnector.NewFactory().Type()] = "go.opentelemetry.io/collector/connector/forwardconnector v0.130.1"
|
||||
factories.ConnectorModules[forwardconnector.NewFactory().Type()] = "go.opentelemetry.io/collector/connector/forwardconnector v0.131.0"
|
||||
|
||||
return factories, nil
|
||||
}
|
||||
|
|
|
@ -4,39 +4,39 @@ module go.opentelemetry.io/collector/cmd/otelcorecol
|
|||
|
||||
go 1.23.0
|
||||
|
||||
toolchain go1.23.10
|
||||
toolchain go1.23.11
|
||||
|
||||
require (
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/confmap v1.36.1
|
||||
go.opentelemetry.io/collector/confmap/provider/envprovider v1.36.1
|
||||
go.opentelemetry.io/collector/confmap/provider/fileprovider v1.36.1
|
||||
go.opentelemetry.io/collector/confmap/provider/httpprovider v1.36.1
|
||||
go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.36.1
|
||||
go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.36.1
|
||||
go.opentelemetry.io/collector/connector v0.130.1
|
||||
go.opentelemetry.io/collector/connector/forwardconnector v0.130.1
|
||||
go.opentelemetry.io/collector/exporter v0.130.1
|
||||
go.opentelemetry.io/collector/exporter/debugexporter v0.130.1
|
||||
go.opentelemetry.io/collector/exporter/nopexporter v0.130.1
|
||||
go.opentelemetry.io/collector/exporter/otlpexporter v0.130.1
|
||||
go.opentelemetry.io/collector/exporter/otlphttpexporter v0.130.1
|
||||
go.opentelemetry.io/collector/extension v1.36.1
|
||||
go.opentelemetry.io/collector/extension/memorylimiterextension v0.130.1
|
||||
go.opentelemetry.io/collector/extension/zpagesextension v0.130.1
|
||||
go.opentelemetry.io/collector/otelcol v0.130.1
|
||||
go.opentelemetry.io/collector/processor v1.36.1
|
||||
go.opentelemetry.io/collector/processor/batchprocessor v0.130.1
|
||||
go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.130.1
|
||||
go.opentelemetry.io/collector/receiver v1.36.1
|
||||
go.opentelemetry.io/collector/receiver/nopreceiver v0.130.1
|
||||
go.opentelemetry.io/collector/receiver/otlpreceiver v0.130.1
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/confmap v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/provider/envprovider v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/provider/fileprovider v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/provider/httpprovider v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.37.0
|
||||
go.opentelemetry.io/collector/connector v0.131.0
|
||||
go.opentelemetry.io/collector/connector/forwardconnector v0.131.0
|
||||
go.opentelemetry.io/collector/exporter v0.131.0
|
||||
go.opentelemetry.io/collector/exporter/debugexporter v0.131.0
|
||||
go.opentelemetry.io/collector/exporter/nopexporter v0.131.0
|
||||
go.opentelemetry.io/collector/exporter/otlpexporter v0.131.0
|
||||
go.opentelemetry.io/collector/exporter/otlphttpexporter v0.131.0
|
||||
go.opentelemetry.io/collector/extension v1.37.0
|
||||
go.opentelemetry.io/collector/extension/memorylimiterextension v0.131.0
|
||||
go.opentelemetry.io/collector/extension/zpagesextension v0.131.0
|
||||
go.opentelemetry.io/collector/otelcol v0.131.0
|
||||
go.opentelemetry.io/collector/processor v1.37.0
|
||||
go.opentelemetry.io/collector/processor/batchprocessor v0.131.0
|
||||
go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.131.0
|
||||
go.opentelemetry.io/collector/receiver v1.37.0
|
||||
go.opentelemetry.io/collector/receiver/nopreceiver v0.131.0
|
||||
go.opentelemetry.io/collector/receiver/otlpreceiver v0.131.0
|
||||
golang.org/x/sys v0.34.0
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/beorn7/perks v1.0.1 // indirect
|
||||
github.com/cenkalti/backoff/v5 v5.0.2 // indirect
|
||||
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
|
||||
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/ebitengine/purego v0.8.4 // indirect
|
||||
|
@ -46,13 +46,12 @@ require (
|
|||
github.com/go-logr/logr v1.4.3 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-ole/go-ole v1.2.6 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/golang/snappy v1.0.0 // indirect
|
||||
github.com/google/go-tpm v0.9.5 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc // indirect
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.1 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
|
@ -60,12 +59,12 @@ require (
|
|||
github.com/klauspost/compress v1.18.0 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.1 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.2 // indirect
|
||||
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect
|
||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.2 // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/mostynb/go-grpc-compression v1.2.3 // indirect
|
||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
||||
github.com/pierrec/lz4/v4 v4.1.22 // indirect
|
||||
|
@ -74,7 +73,6 @@ require (
|
|||
github.com/prometheus/client_golang v1.22.0 // indirect
|
||||
github.com/prometheus/client_model v0.6.2 // indirect
|
||||
github.com/prometheus/common v0.65.0 // indirect
|
||||
github.com/prometheus/otlptranslator v0.0.0-20250717125610-8549f4ab4f8f // indirect
|
||||
github.com/prometheus/procfs v0.17.0 // indirect
|
||||
github.com/rs/cors v1.11.1 // indirect
|
||||
github.com/shirou/gopsutil/v4 v4.25.6 // indirect
|
||||
|
@ -85,62 +83,62 @@ require (
|
|||
github.com/tklauser/numcpus v0.6.1 // indirect
|
||||
github.com/yusufpapurcu/wmi v1.2.4 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/client v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/component/componentstatus v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/component/componenttest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configauth v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configcompression v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configgrpc v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/confighttp v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/confignet v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configopaque v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configoptional v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configretry v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configtelemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configtls v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/confmap/xconfmap v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/connector/connectortest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/connector/xconnector v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumererror v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumererror/xconsumererror v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumertest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/consumer/xconsumer v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/exporter/exporterhelper/xexporterhelper v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/exporter/exportertest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/exporter/xexporter v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensioncapabilities v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensiontest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/xextension v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/fanoutconsumer v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/memorylimiter v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/sharedcomponent v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata/pprofile v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata/testdata v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata/xpdata v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pipeline v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pipeline/xpipeline v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/processor/processorhelper v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/processor/processorhelper/xprocessorhelper v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/processor/processortest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/processor/xprocessor v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/receiver/receiverhelper v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/receiver/receivertest v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/receiver/xreceiver v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/service v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/service/hostcapabilities v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/client v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/component/componentstatus v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/component/componenttest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configauth v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configcompression v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configgrpc v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/confighttp v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/confignet v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configopaque v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configoptional v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configretry v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configtelemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configtls v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/confmap/xconfmap v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/connector/connectortest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/connector/xconnector v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumererror v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumererror/xconsumererror v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer/consumertest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/consumer/xconsumer v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/exporter/exporterhelper/xexporterhelper v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/exporter/exportertest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/exporter/xexporter v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensioncapabilities v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensiontest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/xextension v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/fanoutconsumer v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/memorylimiter v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/sharedcomponent v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata/pprofile v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata/testdata v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata/xpdata v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pipeline v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pipeline/xpipeline v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/processor/processorhelper v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/processor/processorhelper/xprocessorhelper v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/processor/processortest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/processor/xprocessor v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/receiver/receiverhelper v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/receiver/receivertest v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/receiver/xreceiver v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/service v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/service/hostcapabilities v0.131.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.62.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0 // indirect
|
||||
go.opentelemetry.io/contrib/otelconf v0.17.0 // indirect
|
||||
go.opentelemetry.io/contrib/propagators/b3 v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/otelconf v0.16.0 // indirect
|
||||
go.opentelemetry.io/contrib/propagators/b3 v1.36.0 // indirect
|
||||
go.opentelemetry.io/contrib/zpages v0.62.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.13.0 // indirect
|
||||
|
@ -150,7 +148,7 @@ require (
|
|||
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/prometheus v0.59.1 // indirect
|
||||
go.opentelemetry.io/otel/exporters/prometheus v0.58.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.13.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.37.0 // indirect
|
||||
|
@ -164,14 +162,14 @@ require (
|
|||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
||||
golang.org/x/crypto v0.39.0 // indirect
|
||||
golang.org/x/crypto v0.40.0 // indirect
|
||||
golang.org/x/exp v0.0.0-20240506185415-9bf2ced13842 // indirect
|
||||
golang.org/x/net v0.41.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
golang.org/x/net v0.42.0 // indirect
|
||||
golang.org/x/text v0.27.0 // indirect
|
||||
gonum.org/v1/gonum v0.16.0 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250603155806-513f23925822 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
sigs.k8s.io/yaml v1.5.0 // indirect
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
||||
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
||||
github.com/cenkalti/backoff/v5 v5.0.2 h1:rIfFVxEf1QsI7E1ZHfp/B4DF/6QBAUhmgkxc0H7Zss8=
|
||||
github.com/cenkalti/backoff/v5 v5.0.2/go.mod h1:rkhZdG3JZukswDf7f0cwqPNk4K0sa+F97BxZthm/crw=
|
||||
github.com/cenkalti/backoff/v5 v5.0.3 h1:ZN+IMa753KfX5hd8vVaMixjnqRZ3y8CuJKRKj1xcsSM=
|
||||
github.com/cenkalti/backoff/v5 v5.0.3/go.mod h1:rkhZdG3JZukswDf7f0cwqPNk4K0sa+F97BxZthm/crw=
|
||||
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
|
||||
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
|
||||
|
@ -25,8 +25,8 @@ github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
|||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY=
|
||||
github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
|
@ -45,8 +45,6 @@ github.com/google/go-tpm-tools v0.4.4/go.mod h1:T8jXkp2s+eltnCDIsXR84/MTcVU9Ja7b
|
|||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc h1:GN2Lv3MGO7AS6PrRoT6yV5+wkrOpcszoIsO4+4ds248=
|
||||
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc/go.mod h1:+JKpmjMGhpgPL+rXZ5nsZieVzvarn86asRlBg4uNGnk=
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.1 h1:X5VWvz21y3gzm9Nw/kaUeku/1+uBhcekkmy4IkffJww=
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.1/go.mod h1:Zanoh4+gvIgluNqcfMVTJueD4wSS5hT7zTt4Mrutd90=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
|
@ -63,8 +61,8 @@ github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpb
|
|||
github.com/knadh/koanf/maps v0.1.2/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 h1:mHKLJTE7iXEys6deO5p6olAiZdG5zwp8Aebir+/EaRE=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0/go.mod h1:txHYHiI2hAtF0/0sCmcuol4IDcuQbKTybiB1nOcUo1A=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
|
@ -80,8 +78,9 @@ github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx
|
|||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/mostynb/go-grpc-compression v1.2.3 h1:42/BKWMy0KEJGSdWvzqIyOZ95YcR9mLPqKctH7Uo//I=
|
||||
github.com/mostynb/go-grpc-compression v1.2.3/go.mod h1:AghIxF3P57umzqM9yz795+y1Vjs47Km/Y2FE6ouQ7Lg=
|
||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
|
||||
|
@ -98,8 +97,6 @@ github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNw
|
|||
github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
|
||||
github.com/prometheus/common v0.65.0 h1:QDwzd+G1twt//Kwj/Ww6E9FQq1iVMmODnILtW1t2VzE=
|
||||
github.com/prometheus/common v0.65.0/go.mod h1:0gZns+BLRQ3V6NdaerOhMbwwRbNh9hkGINtQAsP5GS8=
|
||||
github.com/prometheus/otlptranslator v0.0.0-20250717125610-8549f4ab4f8f h1:QQB6SuvGZjK8kdc2YaLJpYhV8fxauOsjE6jgcL6YJ8Q=
|
||||
github.com/prometheus/otlptranslator v0.0.0-20250717125610-8549f4ab4f8f/go.mod h1:P8AwMgdD7XEr6QRUJ2QWLpiAZTgTE2UYgjlu3svompI=
|
||||
github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
|
||||
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
|
@ -133,10 +130,10 @@ go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.6
|
|||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.62.0/go.mod h1:ru6KHrNtNHxM4nD/vd6QrLVWgKhxPYgblq4VAtNawTQ=
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0 h1:Hf9xI/XLML9ElpiHVDNwvqI0hIFlzV8dgIr35kV1kRU=
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0/go.mod h1:NfchwuyNoMcZ5MLHwPrODwUF1HWCXWrL31s8gSAdIKY=
|
||||
go.opentelemetry.io/contrib/otelconf v0.17.0 h1:Yh9uifPSe8yiksLshMbeAXGm/ZRmo7LD7Di+/yd1L5w=
|
||||
go.opentelemetry.io/contrib/otelconf v0.17.0/go.mod h1:8dHKS6uMiZlvmrA7MGUtb4HwnX+ukdF5iS3p2UPKvLE=
|
||||
go.opentelemetry.io/contrib/propagators/b3 v1.37.0 h1:0aGKdIuVhy5l4GClAjl72ntkZJhijf2wg1S7b5oLoYA=
|
||||
go.opentelemetry.io/contrib/propagators/b3 v1.37.0/go.mod h1:nhyrxEJEOQdwR15zXrCKI6+cJK60PXAkJ/jRyfhr2mg=
|
||||
go.opentelemetry.io/contrib/otelconf v0.16.0 h1:mTYGRlZtpc/zDaTaUQSnsZ1hyoRONaS4Od/Ny5++lhE=
|
||||
go.opentelemetry.io/contrib/otelconf v0.16.0/go.mod h1:gnsljuyDyVDg39vUvXKj0BVCiVaokN3b8N5BL/ab8fQ=
|
||||
go.opentelemetry.io/contrib/propagators/b3 v1.36.0 h1:xrAb/G80z/l5JL6XlmUMSD1i6W8vXkWrLfmkD3w/zZo=
|
||||
go.opentelemetry.io/contrib/propagators/b3 v1.36.0/go.mod h1:UREJtqioFu5awNaCR8aEx7MfJROFlAWb6lPaJFbHaG0=
|
||||
go.opentelemetry.io/contrib/zpages v0.62.0 h1:9fUYTLmrK0x/lweM2uM+BOx069jLx8PxVqWhegGJ9Bo=
|
||||
go.opentelemetry.io/contrib/zpages v0.62.0/go.mod h1:C8kXoiC1Ytvereztus2R+kqdSa6W/MZ8FfS8Zwj+LiM=
|
||||
go.opentelemetry.io/otel v1.37.0 h1:9zhNfelUvx0KBfu/gb+ZgeAfAgtWrfHJZcAqFC228wQ=
|
||||
|
@ -155,8 +152,8 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.37.0 h1:EtFWS
|
|||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.37.0/go.mod h1:QjUEoiGCPkvFZ/MjK6ZZfNOS6mfVEVKYE99dFhuN2LI=
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.37.0 h1:bDMKF3RUSxshZ5OjOTi8rsHGaPKsAt76FaqgvIUySLc=
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.37.0/go.mod h1:dDT67G/IkA46Mr2l9Uj7HsQVwsjASyV9SjGofsiUZDA=
|
||||
go.opentelemetry.io/otel/exporters/prometheus v0.59.1 h1:HcpSkTkJbggT8bjYP+BjyqPWlD17BH9C5CYNKeDzmcA=
|
||||
go.opentelemetry.io/otel/exporters/prometheus v0.59.1/go.mod h1:0FJL+gjuUoM07xzik3KPBaN+nz/CoB15kV6WLMiXZag=
|
||||
go.opentelemetry.io/otel/exporters/prometheus v0.58.0 h1:CJAxWKFIqdBennqxJyOgnt5LqkeFRT+Mz3Yjz3hL+h8=
|
||||
go.opentelemetry.io/otel/exporters/prometheus v0.58.0/go.mod h1:7qo/4CLI+zYSNbv0GMNquzuss2FVZo3OYrGh96n4HNc=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.13.0 h1:yEX3aC9KDgvYPhuKECHbOlr5GLwH6KTjLJ1sBSkkxkc=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.13.0/go.mod h1:/GXR0tBmmkxDaCUGahvksvp66mx4yh5+cFXgSlhg0vQ=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.37.0 h1:6VjV6Et+1Hd2iLZEPtdV7vie80Yyqf7oikJLjQ/myi0=
|
||||
|
@ -192,8 +189,8 @@ go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
|
|||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.39.0 h1:SHs+kF4LP+f+p14esP5jAoDpHU8Gu/v9lFRK6IT5imM=
|
||||
golang.org/x/crypto v0.39.0/go.mod h1:L+Xg3Wf6HoL4Bn4238Z6ft6KfEpN0tJGo53AAPC632U=
|
||||
golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM=
|
||||
golang.org/x/crypto v0.40.0/go.mod h1:Qr1vMER5WyS2dfPHAlsOj01wgLbsyWtFn/aY+5+ZdxY=
|
||||
golang.org/x/exp v0.0.0-20240506185415-9bf2ced13842 h1:vr/HnozRka3pE4EsMEg1lgkXJkTFJCVUX+S/ZT6wYzM=
|
||||
golang.org/x/exp v0.0.0-20240506185415-9bf2ced13842/go.mod h1:XtvwrStGgqGPLc4cjQfWqZHG1YFdYs6swckp8vpsjnc=
|
||||
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
|
@ -202,8 +199,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/net v0.42.0 h1:jzkYrhi3YQWD6MLBJcsklgQsoAcw89EcZbJw8Z614hs=
|
||||
golang.org/x/net v0.42.0/go.mod h1:FF1RA5d3u7nAYA4z2TkclSCKh68eSXtiFwcWQpPXdt8=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -218,8 +215,8 @@ golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA=
|
|||
golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M=
|
||||
golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA=
|
||||
golang.org/x/text v0.27.0 h1:4fGWRpyh641NLlecmyl4LOe6yDdfaYNrGb2zdfo4JV4=
|
||||
golang.org/x/text v0.27.0/go.mod h1:1D28KMCvyooCX9hBiosv5Tz/+YLxj0j7XhWjpSUF7CU=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -234,8 +231,8 @@ google.golang.org/genproto/googleapis/api v0.0.0-20250603155806-513f23925822 h1:
|
|||
google.golang.org/genproto/googleapis/api v0.0.0-20250603155806-513f23925822/go.mod h1:h3c4v36UTKzUiuaOKQ6gr3S+0hovBtUrXzTG/i3+XEc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822 h1:fc6jSaCT0vBduLYZHYrBBNY4dsWuvgyff9noRNDdBeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -20,7 +20,7 @@ func main() {
|
|||
info := component.BuildInfo{
|
||||
Command: "otelcorecol",
|
||||
Description: "Local OpenTelemetry Collector binary, testing only.",
|
||||
Version: "0.130.1-dev",
|
||||
Version: "0.131.0-dev",
|
||||
}
|
||||
|
||||
set := otelcol.CollectorSettings{
|
||||
|
@ -38,11 +38,11 @@ func main() {
|
|||
},
|
||||
},
|
||||
ProviderModules: map[string]string{
|
||||
envprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/envprovider v1.36.1",
|
||||
fileprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/fileprovider v1.36.1",
|
||||
httpprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/httpprovider v1.36.1",
|
||||
httpsprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.36.1",
|
||||
yamlprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.36.1",
|
||||
envprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/envprovider v1.37.0",
|
||||
fileprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/fileprovider v1.37.0",
|
||||
httpprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/httpprovider v1.37.0",
|
||||
httpsprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.37.0",
|
||||
yamlprovider.NewFactory().Create(confmap.ProviderSettings{}).Scheme(): "go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.37.0",
|
||||
},
|
||||
ConverterModules: []string{},
|
||||
}
|
||||
|
|
|
@ -4,8 +4,8 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/pipeline v0.130.1
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/pipeline v0.131.0
|
||||
)
|
||||
|
||||
require (
|
||||
|
@ -15,11 +15,14 @@ require (
|
|||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
|
@ -28,11 +31,11 @@ require (
|
|||
go.opentelemetry.io/otel/trace v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.24.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
|
@ -11,20 +12,31 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
|
|||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -62,8 +74,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -74,8 +86,8 @@ golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
|||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
|
||||
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -84,10 +96,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -106,8 +106,8 @@ func Test_ReportStatus(t *testing.T) {
|
|||
}
|
||||
|
||||
var (
|
||||
_ = (component.Host)(nil)
|
||||
_ = (Reporter)(nil)
|
||||
_ = component.Host(nil)
|
||||
_ = Reporter(nil)
|
||||
)
|
||||
|
||||
type reporter struct {
|
||||
|
@ -122,7 +122,7 @@ func (r *reporter) Report(_ *Event) {
|
|||
r.reportStatusCalled = true
|
||||
}
|
||||
|
||||
var _ = (component.Host)(nil)
|
||||
var _ = component.Host(nil)
|
||||
|
||||
type host struct {
|
||||
reportStatusCalled bool
|
||||
|
|
|
@ -4,8 +4,8 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/pdata v1.36.1
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/pdata v1.37.0
|
||||
go.opentelemetry.io/otel/metric v1.37.0
|
||||
go.opentelemetry.io/otel/sdk v1.37.0
|
||||
go.opentelemetry.io/otel/sdk/metric v1.37.0
|
||||
|
@ -22,18 +22,21 @@ require (
|
|||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.24.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
|
@ -11,20 +12,31 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
|
|||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -62,8 +74,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -74,8 +86,8 @@ golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
|||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
|
||||
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -84,10 +96,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -4,7 +4,7 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
)
|
||||
|
||||
|
@ -15,10 +15,13 @@ require (
|
|||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
|
@ -27,11 +30,11 @@ require (
|
|||
go.opentelemetry.io/otel/trace v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.24.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
|
@ -11,20 +12,31 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
|
|||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -62,8 +74,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -74,8 +86,8 @@ golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
|||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
|
||||
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -84,10 +96,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
package component // import "go.opentelemetry.io/collector/component"
|
||||
|
||||
import (
|
||||
"encoding"
|
||||
"errors"
|
||||
"fmt"
|
||||
"regexp"
|
||||
|
@ -49,7 +50,7 @@ func (t Type) MarshalText() ([]byte, error) {
|
|||
// - start with an ASCII alphabetic character and
|
||||
// - can only contain ASCII alphanumeric characters and '_'.
|
||||
func NewType(ty string) (Type, error) {
|
||||
if len(ty) == 0 {
|
||||
if ty == "" {
|
||||
return Type{}, errors.New("id must not be empty")
|
||||
}
|
||||
if !typeRegexp.MatchString(ty) {
|
||||
|
@ -71,6 +72,12 @@ func MustNewType(strType string) Type {
|
|||
return ty
|
||||
}
|
||||
|
||||
var (
|
||||
_ fmt.Stringer = ID{}
|
||||
_ encoding.TextMarshaler = ID{}
|
||||
_ encoding.TextUnmarshaler = (*ID)(nil)
|
||||
)
|
||||
|
||||
// ID represents the identity for a component. It combines two values:
|
||||
// * type - the Type of the component.
|
||||
// * name - the name of that component.
|
||||
|
@ -100,7 +107,7 @@ func NewIDWithName(typeVal Type, nameVal string) ID {
|
|||
// MustNewIDWithName builds a Type and returns a new ID with the given Type and name.
|
||||
// This is equivalent to NewIDWithName(MustNewType(typeVal), nameVal).
|
||||
// See MustNewType to check the valid values of typeVal.
|
||||
func MustNewIDWithName(typeVal string, nameVal string) ID {
|
||||
func MustNewIDWithName(typeVal, nameVal string) ID {
|
||||
return NewIDWithName(MustNewType(typeVal), nameVal)
|
||||
}
|
||||
|
||||
|
@ -116,7 +123,7 @@ func (id ID) Name() string {
|
|||
|
||||
// MarshalText implements the encoding.TextMarshaler interface.
|
||||
// This marshals the type and name as one string in the config.
|
||||
func (id ID) MarshalText() (text []byte, err error) {
|
||||
func (id ID) MarshalText() ([]byte, error) {
|
||||
return []byte(id.String()), nil
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,64 @@
|
|||
// Copyright The OpenTelemetry Authors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
package component_test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"go.opentelemetry.io/collector/component"
|
||||
)
|
||||
|
||||
func ExampleNewType() {
|
||||
t, err := component.NewType("exampleexporter")
|
||||
if err != nil {
|
||||
fmt.Println("error:", err)
|
||||
return
|
||||
}
|
||||
fmt.Println(t.String())
|
||||
|
||||
// Output:
|
||||
// exampleexporter
|
||||
}
|
||||
|
||||
func ExampleMustNewType() {
|
||||
t := component.MustNewType("examplereceiver")
|
||||
fmt.Println(t.String())
|
||||
|
||||
// Output:
|
||||
// examplereceiver
|
||||
}
|
||||
|
||||
func ExampleNewID() {
|
||||
t := component.MustNewType("exampleprocessor")
|
||||
id := component.NewID(t)
|
||||
fmt.Println(id.String())
|
||||
|
||||
// Output:
|
||||
// exampleprocessor
|
||||
}
|
||||
|
||||
func ExampleMustNewID() {
|
||||
id := component.MustNewID("examplereceiver")
|
||||
fmt.Println(id.String())
|
||||
|
||||
// Output:
|
||||
// examplereceiver
|
||||
}
|
||||
|
||||
func ExampleNewIDWithName() {
|
||||
t := component.MustNewType("exampleexporter")
|
||||
id := component.NewIDWithName(t, "customname")
|
||||
fmt.Println(id.String())
|
||||
|
||||
// Output:
|
||||
// exampleexporter/customname
|
||||
}
|
||||
|
||||
func ExampleMustNewIDWithName() {
|
||||
id := component.MustNewIDWithName("exampleprocessor", "customproc")
|
||||
fmt.Println(id.String())
|
||||
|
||||
// Output:
|
||||
// exampleprocessor/customproc
|
||||
}
|
|
@ -4,10 +4,10 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/extension v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.130.1
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/extension v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.131.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
)
|
||||
|
||||
|
@ -18,11 +18,14 @@ require (
|
|||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
|
@ -31,11 +34,11 @@ require (
|
|||
go.opentelemetry.io/otel/trace v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.24.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
|
@ -11,20 +12,31 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
|
|||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -62,8 +74,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -74,8 +86,8 @@ golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
|||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
|
||||
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -84,10 +96,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -112,10 +112,6 @@ type ClientConfig struct {
|
|||
Middlewares []configmiddleware.Config `mapstructure:"middlewares,omitempty"`
|
||||
}
|
||||
|
||||
func ptr[T any](v T) *T {
|
||||
return &v
|
||||
}
|
||||
|
||||
// NewDefaultClientConfig returns a new instance of ClientConfig with default values.
|
||||
func NewDefaultClientConfig() ClientConfig {
|
||||
return ClientConfig{
|
||||
|
@ -127,8 +123,8 @@ func NewDefaultClientConfig() ClientConfig {
|
|||
|
||||
// KeepaliveServerConfig is the configuration for keepalive.
|
||||
type KeepaliveServerConfig struct {
|
||||
ServerParameters *KeepaliveServerParameters `mapstructure:"server_parameters,omitempty"`
|
||||
EnforcementPolicy *KeepaliveEnforcementPolicy `mapstructure:"enforcement_policy,omitempty"`
|
||||
ServerParameters configoptional.Optional[KeepaliveServerParameters] `mapstructure:"server_parameters,omitempty"`
|
||||
EnforcementPolicy configoptional.Optional[KeepaliveEnforcementPolicy] `mapstructure:"enforcement_policy,omitempty"`
|
||||
// prevent unkeyed literal initialization
|
||||
_ struct{}
|
||||
}
|
||||
|
@ -136,8 +132,8 @@ type KeepaliveServerConfig struct {
|
|||
// NewDefaultKeepaliveServerConfig returns a new instance of KeepaliveServerConfig with default values.
|
||||
func NewDefaultKeepaliveServerConfig() KeepaliveServerConfig {
|
||||
return KeepaliveServerConfig{
|
||||
ServerParameters: ptr(NewDefaultKeepaliveServerParameters()),
|
||||
EnforcementPolicy: ptr(NewDefaultKeepaliveEnforcementPolicy()),
|
||||
ServerParameters: configoptional.Some(NewDefaultKeepaliveServerParameters()),
|
||||
EnforcementPolicy: configoptional.Some(NewDefaultKeepaliveEnforcementPolicy()),
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -289,8 +285,7 @@ func (gcs *ClientConfig) addHeadersIfAbsent(ctx context.Context) context.Context
|
|||
existingMd, _ := metadata.FromOutgoingContext(ctx)
|
||||
for k, v := range gcs.Headers {
|
||||
if len(existingMd.Get(k)) == 0 {
|
||||
kv = append(kv, k)
|
||||
kv = append(kv, string(v))
|
||||
kv = append(kv, k, string(v))
|
||||
}
|
||||
}
|
||||
return metadata.AppendToOutgoingContext(ctx, kv...)
|
||||
|
@ -359,7 +354,7 @@ func (gcs *ClientConfig) getGrpcDialOptions(
|
|||
}
|
||||
|
||||
if gcs.BalancerName != "" {
|
||||
opts = append(opts, grpc.WithDefaultServiceConfig(fmt.Sprintf(`{"loadBalancingPolicy":"%s"}`, gcs.BalancerName)))
|
||||
opts = append(opts, grpc.WithDefaultServiceConfig(fmt.Sprintf(`{"loadBalancingPolicy":%q}`, gcs.BalancerName)))
|
||||
}
|
||||
|
||||
if gcs.Authority != "" {
|
||||
|
@ -487,8 +482,8 @@ func (gss *ServerConfig) getGrpcServerOptions(
|
|||
// https://github.com/grpc/grpc-go/blob/120728e1f775e40a2a764341939b78d666b08260/internal/transport/http2_server.go#L184-L200
|
||||
if gss.Keepalive.HasValue() {
|
||||
keepaliveConfig := gss.Keepalive.Get()
|
||||
if keepaliveConfig.ServerParameters != nil {
|
||||
svrParams := keepaliveConfig.ServerParameters
|
||||
if keepaliveConfig.ServerParameters.HasValue() {
|
||||
svrParams := keepaliveConfig.ServerParameters.Get()
|
||||
opts = append(opts, grpc.KeepaliveParams(keepalive.ServerParameters{
|
||||
MaxConnectionIdle: svrParams.MaxConnectionIdle,
|
||||
MaxConnectionAge: svrParams.MaxConnectionAge,
|
||||
|
@ -501,8 +496,8 @@ func (gss *ServerConfig) getGrpcServerOptions(
|
|||
// to apply them over zero/nil values before passing these as grpc.ServerOptions.
|
||||
// The following shows the server code for applying default grpc.ServerOptions.
|
||||
// https://github.com/grpc/grpc-go/blob/120728e1f775e40a2a764341939b78d666b08260/internal/transport/http2_server.go#L202-L205
|
||||
if keepaliveConfig.EnforcementPolicy != nil {
|
||||
enfPol := keepaliveConfig.EnforcementPolicy
|
||||
if keepaliveConfig.EnforcementPolicy.HasValue() {
|
||||
enfPol := keepaliveConfig.EnforcementPolicy.Get()
|
||||
opts = append(opts, grpc.KeepaliveEnforcementPolicy(keepalive.EnforcementPolicy{
|
||||
MinTime: enfPol.MinTime,
|
||||
PermitWithoutStream: enfPol.PermitWithoutStream,
|
||||
|
@ -519,12 +514,8 @@ func (gss *ServerConfig) getGrpcServerOptions(
|
|||
return nil, err
|
||||
}
|
||||
|
||||
uInterceptors = append(uInterceptors, func(ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (resp any, err error) {
|
||||
return authUnaryServerInterceptor(ctx, req, info, handler, authenticator)
|
||||
})
|
||||
sInterceptors = append(sInterceptors, func(srv any, ss grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error {
|
||||
return authStreamServerInterceptor(srv, ss, info, handler, authenticator)
|
||||
})
|
||||
uInterceptors = append(uInterceptors, authUnaryServerInterceptor(authenticator))
|
||||
sInterceptors = append(sInterceptors, authStreamServerInterceptor(authenticator))
|
||||
}
|
||||
|
||||
otelOpts := []otelgrpc.Option{
|
||||
|
@ -574,13 +565,13 @@ func getGRPCCompressionName(compressionType configcompression.Type) (string, err
|
|||
|
||||
// enhanceWithClientInformation intercepts the incoming RPC, replacing the incoming context with one that includes
|
||||
// a client.Info, potentially with the peer's address.
|
||||
func enhanceWithClientInformation(includeMetadata bool) func(ctx context.Context, req any, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
|
||||
func enhanceWithClientInformation(includeMetadata bool) grpc.UnaryServerInterceptor {
|
||||
return func(ctx context.Context, req any, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
|
||||
return handler(contextWithClient(ctx, includeMetadata), req)
|
||||
}
|
||||
}
|
||||
|
||||
func enhanceStreamWithClientInformation(includeMetadata bool) func(srv any, ss grpc.ServerStream, _ *grpc.StreamServerInfo, handler grpc.StreamHandler) error {
|
||||
func enhanceStreamWithClientInformation(includeMetadata bool) grpc.StreamServerInterceptor {
|
||||
return func(srv any, ss grpc.ServerStream, _ *grpc.StreamServerInfo, handler grpc.StreamHandler) error {
|
||||
return handler(srv, wrapServerStream(contextWithClient(ss.Context(), includeMetadata), ss))
|
||||
}
|
||||
|
@ -605,31 +596,35 @@ func contextWithClient(ctx context.Context, includeMetadata bool) context.Contex
|
|||
return client.NewContext(ctx, cl)
|
||||
}
|
||||
|
||||
func authUnaryServerInterceptor(ctx context.Context, req any, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler, server extensionauth.Server) (any, error) {
|
||||
headers, ok := metadata.FromIncomingContext(ctx)
|
||||
if !ok {
|
||||
return nil, errMetadataNotFound
|
||||
}
|
||||
func authUnaryServerInterceptor(server extensionauth.Server) grpc.UnaryServerInterceptor {
|
||||
return func(ctx context.Context, req any, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
|
||||
headers, ok := metadata.FromIncomingContext(ctx)
|
||||
if !ok {
|
||||
return nil, errMetadataNotFound
|
||||
}
|
||||
|
||||
ctx, err := server.Authenticate(ctx, headers)
|
||||
if err != nil {
|
||||
return nil, status.Error(codes.Unauthenticated, err.Error())
|
||||
}
|
||||
ctx, err := server.Authenticate(ctx, headers)
|
||||
if err != nil {
|
||||
return nil, status.Error(codes.Unauthenticated, err.Error())
|
||||
}
|
||||
|
||||
return handler(ctx, req)
|
||||
return handler(ctx, req)
|
||||
}
|
||||
}
|
||||
|
||||
func authStreamServerInterceptor(srv any, stream grpc.ServerStream, _ *grpc.StreamServerInfo, handler grpc.StreamHandler, server extensionauth.Server) error {
|
||||
ctx := stream.Context()
|
||||
headers, ok := metadata.FromIncomingContext(ctx)
|
||||
if !ok {
|
||||
return errMetadataNotFound
|
||||
}
|
||||
func authStreamServerInterceptor(server extensionauth.Server) grpc.StreamServerInterceptor {
|
||||
return func(srv any, stream grpc.ServerStream, _ *grpc.StreamServerInfo, handler grpc.StreamHandler) error {
|
||||
ctx := stream.Context()
|
||||
headers, ok := metadata.FromIncomingContext(ctx)
|
||||
if !ok {
|
||||
return errMetadataNotFound
|
||||
}
|
||||
|
||||
ctx, err := server.Authenticate(ctx, headers)
|
||||
if err != nil {
|
||||
return status.Error(codes.Unauthenticated, err.Error())
|
||||
}
|
||||
ctx, err := server.Authenticate(ctx, headers)
|
||||
if err != nil {
|
||||
return status.Error(codes.Unauthenticated, err.Error())
|
||||
}
|
||||
|
||||
return handler(srv, wrapServerStream(ctx, stream))
|
||||
return handler(srv, wrapServerStream(ctx, stream))
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,9 +27,10 @@ func BenchmarkCompressors(b *testing.B) {
|
|||
payloads := setupTestPayloads()
|
||||
|
||||
compressors := make([]encoding.Compressor, 0)
|
||||
compressors = append(compressors, encoding.GetCompressor(gzip.Name))
|
||||
compressors = append(compressors, encoding.GetCompressor(zstd.Name))
|
||||
compressors = append(compressors, encoding.GetCompressor(snappy.Name))
|
||||
compressors = append(compressors,
|
||||
encoding.GetCompressor(gzip.Name),
|
||||
encoding.GetCompressor(zstd.Name),
|
||||
encoding.GetCompressor(snappy.Name))
|
||||
|
||||
for _, payload := range payloads {
|
||||
for _, compressor := range compressors {
|
||||
|
@ -114,57 +115,60 @@ func setupTestPayloads() []testPayload {
|
|||
|
||||
// log payloads
|
||||
logMarshaler := &logMarshaler{Marshaler: &plog.ProtoMarshaler{}}
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "sm_log_request",
|
||||
message: testdata.GenerateLogs(1),
|
||||
marshaler: logMarshaler,
|
||||
})
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "md_log_request",
|
||||
message: testdata.GenerateLogs(2),
|
||||
marshaler: logMarshaler,
|
||||
})
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "lg_log_request",
|
||||
message: testdata.GenerateLogs(50),
|
||||
marshaler: logMarshaler,
|
||||
})
|
||||
payloads = append(payloads,
|
||||
testPayload{
|
||||
name: "sm_log_request",
|
||||
message: testdata.GenerateLogs(1),
|
||||
marshaler: logMarshaler,
|
||||
},
|
||||
testPayload{
|
||||
name: "md_log_request",
|
||||
message: testdata.GenerateLogs(2),
|
||||
marshaler: logMarshaler,
|
||||
},
|
||||
testPayload{
|
||||
name: "lg_log_request",
|
||||
message: testdata.GenerateLogs(50),
|
||||
marshaler: logMarshaler,
|
||||
})
|
||||
|
||||
// trace payloads
|
||||
tracesMarshaler := &traceMarshaler{Marshaler: &ptrace.ProtoMarshaler{}}
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "sm_trace_request",
|
||||
message: testdata.GenerateTraces(1),
|
||||
marshaler: tracesMarshaler,
|
||||
})
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "md_trace_request",
|
||||
message: testdata.GenerateTraces(2),
|
||||
marshaler: tracesMarshaler,
|
||||
})
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "lg_trace_request",
|
||||
message: testdata.GenerateTraces(50),
|
||||
marshaler: tracesMarshaler,
|
||||
})
|
||||
payloads = append(payloads,
|
||||
testPayload{
|
||||
name: "sm_trace_request",
|
||||
message: testdata.GenerateTraces(1),
|
||||
marshaler: tracesMarshaler,
|
||||
},
|
||||
testPayload{
|
||||
name: "md_trace_request",
|
||||
message: testdata.GenerateTraces(2),
|
||||
marshaler: tracesMarshaler,
|
||||
},
|
||||
testPayload{
|
||||
name: "lg_trace_request",
|
||||
message: testdata.GenerateTraces(50),
|
||||
marshaler: tracesMarshaler,
|
||||
})
|
||||
|
||||
// metric payloads
|
||||
metricsMarshaler := &metricsMarshaler{Marshaler: &pmetric.ProtoMarshaler{}}
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "sm_metric_request",
|
||||
message: testdata.GenerateMetrics(1),
|
||||
marshaler: metricsMarshaler,
|
||||
})
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "md_metric_request",
|
||||
message: testdata.GenerateMetrics(2),
|
||||
marshaler: metricsMarshaler,
|
||||
})
|
||||
payloads = append(payloads, testPayload{
|
||||
name: "lg_metric_request",
|
||||
message: testdata.GenerateMetrics(50),
|
||||
marshaler: metricsMarshaler,
|
||||
})
|
||||
payloads = append(payloads,
|
||||
testPayload{
|
||||
name: "sm_metric_request",
|
||||
message: testdata.GenerateMetrics(1),
|
||||
marshaler: metricsMarshaler,
|
||||
},
|
||||
testPayload{
|
||||
name: "md_metric_request",
|
||||
message: testdata.GenerateMetrics(2),
|
||||
marshaler: metricsMarshaler,
|
||||
},
|
||||
testPayload{
|
||||
name: "lg_metric_request",
|
||||
message: testdata.GenerateMetrics(50),
|
||||
marshaler: metricsMarshaler,
|
||||
})
|
||||
|
||||
return payloads
|
||||
}
|
||||
|
|
|
@ -90,8 +90,8 @@ func TestNewDefaultKeepaliveEnforcementPolicy(t *testing.T) {
|
|||
|
||||
func TestNewDefaultKeepaliveServerConfig(t *testing.T) {
|
||||
expected := KeepaliveServerConfig{
|
||||
ServerParameters: ptr(NewDefaultKeepaliveServerParameters()),
|
||||
EnforcementPolicy: ptr(NewDefaultKeepaliveEnforcementPolicy()),
|
||||
ServerParameters: configoptional.Some(NewDefaultKeepaliveServerParameters()),
|
||||
EnforcementPolicy: configoptional.Some(NewDefaultKeepaliveEnforcementPolicy()),
|
||||
}
|
||||
result := NewDefaultKeepaliveServerConfig()
|
||||
assert.Equal(t, expected, result)
|
||||
|
@ -391,17 +391,17 @@ func TestAllGrpcServerSettingsExceptAuth(t *testing.T) {
|
|||
ReadBufferSize: 1024,
|
||||
WriteBufferSize: 1024,
|
||||
Keepalive: configoptional.Some(KeepaliveServerConfig{
|
||||
ServerParameters: &KeepaliveServerParameters{
|
||||
ServerParameters: configoptional.Some(KeepaliveServerParameters{
|
||||
MaxConnectionIdle: time.Second,
|
||||
MaxConnectionAge: time.Second,
|
||||
MaxConnectionAgeGrace: time.Second,
|
||||
Time: time.Second,
|
||||
Timeout: time.Second,
|
||||
},
|
||||
EnforcementPolicy: &KeepaliveEnforcementPolicy{
|
||||
}),
|
||||
EnforcementPolicy: configoptional.Some(KeepaliveEnforcementPolicy{
|
||||
MinTime: time.Second,
|
||||
PermitWithoutStream: true,
|
||||
},
|
||||
}),
|
||||
}),
|
||||
}
|
||||
opts, err := gss.getGrpcServerOptions(context.Background(), componenttest.NewNopHost(), componenttest.NewNopTelemetrySettings(), []ToServerOption{})
|
||||
|
@ -888,14 +888,16 @@ func TestStreamInterceptorEnhancesClient(t *testing.T) {
|
|||
inCtx := peer.NewContext(context.Background(), &peer.Peer{
|
||||
Addr: &net.IPAddr{IP: net.IPv4(1, 1, 1, 1)},
|
||||
})
|
||||
var outContext context.Context
|
||||
|
||||
stream := &mockedStream{
|
||||
ctx: inCtx,
|
||||
}
|
||||
|
||||
var handlerCalled bool
|
||||
handler := func(_ any, stream grpc.ServerStream) error {
|
||||
outContext = stream.Context()
|
||||
handlerCalled = true
|
||||
cl := client.FromContext(stream.Context())
|
||||
assert.Equal(t, "1.1.1.1", cl.Addr.String())
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@ -904,9 +906,7 @@ func TestStreamInterceptorEnhancesClient(t *testing.T) {
|
|||
|
||||
// verify
|
||||
require.NoError(t, err)
|
||||
|
||||
cl := client.FromContext(outContext)
|
||||
assert.Equal(t, "1.1.1.1", cl.Addr.String())
|
||||
assert.True(t, handlerCalled, "the handler should have been called")
|
||||
}
|
||||
|
||||
type mockedStream struct {
|
||||
|
@ -991,9 +991,10 @@ func TestDefaultUnaryInterceptorAuthSucceeded(t *testing.T) {
|
|||
return nil, nil
|
||||
}
|
||||
ctx := metadata.NewIncomingContext(context.Background(), metadata.Pairs("authorization", "some-auth-data"))
|
||||
interceptor := authUnaryServerInterceptor(newMockAuthServer(authFunc))
|
||||
|
||||
// test
|
||||
res, err := authUnaryServerInterceptor(ctx, nil, &grpc.UnaryServerInfo{}, handler, newMockAuthServer(authFunc))
|
||||
res, err := interceptor(ctx, nil, &grpc.UnaryServerInfo{}, handler)
|
||||
|
||||
// verify
|
||||
assert.Nil(t, res)
|
||||
|
@ -1015,9 +1016,10 @@ func TestDefaultUnaryInterceptorAuthFailure(t *testing.T) {
|
|||
return nil, nil
|
||||
}
|
||||
ctx := metadata.NewIncomingContext(context.Background(), metadata.Pairs("authorization", "some-auth-data"))
|
||||
interceptor := authUnaryServerInterceptor(newMockAuthServer(authFunc))
|
||||
|
||||
// test
|
||||
res, err := authUnaryServerInterceptor(ctx, nil, &grpc.UnaryServerInfo{}, handler, newMockAuthServer(authFunc))
|
||||
res, err := interceptor(ctx, nil, &grpc.UnaryServerInfo{}, handler)
|
||||
|
||||
// verify
|
||||
assert.Nil(t, res)
|
||||
|
@ -1036,9 +1038,10 @@ func TestDefaultUnaryInterceptorMissingMetadata(t *testing.T) {
|
|||
assert.FailNow(t, "the handler should not have been called!")
|
||||
return nil, nil
|
||||
}
|
||||
interceptor := authUnaryServerInterceptor(newMockAuthServer(authFunc))
|
||||
|
||||
// test
|
||||
res, err := authUnaryServerInterceptor(context.Background(), nil, &grpc.UnaryServerInfo{}, handler, newMockAuthServer(authFunc))
|
||||
res, err := interceptor(context.Background(), nil, &grpc.UnaryServerInfo{}, handler)
|
||||
|
||||
// verify
|
||||
assert.Nil(t, res)
|
||||
|
@ -1063,13 +1066,13 @@ func TestDefaultStreamInterceptorAuthSucceeded(t *testing.T) {
|
|||
handlerCalled = true
|
||||
return nil
|
||||
}
|
||||
ctx := metadata.NewIncomingContext(context.Background(), metadata.Pairs("authorization", "some-auth-data"))
|
||||
streamServer := &mockServerStream{
|
||||
ctx: ctx,
|
||||
ctx: metadata.NewIncomingContext(context.Background(), metadata.Pairs("authorization", "some-auth-data")),
|
||||
}
|
||||
interceptor := authStreamServerInterceptor(newMockAuthServer(authFunc))
|
||||
|
||||
// test
|
||||
err := authStreamServerInterceptor(nil, streamServer, &grpc.StreamServerInfo{}, handler, newMockAuthServer(authFunc))
|
||||
err := interceptor(nil, streamServer, &grpc.StreamServerInfo{}, handler)
|
||||
|
||||
// verify
|
||||
require.NoError(t, err)
|
||||
|
@ -1089,13 +1092,13 @@ func TestDefaultStreamInterceptorAuthFailure(t *testing.T) {
|
|||
assert.FailNow(t, "the handler should not have been called on auth failure!")
|
||||
return nil
|
||||
}
|
||||
ctx := metadata.NewIncomingContext(context.Background(), metadata.Pairs("authorization", "some-auth-data"))
|
||||
streamServer := &mockServerStream{
|
||||
ctx: ctx,
|
||||
ctx: metadata.NewIncomingContext(context.Background(), metadata.Pairs("authorization", "some-auth-data")),
|
||||
}
|
||||
interceptor := authStreamServerInterceptor(newMockAuthServer(authFunc))
|
||||
|
||||
// test
|
||||
err := authStreamServerInterceptor(nil, streamServer, &grpc.StreamServerInfo{}, handler, newMockAuthServer(authFunc))
|
||||
err := interceptor(nil, streamServer, &grpc.StreamServerInfo{}, handler)
|
||||
|
||||
// verify
|
||||
require.ErrorContains(t, err, expectedErr.Error()) // unfortunately, grpc errors don't wrap the original ones
|
||||
|
@ -1116,9 +1119,10 @@ func TestDefaultStreamInterceptorMissingMetadata(t *testing.T) {
|
|||
streamServer := &mockServerStream{
|
||||
ctx: context.Background(),
|
||||
}
|
||||
interceptor := authStreamServerInterceptor(newMockAuthServer(authFunc))
|
||||
|
||||
// test
|
||||
err := authStreamServerInterceptor(nil, streamServer, &grpc.StreamServerInfo{}, handler, newMockAuthServer(authFunc))
|
||||
err := interceptor(nil, streamServer, &grpc.StreamServerInfo{}, handler)
|
||||
|
||||
// verify
|
||||
assert.Equal(t, errMetadataNotFound, err)
|
||||
|
|
|
@ -5,27 +5,27 @@ go 1.23.0
|
|||
require (
|
||||
github.com/mostynb/go-grpc-compression v1.2.3
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/client v1.36.1
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/component/componenttest v0.130.1
|
||||
go.opentelemetry.io/collector/config/configauth v0.130.1
|
||||
go.opentelemetry.io/collector/config/configcompression v1.36.1
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.130.1
|
||||
go.opentelemetry.io/collector/config/confignet v1.36.1
|
||||
go.opentelemetry.io/collector/config/configopaque v1.36.1
|
||||
go.opentelemetry.io/collector/config/configoptional v0.130.1
|
||||
go.opentelemetry.io/collector/config/configtls v1.36.1
|
||||
go.opentelemetry.io/collector/extension v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.130.1
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.130.1
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.130.1
|
||||
go.opentelemetry.io/collector/pdata v1.36.1
|
||||
go.opentelemetry.io/collector/pdata/testdata v0.130.1
|
||||
go.opentelemetry.io/collector/client v1.37.0
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/component/componenttest v0.131.0
|
||||
go.opentelemetry.io/collector/config/configauth v0.131.0
|
||||
go.opentelemetry.io/collector/config/configcompression v1.37.0
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.131.0
|
||||
go.opentelemetry.io/collector/config/confignet v1.37.0
|
||||
go.opentelemetry.io/collector/config/configopaque v1.37.0
|
||||
go.opentelemetry.io/collector/config/configoptional v0.131.0
|
||||
go.opentelemetry.io/collector/config/configtls v1.37.0
|
||||
go.opentelemetry.io/collector/extension v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.131.0
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.131.0
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.131.0
|
||||
go.opentelemetry.io/collector/pdata v1.37.0
|
||||
go.opentelemetry.io/collector/pdata/testdata v0.131.0
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.62.0
|
||||
go.opentelemetry.io/otel v1.37.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
google.golang.org/grpc v1.73.0
|
||||
google.golang.org/grpc v1.74.2
|
||||
)
|
||||
|
||||
require (
|
||||
|
@ -34,7 +34,7 @@ require (
|
|||
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
||||
github.com/go-logr/logr v1.4.3 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/golang/snappy v0.0.4 // indirect
|
||||
|
@ -45,17 +45,17 @@ require (
|
|||
github.com/klauspost/compress v1.17.9 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.1 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.2 // indirect
|
||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.2 // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/confmap v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata/pprofile v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/confmap v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata/pprofile v0.131.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.37.0 // indirect
|
||||
|
|
|
@ -12,8 +12,8 @@ github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
|||
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
|
@ -43,8 +43,8 @@ github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpb
|
|||
github.com/knadh/koanf/maps v0.1.2/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 h1:mHKLJTE7iXEys6deO5p6olAiZdG5zwp8Aebir+/EaRE=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0/go.mod h1:txHYHiI2hAtF0/0sCmcuol4IDcuQbKTybiB1nOcUo1A=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
|
@ -56,8 +56,9 @@ github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx
|
|||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/mostynb/go-grpc-compression v1.2.3 h1:42/BKWMy0KEJGSdWvzqIyOZ95YcR9mLPqKctH7Uo//I=
|
||||
github.com/mostynb/go-grpc-compression v1.2.3/go.mod h1:AghIxF3P57umzqM9yz795+y1Vjs47Km/Y2FE6ouQ7Lg=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
|
@ -133,8 +134,8 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822 h1:fc6jSaCT0vBduLYZHYrBBNY4dsWuvgyff9noRNDdBeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -56,6 +56,7 @@ README](../configtls/README.md).
|
|||
- [`idle_conn_timeout`](https://golang.org/pkg/net/http/#Transport)
|
||||
- [`auth`](../configauth/README.md)
|
||||
- [`disable_keep_alives`](https://golang.org/pkg/net/http/#Transport)
|
||||
- [`force_attempt_http2`](https://golang.org/pkg/net/http/#Transport)
|
||||
- [`http2_read_idle_timeout`](https://pkg.go.dev/golang.org/x/net/http2#Transport)
|
||||
- [`http2_ping_timeout`](https://pkg.go.dev/golang.org/x/net/http2#Transport)
|
||||
- [`cookies`](https://pkg.go.dev/net/http#CookieJar)
|
||||
|
|
|
@ -123,7 +123,7 @@ func TestClientMiddlewares(t *testing.T) {
|
|||
require.NoError(t, err)
|
||||
|
||||
// Create a request to the test server
|
||||
req, err := http.NewRequest(http.MethodGet, server.URL, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, server.URL, http.NoBody)
|
||||
require.NoError(t, err)
|
||||
|
||||
// Send the request
|
||||
|
|
|
@ -38,7 +38,7 @@ func contextWithClient(req *http.Request, includeMetadata bool) context.Context
|
|||
|
||||
if includeMetadata {
|
||||
md := req.Header.Clone()
|
||||
if len(md.Get(client.MetadataHostName)) == 0 && req.Host != "" {
|
||||
if md.Get(client.MetadataHostName) == "" && req.Host != "" {
|
||||
md.Add(client.MetadataHostName, req.Host)
|
||||
}
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ import (
|
|||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
"sync"
|
||||
|
||||
"github.com/golang/snappy"
|
||||
"github.com/klauspost/compress/zstd"
|
||||
|
@ -25,7 +26,7 @@ import (
|
|||
|
||||
var enableFramedSnappy = featuregate.GlobalRegistry().MustRegister(
|
||||
"confighttp.framedSnappy",
|
||||
featuregate.StageAlpha,
|
||||
featuregate.StageBeta,
|
||||
featuregate.WithRegisterFromVersion("v0.125.0"),
|
||||
featuregate.WithRegisterDescription("Content encoding 'snappy' will compress/decompress block snappy format while 'x-snappy-framed' will compress/decompress framed snappy format."),
|
||||
featuregate.WithRegisterReferenceURL("https://github.com/open-telemetry/opentelemetry-collector/issues/10584"),
|
||||
|
@ -38,6 +39,25 @@ type compressRoundTripper struct {
|
|||
compressor *compressor
|
||||
}
|
||||
|
||||
var zstdReaderPool sync.Pool
|
||||
|
||||
type pooledZstdReadCloser struct {
|
||||
inner *zstd.Decoder
|
||||
}
|
||||
|
||||
func (pzrc *pooledZstdReadCloser) Read(dst []byte) (int, error) {
|
||||
return pzrc.inner.Read(dst)
|
||||
}
|
||||
|
||||
func (pzrc *pooledZstdReadCloser) Close() error {
|
||||
err := pzrc.inner.Reset(nil)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
zstdReaderPool.Put(pzrc.inner)
|
||||
return nil
|
||||
}
|
||||
|
||||
var availableDecoders = map[string]func(body io.ReadCloser) (io.ReadCloser, error){
|
||||
"": func(io.ReadCloser) (io.ReadCloser, error) {
|
||||
// Not a compressed payload. Nothing to do.
|
||||
|
@ -51,18 +71,24 @@ var availableDecoders = map[string]func(body io.ReadCloser) (io.ReadCloser, erro
|
|||
return gr, nil
|
||||
},
|
||||
"zstd": func(body io.ReadCloser) (io.ReadCloser, error) {
|
||||
zr, err := zstd.NewReader(
|
||||
body,
|
||||
v := zstdReaderPool.Get()
|
||||
var zr *zstd.Decoder
|
||||
var err error
|
||||
if v == nil {
|
||||
// NOTE(tigrannajaryan):
|
||||
// Concurrency 1 disables async decoding. We don't need async decoding, it is pointless
|
||||
// for our use-case (a server accepting decoding http requests).
|
||||
// Disabling async improves performance (I benchmarked it previously when working
|
||||
// on https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/23257).
|
||||
zstd.WithDecoderConcurrency(1),
|
||||
)
|
||||
zr, err = zstd.NewReader(body, zstd.WithDecoderConcurrency(1))
|
||||
} else {
|
||||
zr = v.(*zstd.Decoder)
|
||||
err = zr.Reset(body)
|
||||
}
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return zr.IOReadCloser(), nil
|
||||
return &pooledZstdReadCloser{inner: zr}, nil
|
||||
},
|
||||
"zlib": func(body io.ReadCloser) (io.ReadCloser, error) {
|
||||
zr, err := zlib.NewReader(body)
|
||||
|
|
|
@ -396,7 +396,7 @@ func TestHTTPContentCompressionRequestWithNilBody(t *testing.T) {
|
|||
}))
|
||||
defer srv.Close()
|
||||
|
||||
req, err := http.NewRequest(http.MethodGet, srv.URL, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, srv.URL, http.NoBody)
|
||||
require.NoError(t, err, "failed to create request to test handler")
|
||||
|
||||
client := srv.Client()
|
||||
|
@ -505,10 +505,15 @@ func TestDecompressorAvoidDecompressionBomb(t *testing.T) {
|
|||
compress: compressZlib,
|
||||
},
|
||||
{
|
||||
name: "x-snappy-framed",
|
||||
name: "x-snappy-framed",
|
||||
encoding: "x-snappy-framed",
|
||||
compress: compressSnappyFramed,
|
||||
},
|
||||
{
|
||||
name: "x-snappy-not-framed",
|
||||
encoding: "x-snappy-framed",
|
||||
compress: compressSnappyFramed,
|
||||
framedSnappyEnabled: true,
|
||||
framedSnappyEnabled: false,
|
||||
},
|
||||
{
|
||||
name: "snappy",
|
||||
|
|
|
@ -119,10 +119,15 @@ type ClientConfig struct {
|
|||
// Cookies configures the cookie management of the HTTP client.
|
||||
Cookies CookiesConfig `mapstructure:"cookies,omitempty"`
|
||||
|
||||
// Enabling ForceAttemptHTTP2 forces the HTTP transport to use the HTTP/2 protocol.
|
||||
// By default, this is set to true.
|
||||
// NOTE: HTTP/2 does not support settings such as MaxConnsPerHost, MaxIdleConnsPerHost and MaxIdleConns.
|
||||
ForceAttemptHTTP2 bool `mapstructure:"force_attempt_http2,omitempty"`
|
||||
|
||||
// Middlewares are used to add custom functionality to the HTTP client.
|
||||
// Middleware handlers are called in the order they appear in this list,
|
||||
// with the first middleware becoming the outermost handler.
|
||||
Middlewares []configmiddleware.Config `mapstructure:"middleware,omitempty"`
|
||||
Middlewares []configmiddleware.Config `mapstructure:"middlewares,omitempty"`
|
||||
}
|
||||
|
||||
// CookiesConfig defines the configuration of the HTTP client regarding cookies served by the server.
|
||||
|
@ -141,9 +146,10 @@ func NewDefaultClientConfig() ClientConfig {
|
|||
defaultTransport := http.DefaultTransport.(*http.Transport)
|
||||
|
||||
return ClientConfig{
|
||||
Headers: map[string]configopaque.String{},
|
||||
MaxIdleConns: defaultTransport.MaxIdleConns,
|
||||
IdleConnTimeout: defaultTransport.IdleConnTimeout,
|
||||
Headers: map[string]configopaque.String{},
|
||||
MaxIdleConns: defaultTransport.MaxIdleConns,
|
||||
IdleConnTimeout: defaultTransport.IdleConnTimeout,
|
||||
ForceAttemptHTTP2: true,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -184,6 +190,7 @@ func (hcs *ClientConfig) ToClient(ctx context.Context, host component.Host, sett
|
|||
transport.MaxIdleConnsPerHost = hcs.MaxIdleConnsPerHost
|
||||
transport.MaxConnsPerHost = hcs.MaxConnsPerHost
|
||||
transport.IdleConnTimeout = hcs.IdleConnTimeout
|
||||
transport.ForceAttemptHTTP2 = hcs.ForceAttemptHTTP2
|
||||
|
||||
// Setting the Proxy URL
|
||||
if hcs.ProxyURL != "" {
|
||||
|
@ -205,7 +212,7 @@ func (hcs *ClientConfig) ToClient(ctx context.Context, host component.Host, sett
|
|||
transport2.PingTimeout = hcs.HTTP2PingTimeout
|
||||
}
|
||||
|
||||
clientTransport := (http.RoundTripper)(transport)
|
||||
clientTransport := http.RoundTripper(transport)
|
||||
|
||||
// Apply middlewares in reverse order so they execute in
|
||||
// forward order. The first middleware runs after authentication.
|
||||
|
@ -372,7 +379,7 @@ type ServerConfig struct {
|
|||
// Middlewares are used to add custom functionality to the HTTP server.
|
||||
// Middleware handlers are called in the order they appear in this list,
|
||||
// with the first middleware becoming the outermost handler.
|
||||
Middlewares []configmiddleware.Config `mapstructure:"middleware,omitempty"`
|
||||
Middlewares []configmiddleware.Config `mapstructure:"middlewares,omitempty"`
|
||||
}
|
||||
|
||||
// NewDefaultServerConfig returns ServerConfig type object with default values.
|
||||
|
|
|
@ -28,9 +28,12 @@ import (
|
|||
"go.opentelemetry.io/collector/component/componenttest"
|
||||
"go.opentelemetry.io/collector/config/configauth"
|
||||
"go.opentelemetry.io/collector/config/configcompression"
|
||||
"go.opentelemetry.io/collector/config/configmiddleware"
|
||||
"go.opentelemetry.io/collector/config/configopaque"
|
||||
"go.opentelemetry.io/collector/config/configoptional"
|
||||
"go.opentelemetry.io/collector/config/configtls"
|
||||
"go.opentelemetry.io/collector/confmap/confmaptest"
|
||||
"go.opentelemetry.io/collector/confmap/xconfmap"
|
||||
"go.opentelemetry.io/collector/extension"
|
||||
"go.opentelemetry.io/collector/extension/extensionauth"
|
||||
"go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest"
|
||||
|
@ -98,6 +101,28 @@ func TestAllHTTPClientSettings(t *testing.T) {
|
|||
},
|
||||
shouldError: false,
|
||||
},
|
||||
{
|
||||
name: "all_valid_settings_http2_enabled",
|
||||
settings: ClientConfig{
|
||||
Endpoint: "localhost:1234",
|
||||
TLS: configtls.ClientConfig{
|
||||
Insecure: false,
|
||||
},
|
||||
ReadBufferSize: 1024,
|
||||
WriteBufferSize: 512,
|
||||
MaxIdleConns: maxIdleConns,
|
||||
MaxIdleConnsPerHost: maxIdleConnsPerHost,
|
||||
MaxConnsPerHost: maxConnsPerHost,
|
||||
ForceAttemptHTTP2: true,
|
||||
IdleConnTimeout: idleConnTimeout,
|
||||
Compression: "",
|
||||
DisableKeepAlives: true,
|
||||
Cookies: CookiesConfig{Enabled: true},
|
||||
HTTP2ReadIdleTimeout: idleConnTimeout,
|
||||
HTTP2PingTimeout: http2PingTimeout,
|
||||
},
|
||||
shouldError: false,
|
||||
},
|
||||
{
|
||||
name: "all_valid_settings_with_none_compression",
|
||||
settings: ClientConfig{
|
||||
|
@ -696,8 +721,9 @@ func TestHttpReception(t *testing.T) {
|
|||
}
|
||||
|
||||
hcs := &ClientConfig{
|
||||
Endpoint: prefix + ln.Addr().String(),
|
||||
TLS: *tt.tlsClientCreds,
|
||||
Endpoint: prefix + ln.Addr().String(),
|
||||
TLS: *tt.tlsClientCreds,
|
||||
ForceAttemptHTTP2: true,
|
||||
}
|
||||
|
||||
client, errClient := hcs.ToClient(context.Background(), componenttest.NewNopHost(), nilProvidersSettings)
|
||||
|
@ -864,7 +890,7 @@ func TestHttpCorsWithSettings(t *testing.T) {
|
|||
require.NotNil(t, srv)
|
||||
|
||||
rec := httptest.NewRecorder()
|
||||
req := httptest.NewRequest(http.MethodOptions, "/", nil)
|
||||
req := httptest.NewRequest(http.MethodOptions, "/", http.NoBody)
|
||||
req.Header.Set("Origin", "http://localhost")
|
||||
req.Header.Set("Access-Control-Request-Method", http.MethodPost)
|
||||
srv.Handler.ServeHTTP(rec, req)
|
||||
|
@ -928,8 +954,8 @@ func TestHttpServerHeaders(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func verifyCorsResp(t *testing.T, url string, origin string, set configoptional.Optional[CORSConfig], extraHeader bool, wantStatus int, wantAllowed bool) {
|
||||
req, err := http.NewRequest(http.MethodOptions, url, nil)
|
||||
func verifyCorsResp(t *testing.T, url, origin string, set configoptional.Optional[CORSConfig], extraHeader bool, wantStatus int, wantAllowed bool) {
|
||||
req, err := http.NewRequest(http.MethodOptions, url, http.NoBody)
|
||||
require.NoError(t, err, "Error creating trace OPTIONS request: %v", err)
|
||||
req.Header.Set("Origin", origin)
|
||||
if extraHeader {
|
||||
|
@ -964,7 +990,7 @@ func verifyCorsResp(t *testing.T, url string, origin string, set configoptional.
|
|||
}
|
||||
|
||||
func verifyHeadersResp(t *testing.T, url string, expected map[string]configopaque.String) {
|
||||
req, err := http.NewRequest(http.MethodGet, url, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, url, http.NoBody)
|
||||
require.NoError(t, err, "Error creating request")
|
||||
|
||||
resp, err := http.DefaultClient.Do(req)
|
||||
|
@ -1010,7 +1036,7 @@ func TestHttpClientHeaders(t *testing.T) {
|
|||
Headers: tt.headers,
|
||||
}
|
||||
client, _ := setting.ToClient(context.Background(), componenttest.NewNopHost(), componenttest.NewNopTelemetrySettings())
|
||||
req, err := http.NewRequest(http.MethodGet, setting.Endpoint, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, setting.Endpoint, http.NoBody)
|
||||
require.NoError(t, err)
|
||||
_, err = client.Do(req)
|
||||
assert.NoError(t, err)
|
||||
|
@ -1046,7 +1072,7 @@ func TestHttpClientHostHeader(t *testing.T) {
|
|||
Headers: tt.headers,
|
||||
}
|
||||
client, _ := setting.ToClient(context.Background(), componenttest.NewNopHost(), componenttest.NewNopTelemetrySettings())
|
||||
req, err := http.NewRequest(http.MethodGet, setting.Endpoint, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, setting.Endpoint, http.NoBody)
|
||||
require.NoError(t, err)
|
||||
_, err = client.Do(req)
|
||||
assert.NoError(t, err)
|
||||
|
@ -1179,7 +1205,7 @@ func TestServerAuth(t *testing.T) {
|
|||
require.NoError(t, err)
|
||||
|
||||
// tt
|
||||
srv.Handler.ServeHTTP(&httptest.ResponseRecorder{}, httptest.NewRequest(http.MethodGet, "/", nil))
|
||||
srv.Handler.ServeHTTP(&httptest.ResponseRecorder{}, httptest.NewRequest(http.MethodGet, "/", http.NoBody))
|
||||
|
||||
// verify
|
||||
assert.True(t, handlerCalled)
|
||||
|
@ -1223,7 +1249,7 @@ func TestFailedServerAuth(t *testing.T) {
|
|||
|
||||
// tt
|
||||
response := &httptest.ResponseRecorder{}
|
||||
srv.Handler.ServeHTTP(response, httptest.NewRequest(http.MethodGet, "/", nil))
|
||||
srv.Handler.ServeHTTP(response, httptest.NewRequest(http.MethodGet, "/", http.NoBody))
|
||||
|
||||
// verify
|
||||
assert.Equal(t, http.StatusUnauthorized, response.Result().StatusCode)
|
||||
|
@ -1261,7 +1287,7 @@ func TestFailedServerAuthWithErrorHandler(t *testing.T) {
|
|||
|
||||
// tt
|
||||
response := &httptest.ResponseRecorder{}
|
||||
srv.Handler.ServeHTTP(response, httptest.NewRequest(http.MethodGet, "/", nil))
|
||||
srv.Handler.ServeHTTP(response, httptest.NewRequest(http.MethodGet, "/", http.NoBody))
|
||||
|
||||
// verify
|
||||
assert.Equal(t, http.StatusInternalServerError, response.Result().StatusCode)
|
||||
|
@ -1290,7 +1316,7 @@ func TestServerWithErrorHandler(t *testing.T) {
|
|||
// tt
|
||||
response := &httptest.ResponseRecorder{}
|
||||
|
||||
req, err := http.NewRequest(http.MethodGet, srv.Addr, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, srv.Addr, http.NoBody)
|
||||
require.NoError(t, err, "Error creating request: %v", err)
|
||||
req.Header.Set("Content-Encoding", "something-invalid")
|
||||
|
||||
|
@ -1447,7 +1473,7 @@ func TestAuthWithQueryParams(t *testing.T) {
|
|||
require.NoError(t, err)
|
||||
|
||||
// tt
|
||||
srv.Handler.ServeHTTP(&httptest.ResponseRecorder{}, httptest.NewRequest(http.MethodGet, "/?auth=1", nil))
|
||||
srv.Handler.ServeHTTP(&httptest.ResponseRecorder{}, httptest.NewRequest(http.MethodGet, "/?auth=1", http.NoBody))
|
||||
|
||||
// verify
|
||||
assert.True(t, handlerCalled)
|
||||
|
@ -1633,3 +1659,154 @@ func TestHTTPServerTelemetry_Tracing(t *testing.T) {
|
|||
})
|
||||
}
|
||||
}
|
||||
|
||||
// TestUnmarshalYAMLWithMiddlewares tests that the "middlewares" field is correctly
|
||||
// parsed from YAML configurations (fixing the bug where "middleware" was used instead)
|
||||
func TestUnmarshalYAMLWithMiddlewares(t *testing.T) {
|
||||
cm, err := confmaptest.LoadConf(filepath.Join("testdata", "middlewares.yaml"))
|
||||
require.NoError(t, err)
|
||||
|
||||
// Test client configuration
|
||||
var clientConfig ClientConfig
|
||||
clientSub, err := cm.Sub("client")
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, clientSub.Unmarshal(&clientConfig))
|
||||
|
||||
// Validate the client configuration using reflection-based validation
|
||||
require.NoError(t, xconfmap.Validate(&clientConfig), "Client configuration should be valid")
|
||||
|
||||
assert.Equal(t, "http://localhost:4318/v1/traces", clientConfig.Endpoint)
|
||||
require.Len(t, clientConfig.Middlewares, 2)
|
||||
assert.Equal(t, component.MustNewID("fancy_middleware"), clientConfig.Middlewares[0].ID)
|
||||
assert.Equal(t, component.MustNewID("careful_middleware"), clientConfig.Middlewares[1].ID)
|
||||
|
||||
// Test server configuration
|
||||
var serverConfig ServerConfig
|
||||
serverSub, err := cm.Sub("server")
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, serverSub.Unmarshal(&serverConfig))
|
||||
|
||||
// Validate the server configuration using reflection-based validation
|
||||
require.NoError(t, xconfmap.Validate(&serverConfig), "Server configuration should be valid")
|
||||
|
||||
assert.Equal(t, "0.0.0.0:4318", serverConfig.Endpoint)
|
||||
require.Len(t, serverConfig.Middlewares, 2)
|
||||
assert.Equal(t, component.MustNewID("careful_middleware"), serverConfig.Middlewares[0].ID)
|
||||
assert.Equal(t, component.MustNewID("support_middleware"), serverConfig.Middlewares[1].ID)
|
||||
}
|
||||
|
||||
// TestUnmarshalYAMLComprehensiveConfig tests the complete configuration example
|
||||
// to ensure all fields including middlewares are parsed correctly
|
||||
func TestUnmarshalYAMLComprehensiveConfig(t *testing.T) {
|
||||
cm, err := confmaptest.LoadConf(filepath.Join("testdata", "config.yaml"))
|
||||
require.NoError(t, err)
|
||||
|
||||
// Test client configuration
|
||||
var clientConfig ClientConfig
|
||||
clientSub, err := cm.Sub("client")
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, clientSub.Unmarshal(&clientConfig))
|
||||
|
||||
// Validate the client configuration using reflection-based validation
|
||||
require.NoError(t, xconfmap.Validate(&clientConfig), "Client configuration should be valid")
|
||||
|
||||
// Verify basic fields
|
||||
assert.Equal(t, "http://example.com:4318/v1/traces", clientConfig.Endpoint)
|
||||
assert.Equal(t, "http://proxy.example.com:8080", clientConfig.ProxyURL)
|
||||
assert.Equal(t, 30*time.Second, clientConfig.Timeout)
|
||||
assert.Equal(t, 4096, clientConfig.ReadBufferSize)
|
||||
assert.Equal(t, 4096, clientConfig.WriteBufferSize)
|
||||
assert.Equal(t, configcompression.TypeGzip, clientConfig.Compression)
|
||||
|
||||
// Verify TLS configuration
|
||||
assert.False(t, clientConfig.TLS.Insecure)
|
||||
assert.Equal(t, "/path/to/client.crt", clientConfig.TLS.CertFile)
|
||||
assert.Equal(t, "/path/to/client.key", clientConfig.TLS.KeyFile)
|
||||
assert.Equal(t, "/path/to/ca.crt", clientConfig.TLS.CAFile)
|
||||
assert.Equal(t, "example.com", clientConfig.TLS.ServerName)
|
||||
|
||||
// Verify headers
|
||||
expectedHeaders := map[string]configopaque.String{
|
||||
"User-Agent": "OpenTelemetry-Collector/1.0",
|
||||
"X-Custom-Header": "custom-value",
|
||||
}
|
||||
assert.Equal(t, expectedHeaders, clientConfig.Headers)
|
||||
|
||||
// Verify middlewares
|
||||
require.Len(t, clientConfig.Middlewares, 2)
|
||||
assert.Equal(t, component.MustNewID("middleware1"), clientConfig.Middlewares[0].ID)
|
||||
assert.Equal(t, component.MustNewID("middleware2"), clientConfig.Middlewares[1].ID)
|
||||
|
||||
// Test server configuration
|
||||
var serverConfig ServerConfig
|
||||
serverSub, err := cm.Sub("server")
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, serverSub.Unmarshal(&serverConfig))
|
||||
|
||||
// Validate the server configuration using reflection-based validation
|
||||
require.NoError(t, xconfmap.Validate(&serverConfig), "Server configuration should be valid")
|
||||
|
||||
// Verify basic fields
|
||||
assert.Equal(t, "0.0.0.0:4318", serverConfig.Endpoint)
|
||||
assert.Equal(t, 30*time.Second, serverConfig.ReadTimeout)
|
||||
assert.Equal(t, 10*time.Second, serverConfig.ReadHeaderTimeout)
|
||||
assert.Equal(t, 30*time.Second, serverConfig.WriteTimeout)
|
||||
assert.Equal(t, 120*time.Second, serverConfig.IdleTimeout)
|
||||
assert.Equal(t, int64(33554432), serverConfig.MaxRequestBodySize)
|
||||
assert.True(t, serverConfig.IncludeMetadata)
|
||||
|
||||
// Verify TLS configuration
|
||||
assert.Equal(t, "/path/to/server.crt", serverConfig.TLS.Get().CertFile)
|
||||
assert.Equal(t, "/path/to/server.key", serverConfig.TLS.Get().KeyFile)
|
||||
assert.Equal(t, "/path/to/ca.crt", serverConfig.TLS.Get().CAFile)
|
||||
assert.Equal(t, "/path/to/client-ca.crt", serverConfig.TLS.Get().ClientCAFile)
|
||||
|
||||
// Verify CORS configuration
|
||||
expectedOrigins := []string{"https://example.com", "https://*.test.com"}
|
||||
assert.Equal(t, expectedOrigins, serverConfig.CORS.Get().AllowedOrigins)
|
||||
corsHeaders := []string{"Content-Type", "Accept"}
|
||||
assert.Equal(t, corsHeaders, serverConfig.CORS.Get().AllowedHeaders)
|
||||
assert.Equal(t, 7200, serverConfig.CORS.Get().MaxAge)
|
||||
|
||||
// Verify response headers
|
||||
expectedResponseHeaders := map[string]configopaque.String{
|
||||
"Server": "OpenTelemetry-Collector",
|
||||
"X-Flavor": "apple",
|
||||
}
|
||||
assert.Equal(t, expectedResponseHeaders, serverConfig.ResponseHeaders)
|
||||
|
||||
// Verify compression algorithms
|
||||
expectedAlgorithms := []string{"", "gzip", "zstd", "zlib", "snappy", "deflate"}
|
||||
assert.Equal(t, expectedAlgorithms, serverConfig.CompressionAlgorithms)
|
||||
|
||||
// Verify middlewares
|
||||
require.Len(t, serverConfig.Middlewares, 3)
|
||||
assert.Equal(t, component.MustNewID("server_middleware1"), serverConfig.Middlewares[0].ID)
|
||||
assert.Equal(t, component.MustNewID("server_middleware2"), serverConfig.Middlewares[1].ID)
|
||||
assert.Equal(t, component.MustNewID("server_middleware3"), serverConfig.Middlewares[2].ID)
|
||||
}
|
||||
|
||||
// TestMiddlewaresFieldCompatibility tests that the new "middlewares" field name
|
||||
// is used instead of the old "middleware" name, ensuring the bug is fixed
|
||||
func TestMiddlewaresFieldCompatibility(t *testing.T) {
|
||||
// Test that we can create a config with middlewares using the new field name
|
||||
clientConfig := ClientConfig{
|
||||
Endpoint: "http://localhost:4318",
|
||||
Middlewares: []configmiddleware.Config{
|
||||
{ID: component.MustNewID("test_middleware")},
|
||||
},
|
||||
}
|
||||
assert.Equal(t, "http://localhost:4318", clientConfig.Endpoint)
|
||||
assert.Len(t, clientConfig.Middlewares, 1)
|
||||
assert.Equal(t, component.MustNewID("test_middleware"), clientConfig.Middlewares[0].ID)
|
||||
|
||||
serverConfig := ServerConfig{
|
||||
Endpoint: "0.0.0.0:4318",
|
||||
Middlewares: []configmiddleware.Config{
|
||||
{ID: component.MustNewID("server_middleware")},
|
||||
},
|
||||
}
|
||||
assert.Equal(t, "0.0.0.0:4318", serverConfig.Endpoint)
|
||||
assert.Len(t, serverConfig.Middlewares, 1)
|
||||
assert.Equal(t, component.MustNewID("server_middleware"), serverConfig.Middlewares[0].ID)
|
||||
}
|
||||
|
|
|
@ -8,26 +8,26 @@ require (
|
|||
github.com/pierrec/lz4/v4 v4.1.22
|
||||
github.com/rs/cors v1.11.1
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/client v1.36.1
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/component/componenttest v0.130.1
|
||||
go.opentelemetry.io/collector/config/configauth v0.130.1
|
||||
go.opentelemetry.io/collector/config/configcompression v1.36.1
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.130.1
|
||||
go.opentelemetry.io/collector/config/configopaque v1.36.1
|
||||
go.opentelemetry.io/collector/config/configoptional v0.130.1
|
||||
go.opentelemetry.io/collector/config/configtls v1.36.1
|
||||
go.opentelemetry.io/collector/extension v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.130.1
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.130.1
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.130.1
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1
|
||||
go.opentelemetry.io/collector/client v1.37.0
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/component/componenttest v0.131.0
|
||||
go.opentelemetry.io/collector/config/configauth v0.131.0
|
||||
go.opentelemetry.io/collector/config/configcompression v1.37.0
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.131.0
|
||||
go.opentelemetry.io/collector/config/configopaque v1.37.0
|
||||
go.opentelemetry.io/collector/config/configoptional v0.131.0
|
||||
go.opentelemetry.io/collector/config/configtls v1.37.0
|
||||
go.opentelemetry.io/collector/extension v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.131.0
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.131.0
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.131.0
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0
|
||||
go.opentelemetry.io/otel v1.37.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
go.uber.org/zap v1.27.0
|
||||
golang.org/x/net v0.41.0
|
||||
golang.org/x/net v0.42.0
|
||||
)
|
||||
|
||||
require (
|
||||
|
@ -37,22 +37,26 @@ require (
|
|||
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
||||
github.com/go-logr/logr v1.4.3 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/go-tpm v0.9.5 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.1 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.2 // indirect
|
||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/confmap v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/confmap v1.37.0
|
||||
go.opentelemetry.io/collector/confmap/xconfmap v0.131.0
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.37.0 // indirect
|
||||
|
@ -61,11 +65,11 @@ require (
|
|||
go.opentelemetry.io/otel/trace v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
||||
golang.org/x/crypto v0.39.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/crypto v0.40.0 // indirect
|
||||
golang.org/x/sys v0.34.0 // indirect
|
||||
golang.org/x/text v0.27.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
@ -109,3 +113,5 @@ replace go.opentelemetry.io/collector/featuregate => ../../featuregate
|
|||
replace go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest => ../../extension/extensionmiddleware/extensionmiddlewaretest
|
||||
|
||||
replace go.opentelemetry.io/collector/confmap => ../../confmap
|
||||
|
||||
replace go.opentelemetry.io/collector/confmap/xconfmap => ../../confmap/xconfmap
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
|
||||
|
@ -13,8 +14,8 @@ github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
|||
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
|
@ -29,6 +30,7 @@ github.com/google/go-tpm v0.9.5 h1:ocUmnDebX54dnW+MQWGQRbdaAcJELsa6PqZhJ48KwVU=
|
|||
github.com/google/go-tpm v0.9.5/go.mod h1:h9jEsEECg7gtLis0upRBQU+GhYVH6jMjrFxI8u6bVUY=
|
||||
github.com/google/go-tpm-tools v0.4.4 h1:oiQfAIkc6xTy9Fl5NKTeTJkBTlXdHsxAofmQyxBKY98=
|
||||
github.com/google/go-tpm-tools v0.4.4/go.mod h1:T8jXkp2s+eltnCDIsXR84/MTcVU9Ja7bh3Mit0pa4AY=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
|
@ -43,8 +45,8 @@ github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpb
|
|||
github.com/knadh/koanf/maps v0.1.2/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 h1:mHKLJTE7iXEys6deO5p6olAiZdG5zwp8Aebir+/EaRE=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0/go.mod h1:txHYHiI2hAtF0/0sCmcuol4IDcuQbKTybiB1nOcUo1A=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
|
@ -53,10 +55,12 @@ github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa1
|
|||
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
|
||||
github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ=
|
||||
github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pierrec/lz4/v4 v4.1.22 h1:cKFw6uJDK+/gfw5BcDL0JL5aBsAFdsIT18eRtLj7VIU=
|
||||
github.com/pierrec/lz4/v4 v4.1.22/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
|
@ -65,6 +69,8 @@ github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR
|
|||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA=
|
||||
github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -100,28 +106,28 @@ go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
|
|||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.39.0 h1:SHs+kF4LP+f+p14esP5jAoDpHU8Gu/v9lFRK6IT5imM=
|
||||
golang.org/x/crypto v0.39.0/go.mod h1:L+Xg3Wf6HoL4Bn4238Z6ft6KfEpN0tJGo53AAPC632U=
|
||||
golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM=
|
||||
golang.org/x/crypto v0.40.0/go.mod h1:Qr1vMER5WyS2dfPHAlsOj01wgLbsyWtFn/aY+5+ZdxY=
|
||||
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/net v0.42.0 h1:jzkYrhi3YQWD6MLBJcsklgQsoAcw89EcZbJw8Z614hs=
|
||||
golang.org/x/net v0.42.0/go.mod h1:FF1RA5d3u7nAYA4z2TkclSCKh68eSXtiFwcWQpPXdt8=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
||||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA=
|
||||
golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M=
|
||||
golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA=
|
||||
golang.org/x/text v0.27.0 h1:4fGWRpyh641NLlecmyl4LOe6yDdfaYNrGb2zdfo4JV4=
|
||||
golang.org/x/text v0.27.0/go.mod h1:1D28KMCvyooCX9hBiosv5Tz/+YLxj0j7XhWjpSUF7CU=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -130,10 +136,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -112,7 +112,7 @@ func TestServerMiddleware(t *testing.T) {
|
|||
require.NoError(t, err)
|
||||
|
||||
// Create a test request
|
||||
req := httptest.NewRequest(http.MethodGet, "/", nil)
|
||||
req := httptest.NewRequest(http.MethodGet, "/", http.NoBody)
|
||||
|
||||
// Create a response recorder
|
||||
rec := httptest.NewRecorder()
|
||||
|
|
|
@ -0,0 +1,111 @@
|
|||
# Comprehensive HTTP configuration example showing all available options
|
||||
# with middleware configurations (using the new "middlewares" field)
|
||||
|
||||
# HTTP Client Configuration
|
||||
client:
|
||||
# The target URL to send data to
|
||||
endpoint: "http://example.com:4318/v1/traces"
|
||||
|
||||
# Proxy URL setting for the collector
|
||||
proxy_url: "http://proxy.example.com:8080"
|
||||
|
||||
# TLS configuration
|
||||
tls:
|
||||
insecure: false
|
||||
cert_file: "/path/to/client.crt"
|
||||
key_file: "/path/to/client.key"
|
||||
ca_file: "/path/to/ca.crt"
|
||||
server_name_override: "example.com"
|
||||
insecure_skip_verify: false
|
||||
|
||||
# HTTP client buffer sizes
|
||||
read_buffer_size: 4096
|
||||
write_buffer_size: 4096
|
||||
|
||||
# Request timeout
|
||||
timeout: 30s
|
||||
|
||||
# Custom headers
|
||||
headers:
|
||||
"User-Agent": "OpenTelemetry-Collector/1.0"
|
||||
"X-Custom-Header": "custom-value"
|
||||
|
||||
# Compression setting
|
||||
compression: "gzip"
|
||||
|
||||
# Disable HTTP/2
|
||||
disable_keep_alives: false
|
||||
http2_read_idle_timeout: 10s
|
||||
http2_ping_timeout: 15s
|
||||
|
||||
# Maximum idle connections
|
||||
max_idle_conns: 100
|
||||
max_idle_conns_per_host: 10
|
||||
max_conns_per_host: 50
|
||||
idle_conn_timeout: 90s
|
||||
|
||||
# Authentication configuration
|
||||
auth:
|
||||
authenticator: "oauth2client"
|
||||
|
||||
# Cookies configuration
|
||||
cookies:
|
||||
enabled: true
|
||||
|
||||
# Middlewares configuration (note: plural "middlewares")
|
||||
middlewares:
|
||||
- id: "middleware1"
|
||||
- id: "middleware2"
|
||||
|
||||
# HTTP Server Configuration
|
||||
server:
|
||||
# Network endpoint configuration
|
||||
endpoint: "0.0.0.0:4318"
|
||||
|
||||
# TLS configuration
|
||||
tls:
|
||||
cert_file: "/path/to/server.crt"
|
||||
key_file: "/path/to/server.key"
|
||||
ca_file: "/path/to/ca.crt"
|
||||
client_ca_file: "/path/to/client-ca.crt"
|
||||
reload_interval: 24h
|
||||
|
||||
# CORS configuration
|
||||
cors:
|
||||
allowed_origins:
|
||||
- "https://example.com"
|
||||
- "https://*.test.com"
|
||||
allowed_headers:
|
||||
- "Content-Type"
|
||||
- "Accept"
|
||||
max_age: 7200
|
||||
|
||||
# Authentication configuration
|
||||
auth:
|
||||
authenticator: "basic"
|
||||
|
||||
# Server timeouts
|
||||
read_timeout: 30s
|
||||
read_header_timeout: 10s
|
||||
write_timeout: 30s
|
||||
idle_timeout: 120s
|
||||
|
||||
# Maximum request size
|
||||
max_request_body_size: 33554432 # 32MB
|
||||
|
||||
# Include metadata in the context
|
||||
include_metadata: true
|
||||
|
||||
# Response headers to add to every response
|
||||
response_headers:
|
||||
"Server": "OpenTelemetry-Collector"
|
||||
"X-Flavor": "apple"
|
||||
|
||||
# Compression algorithms supported by the server
|
||||
compression_algorithms: ["", "gzip", "zstd", "zlib", "snappy", "deflate"]
|
||||
|
||||
# Middlewares configuration (note: plural "middlewares")
|
||||
middlewares:
|
||||
- id: "server_middleware1"
|
||||
- id: "server_middleware2"
|
||||
- id: "server_middleware3"
|
|
@ -0,0 +1,13 @@
|
|||
# Simple middleware-focused test configuration
|
||||
|
||||
client:
|
||||
endpoint: "http://localhost:4318/v1/traces"
|
||||
middlewares:
|
||||
- id: "fancy_middleware"
|
||||
- id: "careful_middleware"
|
||||
|
||||
server:
|
||||
endpoint: "0.0.0.0:4318"
|
||||
middlewares:
|
||||
- id: "careful_middleware"
|
||||
- id: "support_middleware"
|
|
@ -4,8 +4,8 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/component/componenttest v0.130.1
|
||||
go.opentelemetry.io/collector/config/confighttp v0.130.1
|
||||
go.opentelemetry.io/collector/component/componenttest v0.131.0
|
||||
go.opentelemetry.io/collector/config/confighttp v0.131.0
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0
|
||||
go.opentelemetry.io/otel/sdk v1.37.0
|
||||
go.opentelemetry.io/otel/trace v1.37.0
|
||||
|
@ -18,37 +18,40 @@ require (
|
|||
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
||||
github.com/go-logr/logr v1.4.3 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/golang/snappy v1.0.0 // indirect
|
||||
github.com/google/go-tpm v0.9.5 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/klauspost/compress v1.18.0 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.1 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.2 // indirect
|
||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pierrec/lz4/v4 v4.1.22 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
github.com/rs/cors v1.11.1 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/client v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/component v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configauth v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configcompression v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configopaque v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configoptional v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/config/configtls v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/confmap v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/client v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/component v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configauth v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configcompression v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configmiddleware v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configopaque v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configoptional v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/config/configtls v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/confmap v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionauth v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
|
@ -57,12 +60,12 @@ require (
|
|||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
||||
golang.org/x/crypto v0.39.0 // indirect
|
||||
golang.org/x/net v0.41.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
google.golang.org/grpc v1.73.0 // indirect
|
||||
golang.org/x/crypto v0.40.0 // indirect
|
||||
golang.org/x/net v0.42.0 // indirect
|
||||
golang.org/x/sys v0.34.0 // indirect
|
||||
golang.org/x/text v0.27.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/grpc v1.74.2 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
@ -108,3 +111,5 @@ replace go.opentelemetry.io/collector/config/configmiddleware => ../../configmid
|
|||
replace go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest => ../../../extension/extensionmiddleware/extensionmiddlewaretest
|
||||
|
||||
replace go.opentelemetry.io/collector/confmap => ../../../confmap
|
||||
|
||||
replace go.opentelemetry.io/collector/confmap/xconfmap => ../../../confmap/xconfmap
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
|
||||
|
@ -13,8 +14,8 @@ github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
|||
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
|
@ -29,6 +30,7 @@ github.com/google/go-tpm v0.9.5 h1:ocUmnDebX54dnW+MQWGQRbdaAcJELsa6PqZhJ48KwVU=
|
|||
github.com/google/go-tpm v0.9.5/go.mod h1:h9jEsEECg7gtLis0upRBQU+GhYVH6jMjrFxI8u6bVUY=
|
||||
github.com/google/go-tpm-tools v0.4.4 h1:oiQfAIkc6xTy9Fl5NKTeTJkBTlXdHsxAofmQyxBKY98=
|
||||
github.com/google/go-tpm-tools v0.4.4/go.mod h1:T8jXkp2s+eltnCDIsXR84/MTcVU9Ja7bh3Mit0pa4AY=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
|
@ -43,8 +45,8 @@ github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpb
|
|||
github.com/knadh/koanf/maps v0.1.2/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 h1:mHKLJTE7iXEys6deO5p6olAiZdG5zwp8Aebir+/EaRE=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0/go.mod h1:txHYHiI2hAtF0/0sCmcuol4IDcuQbKTybiB1nOcUo1A=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
|
@ -53,10 +55,12 @@ github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa1
|
|||
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
|
||||
github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ=
|
||||
github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pierrec/lz4/v4 v4.1.22 h1:cKFw6uJDK+/gfw5BcDL0JL5aBsAFdsIT18eRtLj7VIU=
|
||||
github.com/pierrec/lz4/v4 v4.1.22/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
|
@ -65,6 +69,8 @@ github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR
|
|||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA=
|
||||
github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -100,28 +106,28 @@ go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
|
|||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.39.0 h1:SHs+kF4LP+f+p14esP5jAoDpHU8Gu/v9lFRK6IT5imM=
|
||||
golang.org/x/crypto v0.39.0/go.mod h1:L+Xg3Wf6HoL4Bn4238Z6ft6KfEpN0tJGo53AAPC632U=
|
||||
golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM=
|
||||
golang.org/x/crypto v0.40.0/go.mod h1:Qr1vMER5WyS2dfPHAlsOj01wgLbsyWtFn/aY+5+ZdxY=
|
||||
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/net v0.42.0 h1:jzkYrhi3YQWD6MLBJcsklgQsoAcw89EcZbJw8Z614hs=
|
||||
golang.org/x/net v0.42.0/go.mod h1:FF1RA5d3u7nAYA4z2TkclSCKh68eSXtiFwcWQpPXdt8=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
||||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA=
|
||||
golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M=
|
||||
golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA=
|
||||
golang.org/x/text v0.27.0 h1:4fGWRpyh641NLlecmyl4LOe6yDdfaYNrGb2zdfo4JV4=
|
||||
golang.org/x/text v0.27.0/go.mod h1:1D28KMCvyooCX9hBiosv5Tz/+YLxj0j7XhWjpSUF7CU=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -130,10 +136,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -48,7 +48,7 @@ func TestServerWithOtelHTTPOptions(t *testing.T) {
|
|||
|
||||
for _, path := range []string{"/path", "/foobar"} {
|
||||
response := &httptest.ResponseRecorder{}
|
||||
req, err := http.NewRequest(http.MethodGet, srv.Addr+path, nil)
|
||||
req, err := http.NewRequest(http.MethodGet, srv.Addr+path, http.NoBody)
|
||||
require.NoError(t, err)
|
||||
srv.Handler.ServeHTTP(response, req)
|
||||
assert.Equal(t, http.StatusOK, response.Result().StatusCode)
|
||||
|
|
|
@ -4,11 +4,11 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/component v1.36.1
|
||||
go.opentelemetry.io/collector/extension v1.36.1
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.130.1
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.130.1
|
||||
google.golang.org/grpc v1.73.0
|
||||
go.opentelemetry.io/collector/component v1.37.0
|
||||
go.opentelemetry.io/collector/extension v1.37.0
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware v0.131.0
|
||||
go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.131.0
|
||||
google.golang.org/grpc v1.74.2
|
||||
)
|
||||
|
||||
require (
|
||||
|
@ -18,11 +18,14 @@ require (
|
|||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.130.1 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.opentelemetry.io/collector/internal/telemetry v0.131.0 // indirect
|
||||
go.opentelemetry.io/collector/pdata v1.37.0 // indirect
|
||||
go.opentelemetry.io/contrib/bridges/otelzap v0.12.0 // indirect
|
||||
go.opentelemetry.io/otel v1.37.0 // indirect
|
||||
go.opentelemetry.io/otel/log v0.13.0 // indirect
|
||||
|
@ -31,10 +34,10 @@ require (
|
|||
go.opentelemetry.io/otel/trace v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
golang.org/x/net v0.39.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/text v0.24.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 // indirect
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
|
@ -11,20 +12,31 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
|
|||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8=
|
||||
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -62,8 +74,8 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
|
||||
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -74,8 +86,8 @@ golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
|||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
|
||||
golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
|
@ -84,10 +96,10 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
|
||||
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
|
||||
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
@ -4,22 +4,22 @@ go 1.23.0
|
|||
|
||||
require (
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/confmap v1.36.1
|
||||
go.opentelemetry.io/collector/confmap v1.37.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/knadh/koanf/maps v0.1.2 // indirect
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.1 // indirect
|
||||
github.com/knadh/koanf/v2 v2.2.2 // indirect
|
||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.36.1 // indirect
|
||||
go.opentelemetry.io/collector/featuregate v1.37.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
|
||||
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
|
@ -10,8 +10,8 @@ github.com/knadh/koanf/maps v0.1.2 h1:RBfmAW5CnZT+PJ1CVc1QSJKf4Xu9kxfQgYVQSu8hpb
|
|||
github.com/knadh/koanf/maps v0.1.2/go.mod h1:npD/QZY3V6ghQDdcQzl1W4ICNVTkohC8E73eI2xW4yI=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0 h1:mHKLJTE7iXEys6deO5p6olAiZdG5zwp8Aebir+/EaRE=
|
||||
github.com/knadh/koanf/providers/confmap v1.0.0/go.mod h1:txHYHiI2hAtF0/0sCmcuol4IDcuQbKTybiB1nOcUo1A=
|
||||
github.com/knadh/koanf/v2 v2.2.1 h1:jaleChtw85y3UdBnI0wCqcg1sj1gPoz6D3caGNHtrNE=
|
||||
github.com/knadh/koanf/v2 v2.2.1/go.mod h1:PSFru3ufQgTsI7IF+95rf9s8XA1+aHxKuO/W+dPoHEY=
|
||||
github.com/knadh/koanf/v2 v2.2.2 h1:ghbduIkpFui3L587wavneC9e3WIliCgiCgdxYO/wd7A=
|
||||
github.com/knadh/koanf/v2 v2.2.2/go.mod h1:abWQc0cBXLSF/PSOMCB/SK+T13NXDsPvOksbpi5e/9Q=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
|
|
|
@ -3,7 +3,7 @@ module go.opentelemetry.io/collector/config/configretry
|
|||
go 1.23.0
|
||||
|
||||
require (
|
||||
github.com/cenkalti/backoff/v5 v5.0.2
|
||||
github.com/cenkalti/backoff/v5 v5.0.3
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
github.com/cenkalti/backoff/v5 v5.0.2 h1:rIfFVxEf1QsI7E1ZHfp/B4DF/6QBAUhmgkxc0H7Zss8=
|
||||
github.com/cenkalti/backoff/v5 v5.0.2/go.mod h1:rkhZdG3JZukswDf7f0cwqPNk4K0sa+F97BxZthm/crw=
|
||||
github.com/cenkalti/backoff/v5 v5.0.3 h1:ZN+IMa753KfX5hd8vVaMixjnqRZ3y8CuJKRKj1xcsSM=
|
||||
github.com/cenkalti/backoff/v5 v5.0.3/go.mod h1:rkhZdG3JZukswDf7f0cwqPNk4K0sa+F97BxZthm/crw=
|
||||
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
|
|
|
@ -440,7 +440,7 @@ func TestLoadTLSServerConfigFailing(t *testing.T) {
|
|||
assert.NotNil(t, firstClient)
|
||||
}
|
||||
|
||||
func overwriteClientCA(t *testing.T, targetFilePath string, testdataFileName string) {
|
||||
func overwriteClientCA(t *testing.T, targetFilePath, testdataFileName string) {
|
||||
targetFile, err := os.OpenFile(filepath.Clean(targetFilePath), os.O_RDWR, 0o600)
|
||||
require.NoError(t, err)
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ require (
|
|||
github.com/fsnotify/fsnotify v1.9.0
|
||||
github.com/google/go-tpm v0.9.5
|
||||
github.com/stretchr/testify v1.10.0
|
||||
go.opentelemetry.io/collector/config/configopaque v1.36.1
|
||||
go.opentelemetry.io/collector/config/configopaque v1.37.0
|
||||
)
|
||||
|
||||
require (
|
||||
|
|
|
@ -25,7 +25,7 @@ type TPMConfig struct {
|
|||
_ struct{}
|
||||
}
|
||||
|
||||
func (c TPMConfig) tpmCertificate(keyPem []byte, certPem []byte, openTPM func() (transport.TPMCloser, error)) (tls.Certificate, error) {
|
||||
func (c TPMConfig) tpmCertificate(keyPem, certPem []byte, openTPM func() (transport.TPMCloser, error)) (tls.Certificate, error) {
|
||||
tpm, err := openTPM()
|
||||
if err != nil {
|
||||
return tls.Certificate{}, err
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue