Robert Pająk
ae7ac48ebf
otlplog: Emit Record.EventName field ( #6211 )
...
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/6185
2025-01-25 22:23:10 +01:00
Matthieu MOREL
74937a2952
[chore]: enable all rules of perfsprint ( #5978 )
...
#### Description
[perfsprint](https://github.com/catenacyber/perfsprint ) is a linter for
performance, aiming at usages of fmt.Sprintf which have faster
alternatives.
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2024-11-18 10:04:50 +01:00
Damien Mathieu
2c15a77942
Fix lint issues for golangci-lint 1.62.0 ( #5967 )
...
This fixes the new lint issues brough by the golangci-lint upgrade in
https://github.com/open-telemetry/opentelemetry-go/pull/5966
2024-11-13 08:58:59 +01:00
Seva Orlov
b62a3fdd25
Override insecure when endpoint URL is set ( #5944 )
...
When an endpoint is set in both Environment variable with "http" and
passed in WithEndpointURL with "https", Insecure is set to true while
the endpoint is used from WithEndpointURL.
Example
- OTEL_EXPORTER_OTLP_ENDPOINT is set to "http://env.endpoint/prefix "
- WithEndpointURL is passed "https://someendpoint/somepath "
The real endpoint used is "http://someendpoint/somepath ", which is
actually neither of both.
---------
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2024-11-07 13:50:10 +01:00
Robert Pająk
2a50fab505
otlplog: Add instrumentation scope attributes ( #5933 )
...
Towards https://github.com/open-telemetry/opentelemetry-go/issues/5844
2024-10-31 12:28:11 +01:00
Robert Pająk
afd1311f3e
otlpmetric: Add instrumentation scope attributes ( #5935 )
...
Towards https://github.com/open-telemetry/opentelemetry-go/issues/5844
2024-10-31 11:34:44 +01:00
Tyler Yahn
86a51dc049
[chore] Remove unnecessary type declaration in templated transforms ( #5906 )
...
The type is fully defined by the switch, no need to be redundant.
2024-10-22 16:06:26 -07:00
Matthieu MOREL
6edc7a63df
[chore]: enable expected-actual rule from testifylint ( #5848 )
...
Testifylint is a linter that provides best practices with the use of
testify.
This PR enables
[expected-actual](https://github.com/Antonboom/testifylint?tab=readme-ov-file#expected-actual )
rule from [testifylint](https://github.com/Antonboom/testifylint )
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2024-09-26 12:04:33 +02:00
Matthieu MOREL
d284a86fa5
[chore]: enable error-nil rule from testifylint ( #5843 )
...
Testifylint is a linter that provides best practices with the use of
testify.
This PR enables
[error-nil](https://github.com/Antonboom/testifylint?tab=readme-ov-file#error-nil )
rule from [testifylint](https://github.com/Antonboom/testifylint )
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2024-09-25 11:07:59 +02:00
Matthieu MOREL
62cc0c7441
[chore]: enable error-is-as rule from testifylint ( #5836 )
...
Testifylint is a linter that provides best practices with the use of
testify.
This PR enables
[error-is-as](https://github.com/Antonboom/testifylint?tab=readme-ov-file#error-is-as )
rule from [testifylint](https://github.com/Antonboom/testifylint )
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2024-09-24 19:17:16 +02:00
Matthieu MOREL
063239fa37
[chore]: enable len and empty rules from testifylint ( #5832 )
...
#### Description
Testifylint is a linter that provides best practices with the use of
testify.
This PR enables
[empty](https://github.com/Antonboom/testifylint?tab=readme-ov-file#empty )
and
[len](https://github.com/Antonboom/testifylint?tab=readme-ov-file#len )
rules from [testifylint](https://github.com/Antonboom/testifylint )
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
2024-09-21 08:04:28 -07:00
Matthieu MOREL
aef9e4fa2f
[chore]: enable bool-compare rule from testifylint ( #5829 )
...
#### Description
Testifylint is a linter that provides best practices with the use of
testify.
This PR enables
[bool-compare](https://github.com/Antonboom/testifylint?tab=readme-ov-file#bool-compare )
rule from [testifylint](https://github.com/Antonboom/testifylint )
It's linter provided by golangci-lint.
Here all available rules are activated except those who require to be
fixed. This PR only fixes bool-compare so the quantity of changes stays
reasonnable for reviewers.
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com >
Co-authored-by: Damien Mathieu <42@dmathieu.com >
2024-09-20 09:39:27 +02:00
pree-dew
534ce5ab09
Fix duplicate logs across resources ( #5803 )
...
1. Create scope map with resource key to map the correct log record.
2. Add test case with different resource and scope combination
Fixes #5782
### Benchmarks
```
goos: darwin
goarch: arm64
pkg: go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc/internal/transform
│ old.txt │ new.txt │
│ sec/op │ sec/op vs base │
ResourceLogs-8 3.266µ ± 3% 1.100µ ± 5% -66.33% (p=0.000 n=10)
│ old.txt │ new.txt │
│ B/op │ B/op vs base │
ResourceLogs-8 8.297Ki ± 0% 2.430Ki ± 0% -70.72% (p=0.000 n=10)
│ old.txt │ new.txt │
│ allocs/op │ allocs/op vs base │
ResourceLogs-8 178.00 ± 0% 52.00 ± 0% -70.79% (p=0.000 n=10)
```
---------
Co-authored-by: Sam Xie <sam@samxie.me >
2024-09-17 13:12:49 +02:00
Damien Mathieu
a3c512aa95
Fix gosec overflow alerts ( #5799 )
...
To allow the golangci-lint upgrade in #5796 .
---------
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com >
2024-09-13 09:11:50 +02:00
Nathan Baulch
506a9baf5e
Fix typos ( #5763 )
2024-09-09 08:53:15 +02:00
Zhihan Li
83ae9bd0e3
Bugfix: OTLP exporters should not percent decode the key when parsing HEADERS env vars ( #5705 )
...
Bugfix #5623
As stated in the issue, we need to avoid parsing the key and instead
implement a validation check for it. I've added some unit tests to
verify this fix.
However, I noticed a comment at the top of this file:
```
// Code created by gotmpl. DO NOT MODIFY.
// source: internal/shared/otlp/envconfig/envconfig.go.tmpl
```
It seems that `internal/shared/otlp/envconfig/envconfig.go.tmpl` is the
source template for this file. Since this template matches
`exporters/otlp/otlptrace/otlptracegrpc/internal/envconfig/envconfig.go`,
I updated the template to maintain consistency. I’m not entirely sure if
this approach is correct, so please confirm if this is the right course
of action.
---------
Co-authored-by: Fools <54661071+Charlie-lizhihan@users.noreply.github.com >
Co-authored-by: Damien Mathieu <42@dmathieu.com >
Co-authored-by: Robert Pająk <pellared@hotmail.com >
Co-authored-by: Chester Cheung <cheung.zhy.csu@gmail.com >
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com >
2024-08-21 07:53:24 -07:00
Sam Xie
48f6a11b75
Correct the comment for the priority of options and environments on otlpmetric ( #5641 )
...
Part of https://github.com/open-telemetry/opentelemetry-go/issues/5379
2024-07-24 18:42:37 -07:00
Damien Mathieu
3e17ef99d6
Allow relying on InstrumentationScope in SpanStub and fix remaining deprecation issues ( #5627 )
...
Rather than the deprecated InstrumentationLibrary
This is a replacement for
https://github.com/open-telemetry/opentelemetry-go/pull/3104 , as after
this, there is no usage of `instrumentation.Library` within the SDK
anymore.
---------
Co-authored-by: Robert Pająk <pellared@hotmail.com >
Co-authored-by: Sam Xie <sam@samxie.me >
2024-07-24 09:33:07 +02:00
Damien Mathieu
8f965b6b85
Add resource metrics transform benchmarks ( #5602 )
...
Co-authored-by: David Ashpole <dashpole@google.com >
2024-07-12 09:38:29 +02:00
Sam Xie
aab5af16af
Correct the comment for the priority of options and environments on otlptracehttp ( #5584 )
...
part of https://github.com/open-telemetry/opentelemetry-go/issues/5379
2024-07-08 18:14:06 -07:00
Sam Xie
82fe9aa1e3
Generate internal/transform in otlploggrpc ( #5553 )
...
Part of #5056
It abstracts the `transform` package from `otlploghttp` and makes it a
shared template. Then, it generates the abstracted `transform` package
into `otlploggrpc`.
For full usage of this transform package, check
https://github.com/open-telemetry/opentelemetry-go/pull/5522
2024-06-28 10:15:35 +02:00
Damien Mathieu
6d45f283c7
Add errorlint linter ( #5535 )
...
This is the last PR adding missing linters, adding
[errorlint](https://github.com/polyfloyd/go-errorlint ).
Co-authored-by: Sam Xie <sam@samxie.me >
2024-06-25 10:55:00 -07:00
Damien Mathieu
3e91436a3b
Add unconvert linter ( #5529 )
...
This adds the unconvert linter, and fixes every new issue related to it.
Co-authored-by: Sam Xie <sam@samxie.me >
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com >
2024-06-21 15:00:26 -07:00
Tyler Yahn
6a0fa3c911
Upgrade semconv use to v1.26.0 ( #5490 )
...
Follow up to #5476
2024-06-06 09:36:59 -07:00
Tyler Yahn
999c6a07b3
Update all semconv use to v1.25.0 ( #5374 )
...
Resolve #5373
2024-05-19 07:16:33 +02:00
Kevin Burke
654ce01171
exporters/otlp/otlptrace: fix incorrect documentation ( #5098 )
...
Co-authored-by: Sam Xie <sam@samxie.me >
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2024-05-09 07:38:03 +02:00
Sam Xie
bf37c5a3a4
Revert the usage of go.opentelemetry.io/proto/slim ( #5253 )
...
* Revert "otlpmetrichttp: Use go.opentelemetry.io/proto/slim/otlp (#5222 )"
This reverts commit 6e92163d6a .
* Revert "otlploghttp: Use go.opentelemetry.io/proto/slim/otlp (#5216 )"
This reverts commit fe3de7059e .
* Remove slim dep
* Fix CI
2024-04-23 07:12:25 +02:00
Robert Pająk
6e92163d6a
otlpmetrichttp: Use go.opentelemetry.io/proto/slim/otlp ( #5222 )
2024-04-22 13:07:29 +02:00
David Ashpole
540663b064
add summary support to the OTLP exporter ( #5100 )
...
Co-authored-by: Chester Cheung <cheung.zhy.csu@gmail.com >
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com >
2024-03-25 08:15:02 -07:00
Mickael Alliel
9a515ceb74
otlptracehttp, otlpmetrichttp: Add WithProxy option ( #4906 )
2024-03-12 11:04:06 +01:00
Tyler Yahn
0510d11b8d
Use slices.SortFunc in OTLP trace exporter instead of sort.Slice ( #4989 )
...
Co-authored-by: Sam Xie <sam@samxie.me >
2024-02-29 08:08:43 +01:00
Robert Pająk
7dea232a46
[chore] Simplify the license header ( #4987 )
2024-02-29 07:05:28 +01:00
David Ashpole
ec03021ff0
add exemplar support to the OTLP HTTP and gRPC exporters ( #4900 )
2024-02-12 07:31:18 -08:00
Damien Mathieu
33f5cf460b
Add WithEndpointURL option to OTLP over HTTP exporters ( #4808 )
...
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2024-01-19 15:25:10 +01:00
Robert Pająk
01472db75f
Upgrade use of semconv to v1.24.0 ( #4754 )
2024-01-11 12:56:07 +01:00
Robert Pająk
8ceba1368a
otlpmetrichttp otlptracehttp: Do not parse non-protobuf reponses ( #4719 )
2023-11-16 18:33:54 +01:00
Michael Blum
be5064a387
Use url.PathUnescape rather than url.QueryUnescape when parsing OTLP headers and resource attributes env vars ( #4698 ) ( #4699 )
2023-11-09 12:51:59 -06:00
Robert Pająk
437bc82bc4
otlptracegrpc otlpmetricgrpc: Remove redundant append of DialOptions ( #4684 )
2023-11-02 07:49:10 +01:00
Robert Pająk
d18277e3c6
Decouple otlpmetricgrpc and otlpmetrichttp from otlpmetric ( #4660 )
2023-10-24 14:20:46 +02:00
Robert Pająk
5b28921940
[chore] Add gosec via golangci-lint ( #4645 )
2023-10-19 08:47:07 +02:00
Tyler Yahn
5dff273a1e
Use gofumpt instead of gofmt ( #4623 )
...
* Use gofumpt instead of gofmt in golangci-lint conf
* Run gofumpt fixes
* Format generated templates
---------
Co-authored-by: Chester Cheung <cheung.zhy.csu@gmail.com >
2023-10-16 10:02:21 -07:00
Tyler Yahn
3904523917
Flatten sdk/metric/aggregation into sdk/metric ( #4435 )
...
* Deprecate the aggregation pkg
* Decouple the internal/aggregate from aggregation pkg
* Add Aggregation to the metric pkg
* Do not use sdk/metric/aggregation in stdoutmetric exporter
* Update all generated templates
* Update prom exporter
* Fix view example
* Add changes to changelog
* Update CHANGELOG.md
Co-authored-by: Robert Pająk <pellared@hotmail.com >
* Rename Sum to AggregationSum
* Fix comments
* Centralize validation of aggregation in pipeline
* Remove validation of agg in manual_reader selector opt
* Fix merge
---------
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2023-08-14 08:15:15 -07:00
Tyler Yahn
199dc34a09
Support default histogram selection in OTLP exporter ( #4437 )
...
* Support default histogram selection in OTLP exporter
* Add changes to changelog
2023-08-14 07:21:04 -07:00
Tyler Yahn
319cb3a3be
Deprecate the otlptrace/internal packages ( #4425 )
...
* Stop generating otlptrace/internal and deprecate
* Remove the tracetransform templates
They are no longer used.
* Add change stub to changelog
* Add PR number to changelog
2023-08-10 14:25:53 -07:00
Tyler Yahn
9452b93012
Upgrade all use of semconv to v1.21.0 ( #4408 )
...
* Upgrade all use of semconv to v1.21.0
* Add change to changelog
* Add AIX and ZOS OS support
* Upgrade semconv for merged changes
---------
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2023-08-07 09:30:40 -07:00
Tyler Yahn
f67ecb35dc
Decouple otlp/otlpmetric/otlpmetricgrpc from otlp/internal and otlp/otlpmetric/internal using gotmp ( #4404 )
...
* Add shared otlpmetric templates
* Generate otlpmetricgrpc/internal with gotmpl
* Use local internal in otlpmetricgrpc
* Add decoupling change to changelog
2023-08-03 17:08:49 -07:00
Tyler Yahn
58c9cf65d6
Decouple otlp/otlptrace/otlptracehttp from otlp/internal and otlp/otlptrace/internal using gotmpl ( #4401 )
...
* Use template retry pkg in otlpconfig
* Template out all otlptrace internal
* Add envconfig pkg to otlptrace/internal
* Generate otlptrace/internal/otlpconfig
* Revert templatizing otlptracegrpc
* Add changes to changelog
* Fix lint
* Add partialsuccess to internal shared
* Use gotmpl to generate otlptracehttp/internal
* Add change to changelog
2023-08-03 13:34:48 -07:00
Tyler Yahn
4928282877
Decouple otlp/otlptrace/internal from otlp/internal using gotmpl ( #4397 )
...
* Add gotmpl
* Add shared retry pkg
* Use template retry pkg in otlpconfig
* Update license-check to look at first 4 lines
* Template out all otlptrace internal
* Add envconfig pkg to otlptrace/internal
* Generate otlptrace/internal/otlpconfig
* Revert templatizing otlptracegrpc
* Add changes to changelog
* Fix lint
---------
Co-authored-by: Robert Pająk <pellared@hotmail.com >
2023-08-02 12:28:35 -07:00