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

[recommendationservice] - base image, licensing and diagram update #700

Merged

Conversation

julianocosta89
Copy link
Member

@julianocosta89 julianocosta89 commented Jan 19, 2023

Changes

  • Updated base image of recommendationservice to use a smaller one.
    • Image size reduced from 991MB to 190MB.
  • As we have changed the files enough, I've updated the licensing to OTel authors.
  • Updated demo diagram, as the call from recommendationservice to featureflagservice was missing.

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 folder

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.

@julianocosta89 julianocosta89 requested a review from a team January 19, 2023 21:26
@cartersocha
Copy link
Contributor

cartersocha commented Jan 20, 2023

I'm getting a build error when trying to install psutils. Copying a cut down error message

Building wheels for collected packages: psutil
#0 32.64 Building wheel for psutil (setup.py): started
#0 33.53 Building wheel for psutil (setup.py): finished with status 'error'
#0 33.54 error: subprocess-exited-with-error
#0 33.54
#0 33.54 × python setup.py bdist_wheel did not run successfully.
#0 33.54 │ exit code: 1
#0 33.54 ╰─> [43 lines of output]
#0 33.54 running bdist_wheel
#0 33.54 running build
#0 33.54 running build_py
#0 33.54 building 'psutil._psutil_linux' extension
#0 33.54 creating build/temp.linux-aarch64-cpython-310
#0 33.54 creating build/temp.linux-aarch64-cpython-310/psutil
#0 33.54 gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_SIZEOF_PID_T=4 -DPSUTIL_VERSION=592 -DPSUTIL_LINUX=1 -DPSUTIL_ETHTOOL_MISSING_TYPES=1 -I/usr/local/include/python3.10 -c psutil/_psutil_common.c -o build/temp.linux-aarch64-cpython-310/psutil/_psutil_common.o
#0 33.54 C compiler or Python headers are not installed on this system. Try to run:
#0 33.54 sudo apt-get install gcc python3-dev
#0 33.54 error: command 'gcc' failed: No such file or directory
#0 33.54 [end of output]
#0 33.54
#0 33.54 note: This error originates from a subprocess, and is likely not a problem with pip.
#0 33.54 ERROR: Failed building wheel for psutil
#0 33.54 Running setup.py clean for psutil
#0 34.09 Failed to build psutil
#0 34.17 Installing collected packages: wrapt, typing-extensions, six, python-json-logger, python-dotenv, psutil, protobuf, opentelemetry-semantic-conventions, backoff, opentelemetry-proto, grpcio, googleapis-common-protos, deprecated, opentelemetry-api, grpcio-health-checking, opentelemetry-sdk, opentelemetry-instrumentation, opentelemetry-exporter-otlp-proto-grpc, opentelemetry-distro
#0 34.50 Running setup.py install for psutil: started
#0 35.64 Running setup.py install for psutil: finished with status 'error'
#0 35.64 error: subprocess-exited-with-error
#0 35.64
#0 35.64 × Running setup.py install for psutil did not run successfully.
#0 35.64 │ exit code: 1
#0 35.64 ╰─> [45 lines of output]
#0 35.64 running install
#0 35.64 /usr/local/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
#0 35.64 warnings.warn(
#0 35.64 running build
#0 35.64 running build_py
#0 35.64
#0 35.64 building 'psutil._psutil_linux' extension
#0 35.64 creating build/temp.linux-aarch64-cpython-310
#0 35.64 creating build/temp.linux-aarch64-cpython-310/psutil
#0 35.64 gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_SIZEOF_PID_T=4 -DPSUTIL_VERSION=592 -DPSUTIL_LINUX=1 -DPSUTIL_ETHTOOL_MISSING_TYPES=1 -I/usr/local/include/python3.10 -c psutil/_psutil_common.c -o build/temp.linux-aarch64-cpython-310/psutil/_psutil_common.o
#0 35.64 C compiler or Python headers are not installed on this system. Try to run:
#0 35.64 sudo apt-get install gcc python3-dev
#0 35.64 error: command 'gcc' failed: No such file or directory
#0 35.64 [end of output]
#0 35.64
#0 35.64 note: This error originates from a subprocess, and is likely not a problem with pip.
#0 35.64 error: legacy-install-failure
#0 35.64
#0 35.64 × Encountered error while trying to install package.
#0 35.64 ╰─> psutil

@cartersocha
Copy link
Contributor

I think this thread answers the root issue: watson-developer-cloud/python-sdk#418 (comment)

Question is do we want to continue to use the slim package and update our build docs or find an image with the dependency

@mviitane
Copy link
Member

I have the same problem. Doesn't build on Mac M1.

To simplify a bit, the licensing and diagram changes could be split into another PR.

Copy link
Member

@mviitane mviitane left a comment

Choose a reason for hiding this comment

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

Builds and runs fine after that latest change.

@cartersocha
Copy link
Contributor

Lgtm. Build time was roughly equivalent but image size dropped from 1.52 GB to 284 MB. Nice!

@cartersocha cartersocha merged commit dade436 into open-telemetry:main Jan 22, 2023
@julianocosta89 julianocosta89 deleted the recommendationservice-cleanup branch January 23, 2023 07:40
mat-rumian added a commit to SumoLogic/opentelemetry-demo that referenced this pull request Feb 20, 2023
* Fixes open-telemetry#696, Downgrades OTP (open-telemetry#698)

* Use different base images for frauddetectionservice (open-telemetry#691)

* Use different docker base images for frauddetection service

Signed-off-by: svrnm <[email protected]>

* Add entry in CHANGELOG

Signed-off-by: svrnm <[email protected]>

* update changelog

Signed-off-by: svrnm <[email protected]>

* Remove extra blank line

Signed-off-by: svrnm <[email protected]>
Co-authored-by: Juliano Costa <[email protected]>
Co-authored-by: Carter Socha <[email protected]>

* fix(paymentservice): respect temporality env var (open-telemetry#693)

* fix(paymentservice): update dependencies so that temporality env var is respected

* fix(changelog): add changelog entry

* Add healthcheck to featureflagservice (open-telemetry#661)

* Add healthcheck to featureflagservice

In order to assess the health of this central service, compose should perform a check on the service.

* Add changelog entry

Co-authored-by: Juliano Costa <[email protected]>
Co-authored-by: Carter Socha <[email protected]>

* bot is broken (open-telemetry#699)

Co-authored-by: Juliano Costa <[email protected]>

* Fix link to the docs (open-telemetry#701)

* reduce quoteservice spans (open-telemetry#702)

* fixing container name nit - quote service (open-telemetry#706)

* [recommendationservice] - base image, licensing and diagram update (open-telemetry#700)

* update service metric requirement table (open-telemetry#707)

* update service metric requirement table

* add feature table

* Update emailservice Dockerfile to use alpine and multistage build (open-telemetry#703)

* Update emailservice Dockerfile

Signed-off-by: svrnm <[email protected]>

* Use alpine

Signed-off-by: svrnm <[email protected]>

* Add changelog

Signed-off-by: svrnm <[email protected]>

* newline

Signed-off-by: svrnm <[email protected]>

* Update CHANGELOG.md

* Update .dockerignore

Signed-off-by: svrnm <[email protected]>
Co-authored-by: Juliano Costa <[email protected]>

* Update dockerfile for adservice to use different base images (open-telemetry#705)

* Enable exemplar export/display support (open-telemetry#704)

* Enable exemplar export/display support

Ensure the collector's prometheus endpoint produces exemplars
Ensure that prometheus collects and stores exemplar data
Ensure that grafana will display links to exemplars from dashboards/the explore tab

* Enable exemplars for latency histogram in demo dashboard

* update contributing guide (open-telemetry#711)

* update contributing guide

* fix lint

Co-authored-by: Carter Socha <[email protected]>

* Add random errors in AdService (open-telemetry#694)

* feature(frontend): adding instrumentation metrics (open-telemetry#632)

* feature(frontend): adding instrumentation metrics

* feature(frontend): adding instrumentation metrics

* updating package-lock.json

* Update docker-compose.yml

Co-authored-by: Marc Pichler <[email protected]>

---------

Co-authored-by: Marc Pichler <[email protected]>

* Update CONTRIBUTING.md (open-telemetry#720)

* fix metrics import (open-telemetry#721)

Signed-off-by: Pierre Tessier <[email protected]>

* Update .env (open-telemetry#722)

* Updated demo link for Sumo Logic (open-telemetry#718)

* Add build for arm64 arch (open-telemetry#657)

* Add build for arm64 arch

* Add change to changelog

* enable build on PR

* remove build on pr

---------

Co-authored-by: Juliano Costa <[email protected]>
Co-authored-by: Carter Socha <[email protected]>
Co-authored-by: Austin Parker <[email protected]>

* [chore] - fix image version (open-telemetry#726)

Remove the `v` prefix from the image version. We now publish images without this prefix.

* Adds caveats to current exemplar support in the demo architecture (open-telemetry#725)

Also, updates collector version: exemplars for the latency histogram produced by the span  metrics processor are now getting exported for all services and endpoints, not just the first one in the metric family.

Co-authored-by: Pierre Tessier <[email protected]>

* Add Sentry (sentry.io) demo to README (open-telemetry#724)

* Add Sentry (sentry.io) demo to README

* use alpha order

---------

Co-authored-by: Pierre Tessier <[email protected]>

* Drop docs folder and adjust links (open-telemetry#730)

* Drop docs folder and adjust links

* Update PULL_REQUEST_TEMPLATE.md

* Add entry to CHANGELOG.md

* README: drop unused logo reference

* add reflection for grpcurl (open-telemetry#735)

* Add cross-compilation for shipping service (open-telemetry#715)

* Add cross-compilation for shipping service

Signed-off-by: svrnm <[email protected]>

* Update CHANGELOG.md

* Update Dockerfile

---------

Signed-off-by: svrnm <[email protected]>

* Ensure all http.server.duration metrics have the same description (open-telemetry#738)

* Add OTel logo to README (open-telemetry#744)

* rename proto package from hipstershop to oteldemo (open-telemetry#740)

* prometheus: honor_labels to have the right job and instance (open-telemetry#743)

Co-authored-by: Carter Socha <[email protected]>
Co-authored-by: Juliano Costa <[email protected]>

* Nit fix contributing guide (open-telemetry#747)

---------

Signed-off-by: svrnm <[email protected]>
Signed-off-by: Pierre Tessier <[email protected]>
Co-authored-by: Josh Lee <[email protected]>
Co-authored-by: Severin Neumann <[email protected]>
Co-authored-by: Juliano Costa <[email protected]>
Co-authored-by: Carter Socha <[email protected]>
Co-authored-by: Marc Pichler <[email protected]>
Co-authored-by: Cedric Ziel <[email protected]>
Co-authored-by: Brett McBride <[email protected]>
Co-authored-by: James Lawrie <[email protected]>
Co-authored-by: Austin Parker <[email protected]>
Co-authored-by: jack-berg <[email protected]>
Co-authored-by: Oscar Reyes <[email protected]>
Co-authored-by: Marc Pichler <[email protected]>
Co-authored-by: Pierre Tessier <[email protected]>
Co-authored-by: Pawel Brzoska <[email protected]>
Co-authored-by: Abhijeet Prasad <[email protected]>
Co-authored-by: Patrice Chalin <[email protected]>
Co-authored-by: Jared Tan <[email protected]>
Co-authored-by: Alex Boten <[email protected]>
Co-authored-by: Goutham Veeramachaneni <[email protected]>
Co-authored-by: Cijo Thomas <[email protected]>
jmichalak9 pushed a commit to jmichalak9/opentelemetry-demo that referenced this pull request Mar 22, 2024
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