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

[demo] - load-generator Adapt OpenFeature OFREP instead of IN_PROCESS #1563

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

aepfli
Copy link

@aepfli aepfli commented Mar 10, 2025

OpenFeature supports multiple different modes.
The newest implementation relies on threads and other python internal, which seem to be monkeypatched by locust.
Due to this, the IN_PROCESS mode is not working properly anymore and is causing issues.

Instead we suggest to switch to the OFREP (OpenFeature Remote Evaluation Protocol) for this usecase. This is a simple http call which will return all evaluate flags, and will regularly poll for changes.

This pr contains the helm changes matching open-telemetry/opentelemetry-demo#2114 - but my helm knowledge is limited, please let me know, if i am missing anything here.

OpenFeature supports multiple different modes.
The newest implementation relies on threads and other python internal,
which seem to be monkeypatched by locust.
Due to this, the IN_PROCESS mode is not working properly anymore and
is causing issues.

Instead we suggest to switch to the OFREP (OpenFeature Remote Evaluation Protocol)
for this usecase. This is a simple http call which will return all evaluate flags,
and will regularly poll for changes.

Signed-off-by: Simon Schrottner <simon.schrottner@dynatrace.com>
@julianocosta89
Copy link
Member

hey @aepfli, I've tried to push to your branch, but got permission denied.

You need to:

  1. Bump the minor version here: https://github.com/open-telemetry/opentelemetry-helm-charts/blob/main/charts/opentelemetry-demo/Chart.yaml#L4
  2. Add the following helm charts locally:
    a. helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
    b. helm repo add jaeger https://jaegertracing.github.io/helm-charts
    c. helm repo add prometheus https://prometheus-community.github.io/helm-charts
    d. helm repo add grafana https://grafana.github.io/helm-charts
    e. helm repo add opensearch https://opensearch-project.github.io/helm-charts/
  3. From the root folder run the command to generate examples:
    a. make generate-examples CHARTS=opentelemetry-demo
  4. Commit the modified files.

Signed-off-by: Simon Schrottner <simon.schrottner@dynatrace.com>
@aepfli aepfli force-pushed the feat/openfeature-ofrep-instead-of-inprocess-for-loadgenerator branch from cc6390f to 0eb924f Compare March 13, 2025 11:18
@aepfli
Copy link
Author

aepfli commented Mar 13, 2025

thank you for this great explanation - did all the steps and committed all changes

Thank you!

@aepfli aepfli marked this pull request as ready for review March 13, 2025 11:20
@aepfli aepfli requested review from puckpuck and a team as code owners March 13, 2025 11:20
@julianocosta89
Copy link
Member

@puckpuck this one should be good to go, should we release 2.0.2?

@puckpuck
Copy link
Contributor

Because this needs a new Load Generator image, we need to make this as part of a Demo 2.0.2 release.

@JaredTan95
Copy link
Member

Because this needs a new Load Generator image, we need to make this as part of a Demo 2.0.2 release.

yes, pls update appVersion: 2.0.1 to appVersion: 2.0.2 in chart.yaml when Demo 2.0.2 released. @aepfli

@aepfli
Copy link
Author

aepfli commented Mar 14, 2025

@JaredTan95 @puckpuck i increased the appVersion ;) thank you

@julianocosta89
Copy link
Member

@aepfli you need to generate the examples again 😢

Signed-off-by: Simon Schrottner <simon.schrottner@dynatrace.com>
@aepfli
Copy link
Author

aepfli commented Mar 14, 2025

oh my bad - rookie mistake, fixed and pushed

@puckpuck puckpuck changed the title feat(load-generator): Adapt OpenFeature OFREP instead of IN_PROCESS [demo] - load-generator Adapt OpenFeature OFREP instead of IN_PROCESS Mar 15, 2025
@julianocosta89
Copy link
Member

Demo 2.0.2 released, this one should be good to go!

@aepfli
Copy link
Author

aepfli commented Mar 19, 2025

is there anything i can do to fix this build?

@julianocosta89
Copy link
Member

@aepfli it seems flagd-ui is failing to start due to lack of memory.
https://github.com/open-telemetry/opentelemetry-helm-charts/actions/runs/13856207080/job/38999361225?pr=1563#step:4:19302

This has nothing to do with your PR, but we may need to merge another PR before yours, or add the changes from #1571 in here.

Basically we just need to increase falgd-ui memory to 100M: https://github.com/open-telemetry/opentelemetry-demo/pull/2120/files.

@open-telemetry/helm-approvers what would be the best approach here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants