-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add section on how to build an otelcol dist #1234
Add section on how to build an otelcol dist #1234
Conversation
Signed-off-by: Juraci Paixão Kröhling <juraci@kroehling.de>
Signed-off-by: Juraci Paixão Kröhling <juraci@kroehling.de>
73f9801
to
acf4d51
Compare
## Creating your own OpenTelemetry Collector distribution | ||
|
||
A guide on how to create your own distribution is available in this blog post: | ||
["Building your own OpenTelemetry Collector distribution"](https://medium.com/p/42337e994b63) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I may be wrong but isn't medium content sometimes locked behind a paywall now? Not sure if a freely available project both as in beer and speech should rely on extended documentation that might not be accessible to everyone.
Nothing against medium or content they host. Just not sure if OpenTelemetry as a product should direct users to content/documentation/guides that they might not be able to read.
Great article BTW @jpkrohling
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, I see this is the official OpenTelemetry blog on medium. I suppose this decision has already been taken then by the maintainers and we are fine with publishin there? Please disregard if that's the case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sometimes locked behind a paywall now
Each author/publication can choose to make money on Medium and have a paywall in front of individual posts, or to allow all users to have free access to the content, without any paywalls. I always publish articles without opting-in for the paywall, and I believe the OpenTelemetry publication also doesn't.
Updates #1234 Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
… add 'messaging.url' span attribute (#1234) * boto3sqs: Fix various issues * do not use 'otel' prefix for propagation keys to make propagation compatible with other SQS instrumentations like Node.Js Inject propergator.fields keys into the MessageAttributeNames argument for 'receive_message' calls to retreive the corresponding message attributes * add 'messaging.url' span attribute to SQS spans * add boto3sqs instrumentation to tox.ini to run tests in CI * add some basic unit tests * changelog * fix linting issues * unset instrumented flag on uninstrument
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Removes `cmd/oteltestbedcol` from list since it has no Makefile <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #35606
) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Removes `cmd/oteltestbedcol` from list since it has no Makefile <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#35606
) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Removes `cmd/oteltestbedcol` from list since it has no Makefile <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#35606
…atus (#35648) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Refactors the `extension/healthcheckv2extension/internal/status` into `pkg/status`. This exposes the aggregator to be used by other extensions to gather component status information using the `extension.StatusWatcher`. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Closes #34692 <!--Describe what testing was performed and which tests were added.--> #### Testing Being it was a refactor and all the same tests provided coverage, no additional testing was added. <!--Describe the documentation added.--> #### Documentation Added a `README.md` to the `pkg/status` to provide information on where this package can be used. --------- Co-authored-by: Matthew Wear <matthew.wear@gmail.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Update OTel mode to implementation to serialize log body into body.* fields <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
…rning error to avoid upstream retries (#35740) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Log metrics validation error instead of returning to avoid upstream retries <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue #35741 Fixes Wrong comparison func implement in translator/prometheusremotewrite. <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> Signed-off-by: Juraj Michalek <juraj.michalek132@gmail.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Follow up from #35703. Draft starting the work on adding support for remote write 2.0 in the translation package. Adding support for translating gauges. This is first iteration and to keep the PR small * we don't handle duplicate metrics * only support gauges * don't handle other labels than metric name * don't handle exemplars * don't handle metadata <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue #33661 Fixes <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Juraj Michalek <juraj.michalek132@gmail.com> Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com> Co-authored-by: David Ashpole <dashpole@google.com>
#### Description Follow [the contract](https://github.com/open-telemetry/opentelemetry-collector/blob/df3c9e38a80ccc3b14705462be2e2e51c628a3b3/receiver/doc.go#L10) for cloudflare receiver <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Related #5909 <!--Describe what testing was performed and which tests were added.--> #### Testing Added
… prefix conflict in OTel mapping mode (#35651) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Metric names should be flattened and exported as is, even when one metric name is a prefix of another. Same for attributes for all logs, metrics and traces. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Version of MySQL older than 8.0.22 use the `show slave status` vs `show replica status` view to retrieve replication metrics. This allows for both the newer & older views to work and retrieve data for the two actual replica metrics available (`mysql.replica.time_behind_source` & `mysql.replica.sql_delay`). <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #35217 <!--Describe what testing was performed and which tests were added.--> #### Testing Manual testing against MySQL versions 8.0, 8.0.37, & MariaDB Ver 15.1 Distrib 10.5.26-MariaDB <!--Describe the documentation added.--> #### Documentation None needed <!--Please delete paragraphs that you did not use before submitting.-->
open-telemetry#36671) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds config validation logic and custom OTTL functions required for signal to metrics connector. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Related to: open-telemetry#35930 <!--Describe what testing was performed and which tests were added.--> #### Testing Uni tests added. <!--Describe the documentation added.--> #### Documentation N/A <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Christos Markou <chrismarkou92@gmail.com>
…bject if original value is empty (open-telemetry#36466) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR extends the previous check whether an attribute value has not been present with a check for an empty value in the original resource attributes. This way, attributes, such as `k8s.namespace.name` will be set based on the retrieved kubernetes resource also if the original value has been set to e.g. an empty string <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36373 <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit tests --------- Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com> Co-authored-by: Christos Markou <chrismarkou92@gmail.com>
…esource (open-telemetry#36479) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This change removes as assumption that all metrics in a single scrape come from the same resource. This is indeed not true when `honor_labels` is set to `true` AND when the scraped metrics contain a `job` or `instance` label. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36477 <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit tests <!--Describe the documentation added.--> #### Documentation N/A <!--Please delete paragraphs that you did not use before submitting.-->
…etry#36762) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Support parsing more time format by configuration instead of only iso8601. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36650 <!--Describe what testing was performed and which tests were added.--> #### Testing - Added unit test for time parsing function - Validated locally to send data with time format in the issue and received successfully <!--Describe the documentation added.--> #### Documentation Add some new configurations, including `time_format` and `time_offset`. ```yaml receivers azureeventhub: connection: "xxxxx" format: "azure" # optional time_format: # All supported time format. Default is empty string array, which means using the current iso8601 parser. The format is based on https://pkg.go.dev/time#Layout. If no time-zone info, will use UTC time. logs: ["01/02/2006 15:04:05","2006-01-02 15:04:05","2006-01-02T15:04:05Z07:00"] metrics: [""] traces: [""] # optional time_offset: # The offset hours to parsed time. Mainly for cases when there's no time-zone info in time string. default is 0. logs: -8 metrics: +8 traces: -8 ``` <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Antoine Toulme <atoulme@splunk.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Generates simple histograms using telemetrygen <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes <!--Describe what testing was performed and which tests were added.--> #### Testing Test with a local otel collector with debug output ``` bin/telemetrygen metrics --metrics 5 --otlp-http --otlp-endpoint "localhost:4318" --metric-type Histogram --otlp-insecure ``` Output from debug Exporter: ``` Resource SchemaURL: https://opentelemetry.io/schemas/1.13.0 ScopeMetrics #0 ScopeMetrics SchemaURL: InstrumentationScope Metric #0 Descriptor: -> Name: gen -> Description: -> Unit: -> DataType: Histogram -> AggregationTemporality: Cumulative HistogramDataPoints #0 StartTimestamp: 2024-11-13 16:22:50.633365 +0000 UTC Timestamp: 2024-11-13 16:22:51.633367 +0000 UTC Count: 0 Sum: 0.000000 ExplicitBounds #0: 0.000000 ExplicitBounds #1: 1.000000 ExplicitBounds #2: 2.000000 ExplicitBounds #3: 3.000000 ExplicitBounds #4: 4.000000 Buckets #0, Count: 0 Buckets #1, Count: 0 Buckets #2, Count: 0 Buckets #3, Count: 0 Buckets #4, Count: 0 ResourceMetrics #1 Resource SchemaURL: https://opentelemetry.io/schemas/1.13.0 ScopeMetrics #0 ScopeMetrics SchemaURL: InstrumentationScope Metric #0 Descriptor: -> Name: gen -> Description: -> Unit: -> DataType: Histogram -> AggregationTemporality: Cumulative HistogramDataPoints #0 StartTimestamp: 2024-11-13 16:22:50.639942 +0000 UTC Timestamp: 2024-11-13 16:22:51.639942 +0000 UTC Count: 1 Sum: 1.000000 ExplicitBounds #0: 0.000000 ExplicitBounds #1: 1.000000 ExplicitBounds #2: 2.000000 ExplicitBounds #3: 3.000000 ExplicitBounds #4: 4.000000 Buckets #0, Count: 0 Buckets #1, Count: 1 Buckets #2, Count: 0 Buckets #3, Count: 0 Buckets #4, Count: 0 ResourceMetrics #2 Resource SchemaURL: https://opentelemetry.io/schemas/1.13.0 ScopeMetrics #0 ScopeMetrics SchemaURL: InstrumentationScope Metric #0 Descriptor: -> Name: gen -> Description: -> Unit: -> DataType: Histogram -> AggregationTemporality: Cumulative HistogramDataPoints #0 StartTimestamp: 2024-11-13 16:22:50.6404 +0000 UTC Timestamp: 2024-11-13 16:22:51.640401 +0000 UTC Count: 2 Sum: 4.000000 ExplicitBounds #0: 0.000000 ExplicitBounds #1: 1.000000 ExplicitBounds #2: 2.000000 ExplicitBounds #3: 3.000000 ExplicitBounds #4: 4.000000 Buckets #0, Count: 0 Buckets #1, Count: 1 Buckets #2, Count: 0 Buckets #3, Count: 1 Buckets #4, Count: 0 ResourceMetrics #3 Resource SchemaURL: https://opentelemetry.io/schemas/1.13.0 ScopeMetrics #0 ScopeMetrics SchemaURL: InstrumentationScope Metric #0 Descriptor: -> Name: gen -> Description: -> Unit: -> DataType: Histogram -> AggregationTemporality: Cumulative HistogramDataPoints #0 StartTimestamp: 2024-11-13 16:22:50.640729 +0000 UTC Timestamp: 2024-11-13 16:22:51.640729 +0000 UTC Count: 3 Sum: 3.000000 ExplicitBounds #0: 0.000000 ExplicitBounds #1: 1.000000 ExplicitBounds #2: 2.000000 ExplicitBounds #3: 3.000000 ExplicitBounds #4: 4.000000 Buckets #0, Count: 1 Buckets #1, Count: 1 Buckets #2, Count: 1 Buckets #3, Count: 0 Buckets #4, Count: 0 ResourceMetrics #4 Resource SchemaURL: https://opentelemetry.io/schemas/1.13.0 ScopeMetrics #0 ScopeMetrics SchemaURL: InstrumentationScope Metric #0 Descriptor: -> Name: gen -> Description: -> Unit: -> DataType: Histogram -> AggregationTemporality: Cumulative HistogramDataPoints #0 StartTimestamp: 2024-11-13 16:22:50.641073 +0000 UTC Timestamp: 2024-11-13 16:22:51.641073 +0000 UTC Count: 4 Sum: 12.000000 ExplicitBounds #0: 0.000000 ExplicitBounds #1: 1.000000 ExplicitBounds #2: 2.000000 ExplicitBounds #3: 3.000000 ExplicitBounds #4: 4.000000 Buckets #0, Count: 0 Buckets #1, Count: 0 Buckets #2, Count: 1 Buckets #3, Count: 2 Buckets #4, Count: 1 {"kind": "exporter", "data_type": "metrics", "name": "debug"} ``` <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com>
… buckets." (open-telemetry#36771) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR fix the flaky unit test in previous PR: open-telemetry#36336, and add back the implementation of splitting the emf log logic. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue open-telemetry#36727 <!--Describe what testing was performed and which tests were added.--> #### Testing Unit test updated and passed with 10 count: ``` go test -run TestAddToGroupedMetric -count 10 -tags=always PASS ok github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsemfexporter 0.016s ```
…#36617) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds some integration tests for the extension. It uses the `containerd/cgroups` package to modify the current process's allocated cgroup resources and assert the corresponding values for GOMEMLIMIT/GOMAXPROCS set by the extension. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36545 <!--Describe what testing was performed and which tests were added.--> #### Testing Cgroup resources modification requires privileged access in GHA runner instances, thus the test must be run with `sudo`. The `go` toolchain has an `exec` flag to run tests binary(s) via another binary such as sudo. The Makefile has been modified to run Go tests files with build tag `integration` && `sudo` with the sudo command. I am not very confident with this solution, as I could not find any other component requiring privileged execution for its integration tests and the "go test -tags=integration,sudo" would run for all of them. I am all ears on other testing strategies for this use case. Similar strategy in cgroups package https://github.com/containerd/cgroups/blob/main/.github/workflows/ci.yml#L101 <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com>
…ks (open-telemetry#36490) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Include otel mapping mode in benchmarks. Benchmark output after PR: ``` BenchmarkExporter BenchmarkExporter/logs/none/small_batch BenchmarkExporter/logs/none/small_batch-16 6822 176638 ns/op 56613 events/s 67520 B/op 366 allocs/op BenchmarkExporter/logs/none/medium_batch BenchmarkExporter/logs/none/medium_batch-16 711 1424497 ns/op 70200 events/s 659403 B/op 3547 allocs/op BenchmarkExporter/logs/none/large_batch BenchmarkExporter/logs/none/large_batch-16 73 14194865 ns/op 70448 events/s 6579703 B/op 35362 allocs/op BenchmarkExporter/logs/none/xlarge_batch BenchmarkExporter/logs/none/xlarge_batch-16 8 149908624 ns/op 66707 events/s 65549538 B/op 353425 allocs/op BenchmarkExporter/logs/ecs/small_batch BenchmarkExporter/logs/ecs/small_batch-16 9754 119932 ns/op 83381 events/s 58283 B/op 205 allocs/op BenchmarkExporter/logs/ecs/medium_batch BenchmarkExporter/logs/ecs/medium_batch-16 1111 1066750 ns/op 93743 events/s 567772 B/op 1939 allocs/op BenchmarkExporter/logs/ecs/large_batch BenchmarkExporter/logs/ecs/large_batch-16 98 10781992 ns/op 92747 events/s 5664212 B/op 19277 allocs/op BenchmarkExporter/logs/ecs/xlarge_batch BenchmarkExporter/logs/ecs/xlarge_batch-16 12 100553539 ns/op 99450 events/s 56311261 B/op 192335 allocs/op BenchmarkExporter/logs/raw/small_batch BenchmarkExporter/logs/raw/small_batch-16 6729 150247 ns/op 66557 events/s 66090 B/op 306 allocs/op BenchmarkExporter/logs/raw/medium_batch BenchmarkExporter/logs/raw/medium_batch-16 872 1410297 ns/op 70907 events/s 647732 B/op 2946 allocs/op BenchmarkExporter/logs/raw/large_batch BenchmarkExporter/logs/raw/large_batch-16 86 13031394 ns/op 76738 events/s 6448428 B/op 29330 allocs/op BenchmarkExporter/logs/raw/xlarge_batch BenchmarkExporter/logs/raw/xlarge_batch-16 7 146359644 ns/op 68325 events/s 64410492 B/op 293284 allocs/op BenchmarkExporter/logs/otel/small_batch BenchmarkExporter/logs/otel/small_batch-16 6106 209745 ns/op 47677 events/s 78851 B/op 557 allocs/op BenchmarkExporter/logs/otel/medium_batch BenchmarkExporter/logs/otel/medium_batch-16 591 1938568 ns/op 51584 events/s 774185 B/op 5459 allocs/op BenchmarkExporter/logs/otel/large_batch BenchmarkExporter/logs/otel/large_batch-16 63 18661379 ns/op 53587 events/s 7710898 B/op 54460 allocs/op BenchmarkExporter/logs/otel/xlarge_batch BenchmarkExporter/logs/otel/xlarge_batch-16 6 181679956 ns/op 55042 events/s 76745945 B/op 544078 allocs/op BenchmarkExporter/metrics/none/small_batch BenchmarkExporter/metrics/none/small_batch-16 2510 448792 ns/op 155974 events/s 152798 B/op 1713 allocs/op BenchmarkExporter/metrics/none/medium_batch BenchmarkExporter/metrics/none/medium_batch-16 264 4350868 ns/op 160887 events/s 1500377 B/op 16942 allocs/op BenchmarkExporter/metrics/none/large_batch BenchmarkExporter/metrics/none/large_batch-16 27 43335054 ns/op 161532 events/s 15268646 B/op 169058 allocs/op BenchmarkExporter/metrics/none/xlarge_batch BenchmarkExporter/metrics/none/xlarge_batch-16 3 436136611 ns/op 160500 events/s 148399600 B/op 1689214 allocs/op BenchmarkExporter/metrics/ecs/small_batch BenchmarkExporter/metrics/ecs/small_batch-16 2737 446311 ns/op 156841 events/s 152732 B/op 1713 allocs/op BenchmarkExporter/metrics/ecs/medium_batch BenchmarkExporter/metrics/ecs/medium_batch-16 285 4364476 ns/op 160386 events/s 1499515 B/op 16942 allocs/op BenchmarkExporter/metrics/ecs/large_batch BenchmarkExporter/metrics/ecs/large_batch-16 28 42909936 ns/op 163132 events/s 15257589 B/op 169035 allocs/op BenchmarkExporter/metrics/ecs/xlarge_batch BenchmarkExporter/metrics/ecs/xlarge_batch-16 3 436389200 ns/op 160407 events/s 148410208 B/op 1689192 allocs/op BenchmarkExporter/metrics/raw/small_batch BenchmarkExporter/metrics/raw/small_batch-16 2762 434453 ns/op 161122 events/s 152447 B/op 1712 allocs/op BenchmarkExporter/metrics/raw/medium_batch BenchmarkExporter/metrics/raw/medium_batch-16 297 4155242 ns/op 168462 events/s 1495773 B/op 16939 allocs/op BenchmarkExporter/metrics/raw/large_batch BenchmarkExporter/metrics/raw/large_batch-16 26 46246858 ns/op 151362 events/s 15313028 B/op 169127 allocs/op BenchmarkExporter/metrics/raw/xlarge_batch BenchmarkExporter/metrics/raw/xlarge_batch-16 3 446472140 ns/op 156785 events/s 148512901 B/op 1689409 allocs/op BenchmarkExporter/metrics/otel/small_batch BenchmarkExporter/metrics/otel/small_batch-16 966 1094160 ns/op 63976 events/s 411000 B/op 4317 allocs/op BenchmarkExporter/metrics/otel/medium_batch BenchmarkExporter/metrics/otel/medium_batch-16 100 10548664 ns/op 66359 events/s 4081192 B/op 42984 allocs/op BenchmarkExporter/metrics/otel/large_batch BenchmarkExporter/metrics/otel/large_batch-16 12 100395094 ns/op 69725 events/s 40648423 B/op 428777 allocs/op BenchmarkExporter/metrics/otel/xlarge_batch BenchmarkExporter/metrics/otel/xlarge_batch-16 1 1244547766 ns/op 56245 events/s 403634000 B/op 4289457 allocs/op BenchmarkExporter/traces/none/small_batch BenchmarkExporter/traces/none/small_batch-16 7238 165796 ns/op 60315 events/s 69068 B/op 396 allocs/op BenchmarkExporter/traces/none/medium_batch BenchmarkExporter/traces/none/medium_batch-16 738 1595338 ns/op 62683 events/s 678407 B/op 3852 allocs/op BenchmarkExporter/traces/none/large_batch BenchmarkExporter/traces/none/large_batch-16 68 14710161 ns/op 67980 events/s 6758368 B/op 38386 allocs/op BenchmarkExporter/traces/none/xlarge_batch BenchmarkExporter/traces/none/xlarge_batch-16 7 157086820 ns/op 63659 events/s 67476374 B/op 383729 allocs/op BenchmarkExporter/traces/ecs/small_batch BenchmarkExporter/traces/ecs/small_batch-16 6787 172987 ns/op 57808 events/s 69166 B/op 396 allocs/op BenchmarkExporter/traces/ecs/medium_batch BenchmarkExporter/traces/ecs/medium_batch-16 636 1682196 ns/op 59446 events/s 680048 B/op 3854 allocs/op BenchmarkExporter/traces/ecs/large_batch BenchmarkExporter/traces/ecs/large_batch-16 66 15326165 ns/op 65248 events/s 6764220 B/op 38397 allocs/op BenchmarkExporter/traces/ecs/xlarge_batch BenchmarkExporter/traces/ecs/xlarge_batch-16 7 149772892 ns/op 66768 events/s 67389404 B/op 383586 allocs/op BenchmarkExporter/traces/raw/small_batch BenchmarkExporter/traces/raw/small_batch-16 7142 157775 ns/op 63381 events/s 68012 B/op 376 allocs/op BenchmarkExporter/traces/raw/medium_batch BenchmarkExporter/traces/raw/medium_batch-16 841 1461469 ns/op 68424 events/s 665574 B/op 3649 allocs/op BenchmarkExporter/traces/raw/large_batch BenchmarkExporter/traces/raw/large_batch-16 82 15247393 ns/op 65585 events/s 6655255 B/op 36392 allocs/op BenchmarkExporter/traces/raw/xlarge_batch BenchmarkExporter/traces/raw/xlarge_batch-16 7 155530213 ns/op 64296 events/s 66475566 B/op 363736 allocs/op BenchmarkExporter/traces/otel/small_batch BenchmarkExporter/traces/otel/small_batch-16 5460 192121 ns/op 52050 events/s 78487 B/op 596 allocs/op BenchmarkExporter/traces/otel/medium_batch BenchmarkExporter/traces/otel/medium_batch-16 661 1883279 ns/op 53099 events/s 774757 B/op 5857 allocs/op BenchmarkExporter/traces/otel/large_batch BenchmarkExporter/traces/otel/large_batch-16 57 17856127 ns/op 56003 events/s 7729568 B/op 58441 allocs/op BenchmarkExporter/traces/otel/xlarge_batch BenchmarkExporter/traces/otel/xlarge_batch-16 6 188566934 ns/op 53032 events/s 77184328 B/op 584382 allocs/op PASS ``` <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#35889 <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR is the implementation for the logs signal related to the new libhoney receiver. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue open-telemetry#36693
open-telemetry#36869) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR is part of open-telemetry#29017, and a spin-off from open-telemetry#36820. It changes the existing context inferrer logic to also take into consideration the functions and enums used on the statements. (open-telemetry#36820 (comment)) New logic: - Find all `path`, function names(`editor`, `converter`), and `enumSymbol` on the statements - Pick the highest priority context (same existing logic) based on the `path.Context` values - If the chosen context does not support all used functions and enums, it goes through it's lower contexts (wide scope contexts that does support the chosen context as a path context) testing them and choosing the first one that supports them. - If no context that can handle the functions and enums is found, the inference fail and an empty value is returned. The parser collection was adapted to support the new context inferrer configuration requirements. **Other important changes:** Currently, it's possible to have paths to contexts root objects, for example: `set(attributes["body"], resource)`. Given `resource` has no dot separators on the path, the grammar extracts it into the `path.Fields` slice, letting the `path.Context` value empty. Why? This grammar behaviour is still necessary to keep backward compatibility with paths without context, otherwise it would start requiring contexts for all paths independently of the parser configuration. Previous PRs didn't take this edge case into consideration, and a few places needed to be changed to address it: - Context inferrer (`getContextCandidate`) - Parser `prependContextToStatementPaths` function. - Reusable OTTL contexts (`contexts/internal`) (not part of this PR, it will be fixed by open-telemetry#36820) When/If we reach the point to deprecate paths _without_ context, all those conditions can be removed, and the grammar changed to require and extract the `path` context properly. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue open-telemetry#29017 <!--Describe what testing was performed and which tests were added.--> #### Testing Unit tests <!--Describe the documentation added.--> #### Documentation No changes <!--Please delete paragraphs that you did not use before submitting.-->
) #### Description This PR is the implementation for the traces signal related to the new libhoney receiver. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue open-telemetry#36693
…try#36911) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Mark the Libhoney receiver as Alpha. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36693
…t for objects retrieved using the `watch` mode (open-telemetry#36432) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR ensures that the structure of log records generated by the k8sobjects receiver is the same, regardless of the mode (`watch` or `pull`) being used. This also solves the issue of the `k8s.namespace.name` attribute not being set for objects retrieved with `watch` mode. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36352 <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit tests and adapted e2e tests --------- Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com> Co-authored-by: Christos Markou <chrismarkou92@gmail.com>
…r. (open-telemetry#36894) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The PR merge in latest semconv pkg and update existing semantic conventions utilization. And further update `awsxrayexporter` to be able to handle following both new versions of http span attributes: `http.response.status_code` migrated from [http.status_code](https://opentelemetry.io/docs/specs/semconv/attributes-registry/http/#http-status-code) `url.query` migrated from [http.target](https://opentelemetry.io/docs/specs/semconv/attributes-registry/http/#http-target). Otel Java SDK has renamed `telemetry.auto.version` to `telemetry.distro.version` ([Upstream PR](open-telemetry/opentelemetry-java-instrumentation#9065)), update `awsxrayexporter` to be able to detect both attributes. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue N/A <!--Describe what testing was performed and which tests were added.--> #### Testing Unit test passed <!--Describe the documentation added.--> #### Documentation N/A
…pen-telemetry#36914) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Ignore the value returned by the stat Innodb_buffer_pool_pages_misc if out-of-bounds. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#35495 <!--Describe what testing was performed and which tests were added.--> #### Testing Add an integration test.
…elemetry#36920) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Allow the cgroupruntime extension to set GOMAXPROCS based on AWS ECS metadata. See related issue for detailed informations. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36814 <!--Describe what testing was performed and which tests were added.--> #### Testing Added integration test with `httptest` for the ECS metadata endpoint. Something to clarify: open-telemetry#36617 (comment) <!--Describe the documentation added.--> #### Documentation Added extension name and link in the README. <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Romain Dauby <romain.dauby@gmail.com> Co-authored-by: Roger Coll <roger.coll@elastic.co>
…pen-telemetry#37031) (open-telemetry#37063) Update docker image and collector configuration in examples/demo to keep metrics working on port 8888 *The gap between versions 0.88.0 and 0.116.1 is widening* <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Update docker image used in the example from otel/opentelemetry-collector:**0.88.0** to otel/opentelemetry-collector:**0.116.1**. This update requires some changes to the collector configuration (otel-collector-config.yaml) due to a breaking change in the collector. In version 0.116.1, the collector no longer exposes configurations on 0.0.0.0 by default. Collector configuration to keep metrics working on port 8888 ``` telemetry: metrics: readers: - pull: exporter: prometheus: host: '0.0.0.0' port: 8888 ``` <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Closes open-telemetry#37031 <!--Describe what testing was performed and which tests were added.--> #### Testing - Traces are exactly the same in Jaeger after updating the image/config - Traces are exactly the same in Zipkin after updating the image/config - Metrics endpoint 8889 is working /metrics - Metrics endpoint 8888 is working /metrics (after adjustment in the collector at service/telemetry/metrics/readers) <!--Describe the documentation added.--> ``` cd examples/demo/ && docker compose up ``` ✔️ All services are up and running ✔️ Metric logs are visible ✔️ Trace logs are visible ✔️ Client and server tracing are available in both Zipkin and Jaeger ``` otel-collector-1 | 2025-01-07T10:43:29.029Z info Traces {"kind": "exporter", "data_type": "traces", "name": "debug", "resource spans": 1, "spans": 8} otel-collector-1 | 2025-01-07T10:43:29.029Z info Metrics {"kind": "exporter", "data_type": "metrics", "name": "debug", "resource metrics": 1, "metrics": 7, "data points": 7} ``` --------- Co-authored-by: Curtis Robert <crobert@splunk.com>
…telemetry#36852) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adding core logic for the signal to metrics connector. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Related to open-telemetry#35930 <!--Describe what testing was performed and which tests were added.--> #### Testing Unit tests added <!--Describe the documentation added.--> #### Documentation Documentation is already added in README. <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Christos Markou <chrismarkou92@gmail.com>
…et/deployment information (open-telemetry#37088) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR adapts the k8sattributes processor to update its internally stored pods with the information about their respective replica sets and deployments, after the replica set information is received via the informer. This can happen during the initial sync of the processor, where it can happen that the replica set information for existing pods is received after the pods have already been received and stored internally. <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#37056 <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit test <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com>
…tryGen` (open-telemetry#37131) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The affected test was added to verify the solution implemented for open-telemetry#37056. However, this seems to not have been fully solved yet. Therefore, to avoid flaky test runs, this test is skipped for now, until the issue is fully resolved <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#37125 <!--Describe what testing was performed and which tests were added.--> #### Testing Disabled the flaky test until open-telemetry#37056 is fully solved --------- Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com>
…v2 (open-telemetry#36797) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Migrating datadog exporter to use aws sdk v2 <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue refer to open-telemetry#36699 <!--Describe what testing was performed and which tests were added.--> #### Testing passes tests. updated mock client implementations to support the new SDK interfaces. <!--Describe the documentation added.--> #### Documentation no need to update. <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Reusing the `GOTEST_INTEGRATION_OPT` was skipping Sudo tests `-skip Sudo` <!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#36920 (comment) <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> Co-authored-by: Sean Marciniak <30928402+MovieStoreGuy@users.noreply.github.com>
…set context's cache value (#37166) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description - Improved error message for higher context `cache` access. Now when users try to configure statements like `set(log.attributes["log_key"], resource.cache["log_key"])`, they will see an error message similar to: ```diff + access to cache must be be performed using the same statement's context, please replace "resource.cache[log_key]" with "log.cache[log_key]"` - invalid argument at position 1: segment "cache" from path "resource.cache[log_key]" is not a valid path nor a valid OTTL keyword for the Resource context - review https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/pkg/ottl/contexts/ottlresource to see all valid paths ``` - Added the `WithCache` option to all OTTL transformation contexts. This change allows API consumer to set the initial cache value or share it among different contexts/executions. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Split of #36888 <!--Describe what testing was performed and which tests were added.--> #### Testing Unit tests <!--Please delete paragraphs that you did not use before submitting.-->
…o container name/id has been specified in the incoming resource attributes (#36844) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR adds a fallback logic to the processor by adding the container attributes for an incoming resource without the container name/id being explicitly set, provided the related pod only contains one container. If there are more than one container in a pod, the container name/id still have to be set explicitly. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #34189 <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit tests <!--Describe the documentation added.--> #### Documentation Adapted the readme to reflect the changes made in this PR <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com>
…ort without service.name Resource Attribute (#37034) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Fixing Nil Pointer Exception regression introduced in #35725 <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #37030 <!--Describe what testing was performed and which tests were added.--> #### Testing Unit test adjusted to include test Metric without `service.name` Resource Attributes <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Send json lines to doris rather than json array. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #36896 <!--Describe what testing was performed and which tests were added.--> #### Testing unit test <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
#37117) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Update signal to metrics connector to add resource attribute from telemetry settings. More information can be perused here: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/connector/signaltometricsconnector/README.md#single-writer <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Related to #35930 <!--Describe what testing was performed and which tests were added.--> #### Testing Unit tests added <!--Describe the documentation added.--> #### Documentation Documentation is already added in README as part of the initial PR: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/connector/signaltometricsconnector/README.md#single-writer <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds a new `FormatTime(time, format)` converter to convert any time to a human readable string with the specified format <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #36870 --------- Signed-off-by: odubajDT <ondrej.dubaj@dynatrace.com> Co-authored-by: Edmo Vamerlatti Costa <11836452+edmocosta@users.noreply.github.com>
… the signal context (#36883) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR adds a new `ParseValueExpression` method to the OTTL parser which allows users of this package to extract data from the context using OTTL <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes #35621 <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit and e2e tests <!--Describe the documentation added.--> #### Documentation Added godoc comments for the added methods and types <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com> Co-authored-by: Evan Bradley <11745660+evan-bradley@users.noreply.github.com> Co-authored-by: Tyler Helmuth <12352919+TylerHelmuth@users.noreply.github.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Following #35169. This PR moves `filelog.container.removeOriginalTimeField` feature gate to stable. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Related to #33389 <!--Describe what testing was performed and which tests were added.--> #### Testing Updated <!--Describe the documentation added.--> #### Documentation Updated <!--Please delete paragraphs that you did not use before submitting.--> Signed-off-by: ChrsMark <chrismarkou92@gmail.com>
Signed-off-by: Juraci Paixão Kröhling juraci@kroehling.de
Description: Added readme section with links to resources on how to create custom OpenTelemetry Collector distributions.
Link to tracking Issue: open-telemetry/opentelemetry-collector#213
Testing: n/a
Documentation: n/a