Skip to content
This repository was archived by the owner on Jul 28, 2026. It is now read-only.

Upgrade OTel collector to v0.27.0 - #641

Closed
mapno wants to merge 13 commits into
grafana-cold-storage:mainfrom
mapno:upgrade-otel
Closed

Upgrade OTel collector to v0.27.0#641
mapno wants to merge 13 commits into
grafana-cold-storage:mainfrom
mapno:upgrade-otel

Conversation

@mapno

@mapno mapno commented Jun 10, 2021

Copy link
Copy Markdown
Contributor

PR Description

Upgrades OTel collector from v0.21.0 to v0.27.0. The builder pkg is made internal and now we need to use the service.Application interface from two layers above.

Which issue(s) this PR fixes

None.

Notes to the Reviewer

It's using a personal fork to propagate the context to the builders, which is needed for our custom processors and exporters.

PR Checklist

  • CHANGELOG updated
  • Documentation added
  • Tests updated

@mapno
mapno requested a review from joe-elliott as a code owner June 10, 2021 08:57
@mapno
mapno requested a review from yvrhdn June 10, 2021 09:29

@yvrhdn yvrhdn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some small comments, didn't get through all the changes yet.

Comment thread pkg/tempo/internal/tempoutils/server.go Outdated
Comment thread pkg/tempo/internal/tempoutils/server.go Outdated
@mapno mapno changed the title Upgrade OTel collector to v0.22.0 Upgrade OTel collector to v0.27.0 Jun 10, 2021
Comment thread pkg/tempo/instance.go
Factories: factories,
BuildInfo: buildInfo,
ParserProvider: &cfg,
LoggingOptions: []zap.Option{zap.Development()},

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we want to disable the app's own logging. I'm not sure with this one

@rfratto rfratto left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to leave the real review of this to people more familiar with the collector, but just a small nit about using personal orgs

Comment thread go.mod
// loadbalancingexporter uses non-fixed version of batchpersignal which fetches latest and causes problems
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/batchpersignal => github.com/open-telemetry/opentelemetry-collector-contrib/pkg/batchpersignal v0.27.0

replace go.opentelemetry.io/collector => github.com/mapno/opentelemetry-collector v0.24.1-0.20210610132247-eb06509beaa2

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you move this to the grafana org? IMO we should have as few personal forks as possible. (I'm the worst offender of this and need to remove the rfratto instances here)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does v0.24.1-... refer to? Is it this commit: mapno/opentelemetry-collector@eb06509 Those Go version always confuse me.
Are you planning to PR these changes? If so, we can link the PR as comment, makes it easier to track when we can remove the fork.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any particular reason we're not vendoring otelcol directly?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does v0.24.1-... refer to? Is it this commit: mapno/opentelemetry-collector@eb06509 Those Go version always confuse me.

Correct. It's referencing that commit. I also find go modules confusing, but the reason for that version is that it's referencing an unreleased commit, thus it's using a pseudo-version. If I'm not mistaken, it's using the 3rd form for pseudo-versions, but I don't know why it's v0.24.x and not v0.27.x.

Are you planning to PR these changes? If so, we can link the PR as comment, makes it easier to track when we can remove the fork.

Any particular reason we're not vendoring otelcol directly?

Yes, that's the plan. I've just opened the PR to the collector. Initially I used a fork to get things moving fast, so we could integrate rapidly the new sampling policies we're working on. It'll probably won't be necessary to use my fork or Grafana's fork if it gets merged soon.

Can you move this to the grafana org?

I'll wait a bit to get a response from the upstream. If it doesn't get merged we can create the org fork and make it official.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@yvrhdn yvrhdn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some remarks, but overall this seems good. Nice work Mario! 💪🏻

Disclaimer: I'm not familiar with the collector and how it's supposed to work, so I might be missing stuff 😓

Comment thread go.mod
// loadbalancingexporter uses non-fixed version of batchpersignal which fetches latest and causes problems
replace github.com/open-telemetry/opentelemetry-collector-contrib/pkg/batchpersignal => github.com/open-telemetry/opentelemetry-collector-contrib/pkg/batchpersignal v0.27.0

replace go.opentelemetry.io/collector => github.com/mapno/opentelemetry-collector v0.24.1-0.20210610132247-eb06509beaa2

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does v0.24.1-... refer to? Is it this commit: mapno/opentelemetry-collector@eb06509 Those Go version always confuse me.
Are you planning to PR these changes? If so, we can link the PR as comment, makes it easier to track when we can remove the fork.

Comment thread pkg/prom/instance/instance.go
Comment thread pkg/tempo/automaticloggingprocessor/factory.go Outdated
Comment thread pkg/tempo/config.go Outdated
Comment thread pkg/tempo/config.go Outdated
Comment thread pkg/tempo/instance.go Outdated

@yvrhdn yvrhdn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We just have to decide what to do with the fork, but other than that LGTM 👍

@mapno

mapno commented Jun 11, 2021

Copy link
Copy Markdown
Contributor Author

Bumping this one more time to v0.28.0 with the merged cmd's ctx commit.

@mapno mapno mentioned this pull request Jun 30, 2021
3 tasks
@mapno

mapno commented Jun 30, 2021

Copy link
Copy Markdown
Contributor Author

Closed in favor of #700

@mapno mapno closed this Jun 30, 2021
@github-actions github-actions Bot added the frozen-due-to-age Locked due to a period of inactivity. Please open new issues or PRs if more discussion is needed. label Apr 12, 2024
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Apr 12, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

frozen-due-to-age Locked due to a period of inactivity. Please open new issues or PRs if more discussion is needed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants