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

splitting up services into modules #872

Merged

Conversation

joshleecreates
Copy link
Contributor

@joshleecreates joshleecreates commented May 2, 2023

Fixes: #866

  • splits up services into multiple docker files
  • experiment with changing service definition for checkout service when kafka is enabled

todo:

  • fix checkout service to work without kafka
  • fix services that error without feature flag service
  • provide noop config for collector when observability backends are disabled

Changes

Please provide a brief description of the changes here.

Merge Requirements

For new features contributions please make sure you have completed the following
essential items:

  • CHANGELOG.md updated to document new feature additions
  • Appropriate documentation updates in the docs
  • Appropriate Helm chart updates in the helm-charts

Maintainers will not merge until the above have been completed. If you're unsure
which docs need to be changed ping the
@open-telemetry/demo-approvers.

- splits up services into multiple docker files
- experiment with changing service definition for checkout service when kafka is enabled

todo:

[ ] fix checkout service to work without kafka
[ ] fix services that error without feature flag service
[ ] provide noop config for collector when observability backends are
disabled
@puckpuck puckpuck self-assigned this May 9, 2023
puckpuck added 4 commits May 9, 2023 21:45
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
@puckpuck puckpuck mentioned this pull request May 13, 2023
2 tasks
@joshleecreates
Copy link
Contributor Author

Amazing, thanks @puckpuck !! This is working as expected for me now.

puckpuck added 5 commits May 19, 2023 21:55
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
@puckpuck puckpuck marked this pull request as ready for review May 20, 2023 02:50
@puckpuck puckpuck requested a review from a team May 20, 2023 02:50
@puckpuck
Copy link
Contributor

puckpuck commented May 20, 2023

This one is ready for review.

It splits out all components except from what is absolutely required to run the demo with an exposed UI. A start and stop script is included to facilitate specifying the proper command line options to start the various modules.

The following modules are what are split out from the core:

  • load - includes the load generator
  • observability - includes jaeger, prometheus, and grafana, as well as necessary changes to the collector
  • featureflags - includes the feature flag service with postrgres, as well as an environment variable flag for several services that have logic for feature flags.
  • kafka-extras - includes kafka, accounting, and fraud detection services as well as an environment variable flag for the checkout service
  • tests - tests included with demo

A full version of the demo can be run with a special full or all module when specified with the start script.

Starting the demo without any module, you use: ./start-demo.sh
Starting the demo with the load generator and observability components is: ./start-demo.sh load observability
Starting the full demo is: ./start-demo.sh full

Stopping the demo is: ./stop-demo.sh - which will stop all components and remove orphans if they exists.

/cc @open-telemetry/demo-approvers

@puckpuck puckpuck changed the title WIP splitting up services splitting up services into modules May 20, 2023
@puckpuck puckpuck added helm-update-required Requires an update to the Helm chart when released docs-update-required Requires documentation update v1.5 labels May 20, 2023
@cartersocha
Copy link
Contributor

Wow this is fantastic. Need to spend some more time running it but looks good so far.

Very exciting update! This opens up some really interesting extensibility options and a bit of maintainer dread 🍷

@cartersocha
Copy link
Contributor

cartersocha commented May 20, 2023

It seems to spam the starting and stopping logs for some services.
Screenshot 2023-05-20 at 1 18 14 PM
Screenshot 2023-05-20 at 1 19 05 PM

@cartersocha
Copy link
Contributor

product catalog, ad, checkout, and recommendation are failing when running just the script with no arguments due to the feature flag address env variable not being set

@joshleecreates
Copy link
Contributor Author

@cartersocha

product catalog, ad, checkout, and recommendation are failing when running just the script with no arguments due to the feature flag address env variable not being set

This sounds like the images need to be rebuilt maybe? These services work for me in all modes.

docker system prune followed by docker compose build should then let you run the script. This will be resolved for all users when the version tag gets bumped and the images based on these changes are published.

@austinlparker
Copy link
Member

2 things -

  1. Invoke scripts thru makefile
  2. Disable 'docker compose up' and instead direct people to use make targets

@github-actions github-actions bot removed the Stale label Jun 6, 2023
@austinlparker
Copy link
Member

Per discussion on call today and in thread -

  • We should try to keep docker compose up behavior the same between versions

Open question, could we make docker compose take parameters? i.e., docker compose up lite or whatever.

@joshleecreates
Copy link
Contributor Author

joshleecreates commented Jun 15, 2023

I can't find the original comment but I believe @julianocosta89 mentioned that docker compose up behavior should stay the same as this feature is implemented. I'm curious to hear wider thoughts on what is the most desirable dev experience that supports this enhancement.

Challenges:

  • make doesn't have a built in mechanism for arguments so it cannot be as dynamically extensible as the bash script provided by @puckpuck
  • the docker compose -f syntax is verbose
  • Either bash or make introduce an additional dev environment dependency (right now make is only needed for creating releases)

Ideas

Option 1:

Use the bash script and add a docker-compose.override.yml to restore default docker compose up functionality to be the full demo.
Full demo: docker compose up
Modules: ./start-demo.sh module

Option 2:

Use make with an environment variable for modules and add a docker-compose.override.yml.
Full demo: docker compose up
Modules: export MODULE=module && make run

Option 3:

Use make with hard-coded targets for modules and add a docker-compose.override.yml
Unlike with options 1 or 2, the script would need to be edited any time new modules are added, which would limit flexibility for vendor extensions on forks.
Full demo: docker compose up
Modules: make run module

Option 4:

Restore docker compose up and require docker compose -f syntax for users who want to run the demo in lite mode. No additional dependencies, and the annoying syntax is applied to the less common use case. We could make a single docker-compose.lite.yaml that simplifies the amount of chaining needed to run the "lite" version with the observability backends and feature flag services.

@github-actions
Copy link

This PR was marked stale due to lack of activity. It will be closed in 7 days.

@julianocosta89
Copy link
Member

Hey @joshleecreates I've mentioned that in here:
#927 (comment)

But that's only my opinion, I'm open to discuss this and go with the choice most of people like.

@austinlparker
Copy link
Member

I think we need to do Option 4. I don't want to break default behavior between releases, and ultimately we're designing around 'batteries included' experiences rather than limited ones.

@joshleecreates
Copy link
Contributor Author

@austinlparker makes sense.

I should have just made this last commit with my comment. It enables Options 1 + 4.

I do find the bash scripts convenient and will probably keep them locally somewhere if the decision is to remove them from the official. If that's the case, then this probably just needs a documentation update showing how an example of the lite usage without the scripts.

@github-actions
Copy link

github-actions bot commented Jul 4, 2023

This PR was marked stale due to lack of activity. It will be closed in 7 days.

puckpuck added 3 commits July 8, 2023 23:53
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
@puckpuck
Copy link
Contributor

puckpuck commented Jul 9, 2023

As discussed during the June 26th SIG meeting.

docker compose up will run the full demo and preserve functionality that was always there before.
The standard docker-compose.yml file is the same as it was before, with some updates on how the depends_on sections are done to be in line with the latest docker-compose file format.
A new file called docker-compose.minimal.yml can be used to run the demo without the Feature Flag service, or anything that depends on Kafka. Load Generator, and all Observability tooling will still run in this mode, as well as the core components for the demo itself.

Technically someone could specify docker compose -f docker-compose.minimal.yml up to run the demo in minimal mode, where the -f argument appears in the command line matters, and humans make errors. So we have some new make targets to provide easy buttons to start and stop the demo in full or minimal mode.

  • make start will start the full demo
  • make start-minimal will start the minimal demo
  • make stop will stop all things related to the demo

@puckpuck puckpuck requested a review from cartersocha July 9, 2023 05:01
Copy link
Contributor Author

@joshleecreates joshleecreates left a comment

Choose a reason for hiding this comment

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

This looks great, I appreciate the simplification over my original breakdown. 🚀 🎉

Copy link
Member

@julianocosta89 julianocosta89 left a comment

Choose a reason for hiding this comment

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

Great work on this everyone!
Awesome!

I think we can have the docs updated in a new PR.

@austinlparker austinlparker merged commit 5a05737 into open-telemetry:main Jul 10, 2023
AlexanderWert pushed a commit to AlexanderWert/opentelemetry-demo that referenced this pull request Jul 24, 2023
* WIP splitting up services

- splits up services into multiple docker files
- experiment with changing service definition for checkout service when kafka is enabled

todo:

[ ] fix checkout service to work without kafka
[ ] fix services that error without feature flag service
[ ] provide noop config for collector when observability backends are
disabled

* send to kafka only if defined

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* only check featureflag if env is defined

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split featureflag and kafka services

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove feature flag env var

* remove extra definitions in test file

* split out observability

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* set recommendation resources based on flag

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add start/stop scripts

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split modules

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split into modules

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* allows `docker compose up` for full

* default full demo, optional minimal mode

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* default full demo, optional minimal mode

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>
@joshleecreates joshleecreates deleted the multiple-docker-compose-files branch August 7, 2023 15:14
YANG-DB added a commit to opensearch-project/opentelemetry-demo that referenced this pull request Nov 7, 2023
* fix data-prepper image to a stable version
update fluent-bit.conf parser to emmit a different field name
adding support for prometheus-opensearch exporter
* add error wrapping for integration script
* [frontendproxy] Add opentelemetry_collector_http to envoy's cluster and expose /oltp-http/ endpoint to frontendproxy (open-telemetry#938)

Co-authored-by: Austin Parker <austin@ap2.io>

* splitting up services into modules (open-telemetry#872)

* WIP splitting up services

- splits up services into multiple docker files
- experiment with changing service definition for checkout service when kafka is enabled

todo:

[ ] fix checkout service to work without kafka
[ ] fix services that error without feature flag service
[ ] provide noop config for collector when observability backends are
disabled

* send to kafka only if defined

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* only check featureflag if env is defined

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split featureflag and kafka services

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove feature flag env var

* remove extra definitions in test file

* split out observability

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* set recommendation resources based on flag

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add start/stop scripts

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split modules

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split into modules

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* allows `docker compose up` for full

* default full demo, optional minimal mode

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* default full demo, optional minimal mode

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* Add trace based testing examples (open-telemetry#877)

* Adding a user purchasing product trace-based test case

* Adding more tests

* Adding run script

* Fixed yaml lint issues

* Adding license header to the files

* Adding trace-based tests for more services

* Updating tests and adding them on the same format as the integration tests

* Fixed payment tests

* Fixing e2e web tests

* Fixing details found by yamllint

* Updating trace-based tests to refer a protobuf file instead of embedding it

* Fixed data types for email test and improved test time

* Structured tests per service

* Added tests for frontend service following endpoints used on loadgenerator

* fixing yaml lint issues

* Fixing small issues on tests

* fix frontend tests (open-telemetry#950)

* [cartservice] Update OTel .NET to 1.5.1 (open-telemetry#957)

* [cartservice] Update OTel .NET to 1.5.1

* Update .NET docker images

* Update changelog

* Update alpine version

---------

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* [chore] build images for PRs (open-telemetry#955)

* [chore] build images for PRs

* Add missing "on:"

* Fix input type

* Add license header

* Do not fail fast

* test: comment cache-from

* Revert: test: comment cache-from

* Comment featureflagservice build

* Revert "[cartservice] Update OTel .NET to 1.5.1 (open-telemetry#957)"

This reverts commit 814a4e9.

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* [shippingservice] Update Rust deps and add TelemetryResourceDetector (open-telemetry#972)

* Update Rust deps and add TelemetryResourceDetector

* Changelog

* Update min versions

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* shippingservice-missing-cargolock-update (open-telemetry#982)

* fix: update frontendproxy's env  for minimal (open-telemetry#983)

* chore: update JS dependency (open-telemetry#978)

Co-authored-by: Austin Parker <austin@ap2.io>

* Run Checks on main (open-telemetry#973)

Co-authored-by: Austin Parker <austin@ap2.io>

* Fix flaky cartservice build (open-telemetry#984)

* update dotnet builder version

* update docker version

* fix yaml lint

* change builder image

* try different qemu container

* disable static web assets entirely

* fix build issue

* split stages and increase loglevel

---------

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* rollback to dnf6 (open-telemetry#990)

* Update AdService Dependencies (open-telemetry#986)

* update dependencies

* Update log4j version

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [FraudDetectionService] update dependencies (open-telemetry#987)

* FraudDetectionService update

* changelog

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* [LoadGenerator & RecommendatationService] update dependencies (open-telemetry#988)

* Update loadgen and add metrics

* Update RecommendationService

* changelog

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* Update Email Service Dependencies (open-telemetry#989)

* update ruby deps

* change to slim image

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [currencyService] Update OTel dependency (open-telemetry#991)

* Update currency service OTel dependency

* changelog

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* [FeatureFlagService] Update dependencies (open-telemetry#992)

* FeatureFlagService-Update dependencies

* changelog

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* update collector to build image using ocb (open-telemetry#944)

* update collector to build image using ocb

The collector in this repository now uses the otel collector builder to
build a custom binary which it embeds in a docker container for the
demo.

Still to do:

- [ ] update curl command to pull builder for specific architectures
- [ ] allow passing the version of the builder to use

Signed-off-by: Alex Boten <alex@boten.ca>

* update build-images

Signed-off-by: Alex Boten <aboten@lightstep.com>

* add license

Signed-off-by: Alex Boten <aboten@lightstep.com>

---------

Signed-off-by: Alex Boten <alex@boten.ca>
Signed-off-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* fix(tests): removing analyzer-rules as required gate for Tracebasedtesting (open-telemetry#997)

* fix(tests): updating valid card validation expected status code (open-telemetry#998)

Co-authored-by: Austin Parker <austin@ap2.io>

* chore(deps): update dependency stackexchange.redis to v2.6.122 (open-telemetry#1004)

* fix(tests): removing unused env var on trace-based tests (open-telemetry#1002)

Co-authored-by: Austin Parker <austin@ap2.io>

* TARGETARCH cannot have a default value, and set GOARCH similarly (open-telemetry#1014)

* chore: Update PHP Dependencies (open-telemetry#1009)

* update dependencies

1

* Update CHANGELOG.md

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* update readme (open-telemetry#1016)

* chore(deps): update dependency click to v8.1.6 (open-telemetry#999)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* chore(deps): update dependency deprecated to v1.2.14 (open-telemetry#1003)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* chore(deps): update docker/build-push-action action to v3.3.1 (open-telemetry#1005)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* fix(deps): update dependency com.google.api.grpc:proto-google-common-protos to v2.22.1 (open-telemetry#1012)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* chore(deps): update dependency configargparse to v1.5.5 (open-telemetry#1000)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* chore(deps): update dotnet monorepo (open-telemetry#1006)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* wrapper-validation-action from 1.0.6 to 1.1.0 (open-telemetry#1026)

* chore(deps): update opentelemetry-dotnet monorepo to v1.5.1 (open-telemetry#1008)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* fix(deps): update dependency @grpc/grpc-js to v1.8.18 (open-telemetry#1010)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* fix(deps): update dependency cookies-next to v2.1.2 (open-telemetry#1022)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* fix(deps): update dependency org.apache.kafka:kafka-clients to v3.5.1 (open-telemetry#1023)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* fix(deps): update dependency php-di/php-di to v7.0.3 (open-telemetry#1024)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* update upstream changes

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update opensearch for 2.9

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* issue open-telemetry#1030 is addressed please check it. (open-telemetry#1031)

* Update docker-compose.minimal.yml

* Update docker-compose.minimal.yml

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Update docker-compose.minimal.yml

* Update docker-compose.minimal.yml

* Remove spaces

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* fix(deps): update dependency react-query to v3.39.3 (open-telemetry#1025)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* [PaymentService] - Update node to LTS version and bump deps (open-telemetry#1029)

* Update node to LTS version and bump deps

* changelog

* Changelog

* Add Guance observability vendor (open-telemetry#1039)

* Pin eclipse for renovate (open-telemetry#1028)

* pin eclipse image

* add comments

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Update trace based tests run script (open-telemetry#1018)

* chore(tests): allow partial runs on trace-based test scripts

* Adding option to run trace-based tests for selected services

* Updating testing README

* Fixing sanity checks

* Fixing lint issues

* Apply suggestions from code review

Co-authored-by: Adnan Rahić <ado.raha198@gmail.com>

* Update README.md with suggestions

* Updating Changelog

* Fixing linter issue

* Fixed changelog

---------

Co-authored-by: Adnan Rahić <ado.raha198@gmail.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* update cadence (open-telemetry#1047)

* update cadence

* update every other

* Line break should be LF (open-telemetry#1049)

* Revert collector back to contrib distribution (open-telemetry#1048)

* Revert collector back to contrib distribution

* fix(deps): update dependency styled-components to v5.3.11 (open-telemetry#1037)

* chore(deps): update composer docker tag to v2.5 (open-telemetry#1041)

* chore(deps): update config-no-service (open-telemetry#1042)

* chore(deps): update dependency @types/node to v18.17.3 (open-telemetry#1046)

* chore(deps): update dotnet monorepo (open-telemetry#1051)

* chore(deps): update dependency configargparse to v1.5.5 (open-telemetry#1043)

* fix(deps): update opentelemetry-js monorepo (open-telemetry#1038)

* fix(deps): update dependency com.google.api.grpc:proto-google-common-protos to v2.22.1 (open-telemetry#1045)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* fix(deps): update dependency @grpc/grpc-js to v1.8.18 (open-telemetry#1044)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* add path check to gha (open-telemetry#1052)

* add path check to gha

* get path from dockerfile

* fix lint

* override skip on push

* remove set_output usages

* fix lint

* fix

---------

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* fix(deps): update opentelemetry-js monorepo (open-telemetry#1064)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* chore(deps): update config-no-service (open-telemetry#1056)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* chore(deps): update dotnet monorepo (open-telemetry#1059)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* fix(deps): update dependency php-di/php-di to v7.0.3 (open-telemetry#1060)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* chore(deps): update dependency configargparse to v1.5.5 (open-telemetry#1062)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* fix(deps): update dependency com.google.api.grpc:proto-google-common-protos to v2.22.1 (open-telemetry#1065)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [frontend] Update dependencies (open-telemetry#1054)

* [frontend] Update dependencies

* changelog

---------

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* Typo URL for FrontendProxy (open-telemetry#1075)

* [frontendproxy] Fix typo URL endpoint for FrontendProxy

* Update changelog

* Add Axoflow to vendors in README.md (open-telemetry#1076)

Signed-off-by: Attila Szakacs <attila.szakacs@axoflow.com>

* [cartservice] Drop Local cart store (open-telemetry#1081)

* chore: update trace based tests to test stream events (open-telemetry#1072)

* Add Logz.io to listing of Demos featuring the Astronomy Shop on README.md (open-telemetry#1082)

Adding Logz.io to the 'Demos featuring the Astronomy Shop' listing.
Inserted per alphabetical order.
Link provided with reference.

* Upgrade Shopify/sarama to IBM/sarama (open-telemetry#1083)

* Update Telemetry Components (open-telemetry#1085)

* Update Telemetry Components

* changelog

---------

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* Make Microsoft.AspNetCore.TestHost package compatible with .NET6 (open-telemetry#1084)

Fixes NU1202	Package Microsoft.AspNetCore.TestHost 7.0.7 is not compatible with net6.0

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Add link reference (open-telemetry#1088)

* [cartservice] Support for Logs (open-telemetry#1086)

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Fix TraceTest after IBM/sarama upgrade (open-telemetry#1096)

* Fix TraceTest after IBM/sarama upgrade

* changelog

* chore(deps): update dependency @types/react to v18.2.21 (open-telemetry#1077)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* chore(deps): update dependency eslint-config-next to v13.4.19 (open-telemetry#1078)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* update dashboards (open-telemetry#1098)

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* readme: add Tracetest to demos featuring the astronomy shop (open-telemetry#1113)

* prep for 1.5 release (open-telemetry#1089)

* prep for 1.5 release

* update dashboards

* force build to test

* fix gha

* revert ff comment

* roll back OTP version

* fix ff

* fix build

* clarify arm runner status

---------

Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* update docker login (open-telemetry#1117)

* inherit secretsy (open-telemetry#1118)

* remove extraneous quote (open-telemetry#1119)

* update quoteservice for php Release Candidate (open-telemetry#1114)

* update quoteservice for php Release Candidate
- update dependencies to use RC1 and latest versions of other packages
- update code to work with RC1
- refactor Dockerfile to allow local dev, and document how

* update changelog

* markdown lint

* adding container detector

* adding logging, enabling internal metrics

* Add env var to docker-compose.minimal

---------

Co-authored-by: Juliano Costa <juliano.costa@dynatrace.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [cartservice] Bump OTel .NET SDK to 1.6.0 (open-telemetry#1115)

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* chore(grafana): slugify dashboard name (open-telemetry#1121)

* chore(deps): update dependency flask to v2.3.3 (open-telemetry#1128)

* chore(deps): update dependency flask to v2.3.3

* Required werkzeug update (open-telemetry#1129)

* GHA: checks workflow: explicitly pass inputs to build-images (open-telemetry#1130)

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Mikko Viitanen <74129181+mviitane@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Michele Azzolari <michele@azzolari.it>

* fix(otelcol) prometheus metrics export descriptions (open-telemetry#1120)

* fix prom metrics export descriptions

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix prom metrics export descriptions

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Update java agent version. (open-telemetry#1132)

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* 1.5 release (open-telemetry#1133)

* (chore) update dependency versions (open-telemetry#1146)

* update dependency versions

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update dependency versions

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update dependency versions

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update dependency versions

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* (otelcol): metrics filter and transform (open-telemetry#1134)

* metrics filter and transform

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove filtered metric

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* (prometheus) Add OTLP write support (open-telemetry#1149)

* fix indent (open-telemetry#1152)

* OpenSearch Spike (open-telemetry#1151)

* add opensearch

* fix env

* fix yamllint

* fix lint

* fix errors in datasource

* remove stdout export

* add httpcheck receiver example (open-telemetry#1162)

* add httpcheck receiver example

This PR adds the httpcheck receiver to the demo to produce a synthetic
check against the frontendproxy endpoint.

Signed-off-by: Alex Boten <aboten@lightstep.com>

* add changelog

Signed-off-by: Alex Boten <aboten@lightstep.com>

---------

Signed-off-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* (grafana): update grafana dashboards (open-telemetry#1150)

* update grafana dashboards

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update grafana dashboards

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* Fix logic in GHA (open-telemetry#1172)

* fix logic

* refactor logic

* remove extra fi

* update collector configuration to use debug exporter (open-telemetry#1148)

* update collector configuration to use debug exporter

This replaces references to the logging exporter with
the debug exporter.

Signed-off-by: Alex Boten <aboten@lightstep.com>

* revert changes to kubernetes/opentelemetry-demo.yaml

Signed-off-by: Alex Boten <aboten@lightstep.com>

---------

Signed-off-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* (chore): merge otel o11y config (open-telemetry#1173)

* merge otel o11y config

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* merge otel o11y config

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* Update otelcol-config-extras.yml

Fixed lint

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Add Cedric Ziel to list of approvers (open-telemetry#1184)

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml
 - update opensearch to use a single node

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml
 - update opensearch to use a single node

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml
 - update opensearch to use a single node

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml
 - update opensearch to use a single node

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update upstream changes
 - remove 'opensearch integration' service
 - update the opensearch dashboard
 - add opensearch+dashboard to the minimized docker-compose.yml
 - update opensearch to use a single node

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* remove https in favor of http

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* restore https

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

* update data-prepper config files

Signed-off-by: YANGDB <yang.db.dev@gmail.com>

---------

Signed-off-by: YANGDB <yang.db.dev@gmail.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: Alex Boten <alex@boten.ca>
Signed-off-by: Alex Boten <aboten@lightstep.com>
Signed-off-by: Attila Szakacs <attila.szakacs@axoflow.com>
Co-authored-by: Chi Ma <chigia001@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Josh Lee <joshleecreates@users.noreply.github.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Daniel Baptista Dias <danielbdias@users.noreply.github.com>
Co-authored-by: Piotr Kiełkowicz <pkiekowicz@splunk.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Robert Pająk <pellared@hotmail.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Oscar Reyes <oscar-rreyes1@hotmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Miel Donkers <miel.donkers@gmail.com>
Co-authored-by: calmius <52236466+calmius@users.noreply.github.com>
Co-authored-by: Vaishali Kirtikumar Nile <80026547+VAISHALI-NILE@users.noreply.github.com>
Co-authored-by: Harlon <138457106+harlonhuang@users.noreply.github.com>
Co-authored-by: Adnan Rahić <ado.raha198@gmail.com>
Co-authored-by: Attila Szakacs <szakacs.attila96@gmail.com>
Co-authored-by: Dotan Horovits <dotan.horovits@gmail.com>
Co-authored-by: Cedric Ziel <cedric@cedric-ziel.com>
Co-authored-by: Brett McBride <brett@deakin.edu.au>
Co-authored-by: Juliano Costa <juliano.costa@dynatrace.com>
Co-authored-by: Mikko Viitanen <74129181+mviitane@users.noreply.github.com>
Co-authored-by: Michele Azzolari <michele@azzolari.it>
jmichalak9 pushed a commit to jmichalak9/opentelemetry-demo that referenced this pull request Mar 22, 2024
* WIP splitting up services

- splits up services into multiple docker files
- experiment with changing service definition for checkout service when kafka is enabled

todo:

[ ] fix checkout service to work without kafka
[ ] fix services that error without feature flag service
[ ] provide noop config for collector when observability backends are
disabled

* send to kafka only if defined

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* only check featureflag if env is defined

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split featureflag and kafka services

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove feature flag env var

* remove extra definitions in test file

* split out observability

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* set recommendation resources based on flag

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add start/stop scripts

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split modules

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* split into modules

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* allows `docker compose up` for full

* default full demo, optional minimal mode

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* default full demo, optional minimal mode

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs-update-required Requires documentation update helm-update-required Requires an update to the Helm chart when released
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Start the demo without Kafka
5 participants