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

[installer] Separate webapp tracing config from workspace tracing config #9900

Merged
merged 5 commits into from
May 11, 2022

Conversation

andrew-farries
Copy link
Contributor

Description

Currently, the tracing related environment variables JAEGER_SAMPLER_TYPE and JAEGER_SAMPLER_PARAM are configured under experimental.workspace.tracing and are applied to these components:

pkg/components/agent-smith/daemonset.go
pkg/components/blobserve/deployment.go
pkg/components/content-service/deployment.go
pkg/components/image-builder-mk3/deployment.go
pkg/components/registry-facade/daemonset.go
pkg/components/server/deployment.go
pkg/components/ws-daemon/daemonset.go
pkg/components/ws-manager-bridge/deployment.go
pkg/components/ws-manager/deployment.go
pkg/components/ws-proxy/deployment.go

This PR makes the server component take it's tracing config from a new experimental.webapp.tracing config, as it should not (necessarily) use the same config as the the workspace components.

See this comment.

Related Issue(s)

Part of #9097

How to test

Create an installer config file containing this experimental section:

experimental:
  webapp:
    tracing:
      samplerType: probabilistic
      samplerParam: 12.5
  workspace:
    tracing:
      samplerType: remote
      samplerParam: 10.5

Get a versions.yaml for use with the installer:

docker run -it --rm "eu.gcr.io/gitpod-core-dev/build/versions:${version}" cat versions.yaml > versions.yaml

Then invoke the installer as:

go run . render --debug-version-file versions.yaml --config /path/to/config --use-experimental-config

The server and workspace components will use the correct environment variables from the correct section of the config.

Release Notes

Separate tracing installer config for the server and workspace components

Documentation

None

Andrew Farries added 5 commits May 10, 2022 11:03
Define it and WorkspaceTracingEnv in terms of a new `tracingEnv`
function. `WorkspaceTracingEnv` and `WebappTracingEnv` pass the
`*tracing` argument from the Workspace config and the WebApp
config respectively.
Rather than `WorkspaceTracingEnv`.
Check that the server deployment uses tracing values defined in
`expermental.webapp.tracing`.
@andrew-farries andrew-farries requested review from a team May 10, 2022 11:17
@github-actions github-actions bot added team: delivery Issue belongs to the self-hosted team team: webapp Issue belongs to the WebApp team team: workspace Issue belongs to the Workspace team labels May 10, 2022
Copy link
Member

@geropl geropl left a comment

Choose a reason for hiding this comment

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

👍

@roboquat roboquat merged commit ba261d7 into main May 11, 2022
@roboquat roboquat deleted the af/installer-webapp-tracing branch May 11, 2022 07:55
@roboquat roboquat added deployed: workspace Workspace team change is running in production deployed: webapp Meta team change is running in production labels May 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
deployed: webapp Meta team change is running in production deployed: workspace Workspace team change is running in production release-note size/L team: delivery Issue belongs to the self-hosted team team: webapp Issue belongs to the WebApp team team: workspace Issue belongs to the Workspace team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants