Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # 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 <neumanns@cisco.com>

* Add entry in CHANGELOG

Signed-off-by: svrnm <neumanns@cisco.com>

* update changelog

Signed-off-by: svrnm <neumanns@cisco.com>

* Remove extra blank line

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

* 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 <julianocosta89@outlook.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>

* bot is broken (open-telemetry#699)

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

* 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 <neumanns@cisco.com>

* Use alpine

Signed-off-by: svrnm <neumanns@cisco.com>

* Add changelog

Signed-off-by: svrnm <neumanns@cisco.com>

* newline

Signed-off-by: svrnm <neumanns@cisco.com>

* Update CHANGELOG.md

* Update .dockerignore

Signed-off-by: svrnm <neumanns@cisco.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* 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 <43380952+cartersocha@users.noreply.github.com>

* 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 <marcpi@edu.aau.at>

---------

Co-authored-by: Marc Pichler <marcpi@edu.aau.at>

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

* fix metrics import (open-telemetry#721)

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

* 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 <julianocosta89@outlook.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* [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 <pierre@pierretessier.com>

* 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 <pierre@pierretessier.com>

* 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 <neumanns@cisco.com>

* Update CHANGELOG.md

* Update Dockerfile

---------

Signed-off-by: svrnm <neumanns@cisco.com>

* 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 <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

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

---------

Signed-off-by: svrnm <neumanns@cisco.com>
Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Josh Lee <joshleecreates@users.noreply.github.com>
Co-authored-by: Severin Neumann <neumanns@cisco.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Carter Socha <43380952+cartersocha@users.noreply.github.com>
Co-authored-by: Marc Pichler <marc.pichler@dynatrace.com>
Co-authored-by: Cedric Ziel <cedric.ziel@grafana.com>
Co-authored-by: Brett McBride <brett@deakin.edu.au>
Co-authored-by: James Lawrie <james.lawrie@nytimes.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: jack-berg <34418638+jack-berg@users.noreply.github.com>
Co-authored-by: Oscar Reyes <oscar-rreyes1@hotmail.com>
Co-authored-by: Marc Pichler <marcpi@edu.aau.at>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Pawel Brzoska <53935084+pbrzoska-sumo@users.noreply.github.com>
Co-authored-by: Abhijeet Prasad <aprasad@sentry.io>
Co-authored-by: Patrice Chalin <chalin@users.noreply.github.com>
Co-authored-by: Jared Tan <jian.tan@daocloud.io>
Co-authored-by: Alex Boten <alex@boten.ca>
Co-authored-by: Goutham Veeramachaneni <gouthamve+github@gmail.com>
Co-authored-by: Cijo Thomas <cithomas@microsoft.com>
jmichalak9 pushed a commit to jmichalak9/opentelemetry-demo that referenced this pull request Mar 22, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants