Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Deprecate and remove go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho #5550

Closed
MrAlias opened this issue May 9, 2024 · 9 comments · Fixed by #6207
Assignees
Labels
abandoned Relates to a module that has been abandoned and is scheduled for deprecation and removal instrumentation: otelecho

Comments

@MrAlias
Copy link
Contributor

MrAlias commented May 9, 2024

This module has been identified to not have an owner. Based on the project's ownership policy, this module will be deprecated and then removed.

How to keep this module

For this module to continue in this repository, it needs a sponsor.

If you would like to sponsor this module and become an owner, please comment in this issue about your desire. As an owner you will assume the following responsibilities:

  • You will need to be a member of the OpenTelemetry organization and maintain that membership.
    • If you are not an existing member, we can add you to the community. This is not a disqualification, but something you will need in the process of becoming a sponsor.
  • You will be responsible for keeping up with the instrumented library. Any "upstream" changes that impact this module need to be proactively handle by you.
  • You will be expected to review any Pull Requests or Issues created that relate to this module.
  • You will be responsible for the stability and versioning compliance of the module.

You will need to have a good working knowledge of the code this module is instrumenting and, ideally, familiarity with the existing module code.

How this module will be removed

This module is in the process of being deprecated. After that deprecation notice has been published, we will wait 3 months or 2 two releases (whichever is the longer time period). After that time period, this module will be removed from this repository and no more versions of the module will be published.

Resurrection

If a sponsor is found after the module has been deprecated or removed, these operations can be reversed (i.e. coded added back, deprecation notice removed).

@MrAlias MrAlias added instrumentation: otelecho abandoned Relates to a module that has been abandoned and is scheduled for deprecation and removal labels May 9, 2024
@pellared pellared changed the title Deprecate and remove go.opentelemetry.io/otel/instrumentation/github.com/labstack/echo/otelecho Deprecate and remove go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho May 10, 2024
@MrAlias MrAlias self-assigned this May 22, 2024
MrAlias added a commit that referenced this issue May 23, 2024
MrAlias added a commit that referenced this issue Jul 3, 2024
Review Note:

- the otellogrus tests were updated to the API changes in `logtest`.
- semconv are upgraded to v1.26.0.

---

### Added

- Add the new `go.opentelemetry.io/contrib/detectors/azure/azurevm`
package to provide a resource detector for Azure VMs. (#5422)
- Add support to configure views when creating MeterProvider using the
config package. (#5654)
- The `go.opentelemetry.io/contrib/config` add support to configure
periodic reader interval and timeout. (#5661)
- Add log support for the autoexport package. (#5733)
- Add support for disabling the old runtime metrics using the
`OTEL_GO_X_DEPRECATED_RUNTIME_METRICS=false` environment variable.
(#5747)
- Add support for signal-specific protocols environment variables
(`OTEL_EXPORTER_OTLP_TRACES_PROTOCOL`,
`OTEL_EXPORTER_OTLP_LOGS_PROTOCOL`,
`OTEL_EXPORTER_OTLP_METRICS_PROTOCOL`) in
`go.opentelemetry.io/contrib/exporters/autoexport`. (#5816)
- The `go.opentelemetry.io/contrib/processors/minsev` module is added.
This module provides and experimental logging processor with a
configurable threshold for the minimum severity records must have to be
recorded. (#5817)
- The `go.opentelemetry.io/contrib/processors/baggagecopy` module.
This module is a replacement of
`go.opentelemetry.io/contrib/processors/baggage/baggagetrace`. (#5824)

### Changed

- Improve performance of
`go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc`
with the usage of `WithAttributeSet()` instead of `WithAttribute()`.
(#5664)
- Improve performance of
`go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp` with the
usage of `WithAttributeSet()` instead of `WithAttribute()`. (#5664)
- Update `go.opentelemetry.io/contrib/config` to latest released
configuration schema which introduces breaking changes where
`Attributes` is now a `map[string]interface{}`. (#5758)
- Upgrade all dependencies of `go.opentelemetry.io/otel/semconv/v1.25.0`
to `go.opentelemetry.io/otel/semconv/v1.26.0`. (#5847)

### Fixed

- Custom attributes targeting metrics recorded by the
`go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp` are not
ignored anymore. (#5129)
- The double setup in
`go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace/example`
that caused duplicate traces. (#5564)
- The superfluous `response.WriteHeader` call in
`go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp` when the
response writer is flushed. (#5634)
- Use `c.FullPath()` method to set `http.route` attribute in
`go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin`.
(#5734)
- Out-of-bounds panic in case of invalid span ID in
`go.opentelemetry.io/contrib/propagators/b3`. (#5754)

### Deprecated

- The
`go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho`
package is deprecated.
If you would like to become a Code Owner of this module and prevent it
from being removed, see [#5550]. (#5645)
- The
`go.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron`
package is deprecated.
If you would like to become a Code Owner of this module and prevent it
from being removed, see [#5552]. (#5646)
- The `go.opentelemetry.io/contrib/samplers/aws/xray` package is
deprecated.
If you would like to become a Code Owner of this module and prevent it
from being removed, see [#5554]. (#5647)
- The `go.opentelemetry.io/contrib/processors/baggage/baggagetrace`
package is deprecated.
Use the added `go.opentelemetry.io/contrib/processors/baggagecopy`
package instead. (#5824)
- Use `baggagecopy.NewSpanProcessor` as a replacement for
`baggagetrace.New`.
- `NewSpanProcessor` accepts a `Fitler` function type that selects which
baggage members are added to a span.
- `NewSpanProcessor` returns a `*baggagecopy.SpanProcessor` instead of a
`trace.SpanProcessor` interface.
      The returned type still implements the interface.

[#5550]:
#5550
[#5552]:
#5552
[#5554]:
#5554
@debuggerpk
Copy link

Hi, I want to become the maintainer of this. We use otel and echo a lot internally. Next steps?

@dmathieu
Copy link
Member

dmathieu commented Jul 22, 2024

We recommend you to join the next SIG meeting so you can introduce yourself.
You can find the date/hour and zoom link for that meeting in the shared calendar: https://github.com/open-telemetry/community/?tab=readme-ov-file#calendar

See also https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/CONTRIBUTING.md#code-owners

@ricardobeat
Copy link

This is now on the verge of removal. If @debuggerpk has not stepped in already, is there a chance an existing member can pick up maintenance of this library? I see past activity by @dmathieu, @MrAlias @pellared.

Echo is one of the top HTTP frameworks for Go, it would be a shame to lose official support. I imagine many people would be able to contribute but cannot dedicate time to an OpenTelemetry organization membership.

@debuggerpk
Copy link

I plan to attend tommorow's meeting.

@chr1shung
Copy link

Hi can I get some update on this ?
@debuggerpk will you be the maintainer of this module in the future ? thanks

@debuggerpk
Copy link

unfortunately no. despite my best efforts, i cannot seem to find time.

@scorpionknifes
Copy link
Member

Hi guys, I'm happy to become the code owner for this project, currently using this for work. However due to timezone (4 am) restrictions I won't be able to attend the go SIG (might change in the future), hope that's fine since I think I qualify all the requirements.

And a follow up question what does versioning compliance of the module. entail?

@myorn
Copy link

myorn commented Oct 2, 2024

Hi @scorpionknifes. Were you able to become the code owner?

@pellared
Copy link
Member

pellared commented Oct 2, 2024

@scorpionknifes, feel free to create a PR that would make you a code owner. I guess both me and @dmathieu can support you as we have seen you active and appreciate your contributions.

versioning compliance of the module

IMO it means to follow https://github.com/open-telemetry/opentelemetry-go/blob/main/VERSIONING.md (and https://go.dev/doc/modules/version-numbers). Probably we should clarify it in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
abandoned Relates to a module that has been abandoned and is scheduled for deprecation and removal instrumentation: otelecho
Projects
Development

Successfully merging a pull request may close this issue.

8 participants