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

[deprecation] Remove support for expvar metrics #4722

Closed
2 tasks done
yurishkuro opened this issue Sep 4, 2023 · 1 comment
Closed
2 tasks done

[deprecation] Remove support for expvar metrics #4722

yurishkuro opened this issue Sep 4, 2023 · 1 comment
Labels
good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement

Comments

@yurishkuro
Copy link
Member

yurishkuro commented Sep 4, 2023

Currently most Jaeger components (including HotROD) accept a CLI flag that allows selecting between prometheus, expvar, and none as metrics backends. Most production use cases utilize prometheus metrics, which is the default in Jaeger.

Proposal

  • Deprecate the corresponding CLI flags and remove the ability to configure metrics backends at all
  • Still support the endpoint name CLI flag, and if explicitly set to empty string do not mount the endpoint

Rollout plan

  1. Add CLI flag deprecation notice, but do not change anything -- Deprecate expvar metrics backend #4740
  2. After three releases, remove the CLI flag and the other backends -- Remove support for expvar-backed metrics #5437

Comments

  • Removing expvar will remove the last dependency on go-kit
  • I am working on a new version of HotROD walkthrough that will reflect this change, as well as the OTEL upgrade
yurishkuro added a commit that referenced this issue Sep 9, 2023
## Which problem is this PR solving?
- Step 1 of #4722

## Description of the changes
- add deprecation notice for `expvar` as metrics backend
- change HotROD default backend to `prometheus`

## How was this change tested?
- run binaries locally to observe the messages
```
$ go run ./cmd/all-in-one help
      --metrics-backend string                                    Defines which metrics backend to use for metrics reporting: prometheus, none, or expvar (deprecated, will be removed after 2024-01-01 or in release v1.53.0, whichever is later)  (default "prometheus")

$ go run ./cmd/all-in-one --metrics-backend=expvar
2023/09/09 19:09:01 using expvar as metrics backend (deprecated, will be removed after 2024-01-01 or in release v1.53.0, whichever is later)
```

---------

Signed-off-by: Yuri Shkuro <github@ysh.us>
@yurishkuro yurishkuro added help wanted Features that maintainers are willing to accept but do not have cycles to implement good first issue Good for beginners labels May 10, 2024
@joeyyy09
Copy link
Member

I'd like to take this up, Thanks!

yurishkuro added a commit that referenced this issue May 27, 2024
## Which problem is this PR solving?
- Part of #4722

## Description of the changes
- This PR removes deprecated expvar CLI flags for expvar-backed metrics
- The internal parameters/settings of some components are still exposed
via expvar. The implementation was changed to no longer depend on
go-kit, thus reducing the dependencies

## How was this change tested?
- Tested locally by running the application without the deprecated flags
to ensure that it functions correctly.

## Checklist
- [x] I have read
https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
- [x] I have signed all commits
- [ ]  I have added unit tests for the new functionality
- [] I have run lint and test steps successfully
  - for `jaeger`: `make lint test`
  - for `jaeger-ui`: `yarn lint` and `yarn test`

---------

Signed-off-by: Joeyyy09 <imt_2021063@iiitm.ac.in>
Signed-off-by: Harshith Mente <109957201+joeyyy09@users.noreply.github.com>
Signed-off-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Signed-off-by: Yuri Shkuro <github@ysh.us>
Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Co-authored-by: Yuri Shkuro <github@ysh.us>
varshith257 pushed a commit to varshith257/jaeger that referenced this issue Jun 2, 2024
## Which problem is this PR solving?
- Part of jaegertracing#4722

## Description of the changes
- This PR removes deprecated expvar CLI flags for expvar-backed metrics
- The internal parameters/settings of some components are still exposed
via expvar. The implementation was changed to no longer depend on
go-kit, thus reducing the dependencies

## How was this change tested?
- Tested locally by running the application without the deprecated flags
to ensure that it functions correctly.

## Checklist
- [x] I have read
https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
- [x] I have signed all commits
- [ ]  I have added unit tests for the new functionality
- [] I have run lint and test steps successfully
  - for `jaeger`: `make lint test`
  - for `jaeger-ui`: `yarn lint` and `yarn test`

---------

Signed-off-by: Joeyyy09 <imt_2021063@iiitm.ac.in>
Signed-off-by: Harshith Mente <109957201+joeyyy09@users.noreply.github.com>
Signed-off-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Signed-off-by: Yuri Shkuro <github@ysh.us>
Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Co-authored-by: Yuri Shkuro <github@ysh.us>
Signed-off-by: Vamshi Maskuri <gwcchintu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement
Projects
None yet
Development

No branches or pull requests

2 participants