Skip to content

Commit

Permalink
Merge branch 'open-telemetry:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
puckpuck authored Mar 18, 2024
2 parents ae0c13b + b50be5d commit 4a84a32
Show file tree
Hide file tree
Showing 134 changed files with 4,032 additions and 21,346 deletions.
19 changes: 12 additions & 7 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,18 @@
# Demo App version
IMAGE_VERSION=1.8.0
IMAGE_NAME=ghcr.io/open-telemetry/demo
DEMO_VERSION=latest

# Dependent images
COLLECTOR_CONTRIB_IMAGE=otel/opentelemetry-collector-contrib:0.93.0
GRAFANA_IMAGE=grafana/grafana:10.3.1
JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.53
COLLECTOR_CONTRIB_IMAGE=otel/opentelemetry-collector-contrib:0.96.0
GRAFANA_IMAGE=grafana/grafana:10.4.0
JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.55
# must also update version field in /src/grafana/provisioning/datasources/opensearch.yml
OPENSEARCH_IMAGE=opensearchproject/opensearch:2.11.1
POSTGRES_IMAGE=postgres:16.1
PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v2.49.1
OPENSEARCH_IMAGE=opensearchproject/opensearch:2.12.0
POSTGRES_IMAGE=postgres:16.2
PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v2.50.1
REDIS_IMAGE=redis:7.2-alpine
TRACETEST_IMAGE_VERSION=v0.15.8
TRACETEST_IMAGE_VERSION=v0.16.0
TRACETEST_IMAGE=kubeshop/tracetest:${TRACETEST_IMAGE_VERSION}

# Demo Platform
Expand Down Expand Up @@ -62,6 +63,10 @@ FEATURE_FLAG_SERVICE_HOST=feature-flag-service
FEATURE_FLAG_GRPC_SERVICE_PORT=50053
FEATURE_FLAG_GRPC_SERVICE_ADDR=featureflagservice:${FEATURE_FLAG_GRPC_SERVICE_PORT}

# flagd
FLAGD_HOST=flagd
FLAGD_PORT=8013

# Frontend
FRONTEND_PORT=8080
FRONTEND_ADDR=frontend:${FRONTEND_PORT}
Expand Down
18 changes: 1 addition & 17 deletions .github/workflows/build-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,24 +49,12 @@ jobs:
setup-qemu: true
- file: ./src/currencyservice/Dockerfile
tag_suffix: currencyservice
context: ./src/currencyservice
context: ./
setup-qemu: true
- file: ./src/emailservice/Dockerfile
tag_suffix: emailservice
context: ./src/emailservice
setup-qemu: true
- file: ./src/ffspostgres/Dockerfile
tag_suffix: ffspostgres
context: ./
setup-qemu: true
# NOTE:
# https://github.com/open-telemetry/opentelemetry-demo/issues/956
# Until dedicated ARM runners are available for GHA we cannot upgrade
# OTP/Elixir versions. Please do not change the OTP/Elixir versions.
- file: ./src/featureflagservice/Dockerfile
tag_suffix: featureflagservice
context: ./
setup-qemu: true
- file: ./src/frontend/Dockerfile
tag_suffix: frontend
context: ./
Expand Down Expand Up @@ -115,10 +103,6 @@ jobs:
tag_suffix: frontend-tests
context: ./
setup-qemu: true
- file: ./test/Dockerfile
tag_suffix: integrationTests
context: ./
setup-qemu: true

steps:
- uses: actions/checkout@v4
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/nightly-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ on:
jobs:
build_and_push_images:
uses: ./.github/workflows/build-images.yml
if: github.repository == 'open-telemetry/opentelemetry-demo'
with:
push: true
version: nightly-${{ github.run_id }}
Expand Down
41 changes: 5 additions & 36 deletions .github/workflows/run-integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,49 +3,18 @@
name: Integration Tests

on:
pull_request_target:
branches:
- main
types: [closed]
pull_request_review:
types:
- submitted

jobs:
build_runner:
runs-on: ubuntu-latest
name: "Build Runner"
if: github.event.pull_request.merged == true
steps:
- name: metal-runner-action
uses: equinix-labs/[email protected]
with:
github_token: ${{ secrets.GH_CI_SECRET }}
metal_auth_token: ${{ secrets.METAL_AUTH_TOKEN }}
metal_project_id: ${{ secrets.METAL_PROJECT_ID }}
metro: "da"
plan: "c3.small.x86"
os: "ubuntu_20_04"
run_tests:
needs: build_runner
runs-on: self-hosted
runs-on: ubuntu-latest
name: "Run CI"
if: github.event.review.state == 'APPROVED'
steps:
- name: check out code
uses: actions/checkout@v4
- name: install docker
run: |
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
- name: run tracetesting
run: |
make build && make run-tracetesting
destroy:
needs: [build_runner, run_tests]
runs-on: ubuntu-latest
name: "Cleanup"
if: always()
steps:
- name: metal-sweeper-action
uses: equinix-labs/[email protected]
with:
authToken: ${{ secrets.METAL_AUTH_TOKEN }}
projectID: ${{ secrets.METAL_PROJECT_ID }}
keepProject: true
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
.DS_Store
\#*\#

docker-compose.override.yml

# Eclipse
.classpath
.project
Expand Down Expand Up @@ -52,3 +54,7 @@ test/tracetesting/tracetesting-vars.yaml
/src/paymentservice/demo.proto
/src/recommendationservice/demo_pb2*.py
/src/shippingservice/proto/
/src/productcatalogservice/genproto
/src/currencyservice/proto
/src/checkoutservice/genproto
/src/accountingservice/genproto
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,40 @@ the release.

## Unreleased

* [loadgenerator] emit logs via OTLP
([#1446](https://github.com/open-telemetry/opentelemetry-demo/pull/1446))
* [frontend] reset quantity when new product selected
([#1447](https://github.com/open-telemetry/opentelemetry-demo/pull/1447))
* [featureflag] deprecate in favor of flagd
([#1338](https://github.com/open-telemetry/opentelemetry-demo/pull/1388))
* [checkoutservice] add producer interceptor for tracing
([#1400](https://github.com/open-telemetry/opentelemetry-demo/pull/1400))
* [chore] increase memory for Collector and Jaeger
([#1396](https://github.com/open-telemetry/opentelemetry-demo/pull/1396))
* [chore] fix Make targets for restart and redeploy
([#1397](https://github.com/open-telemetry/opentelemetry-demo/pull/1397))
* [chore] add nightly releases
([#1398](https://github.com/open-telemetry/opentelemetry-demo/pull/1398))
* [checkoutservice] add producer interceptor for tracing
([#1400](https://github.com/open-telemetry/opentelemetry-demo/pull/1400))
* [productcatalogservice] fix graceful shutdown issues
([#1402](https://github.com/open-telemetry/opentelemetry-demo/pull/1402))
* [chore] remove unused integration test
([#1406](https://github.com/open-telemetry/opentelemetry-demo/pull/1406))
* [CartService] - Add Host Detector
([#1415](https://github.com/open-telemetry/opentelemetry-demo/pull/1415))
* [chore] - add tests and odd profiles to make stop
([#1427](https://github.com/open-telemetry/opentelemetry-demo/pull/1427))
* [chore] - Update Telemetry Components
([#1440](https://github.com/open-telemetry/opentelemetry-demo/pull/1440))
* [paymentservice] add paymentServiceFailure feature flag
([#1449](https://github.com/open-telemetry/opentelemetry-demo/pull/1449))
* [checkoutservice] add paymentServiceUnreachable feature flag
([#1449](https://github.com/open-telemetry/opentelemetry-demo/pull/1449))
* [Frontend-proxy] Add restart policy to compose file
([#1448](https://github.com/open-telemetry/opentelemetry-demo/pull/1448))
* [cartservice] update .NET to .NET 8.0.3
([#1460](https://github.com/open-telemetry/opentelemetry-demo/pull/1460))

## 1.8.0

Expand Down
6 changes: 1 addition & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,6 @@ build-env-file:
.PHONY: run-tests
run-tests:
docker compose run frontendTests
# integrationTests is deprecated in favor of traceBasedTests
# docker compose run integrationTests
docker compose run traceBasedTests

.PHONY: run-tracetesting
Expand Down Expand Up @@ -133,7 +131,6 @@ start:
@echo "Go to http://localhost:8080/jaeger/ui for the Jaeger UI."
@echo "Go to http://localhost:8080/grafana/ for the Grafana UI."
@echo "Go to http://localhost:8080/loadgen/ for the Load Generator UI."
@echo "Go to http://localhost:8080/feature/ for the Feature Flag UI."

.PHONY: start-minimal
start-minimal:
Expand All @@ -155,12 +152,11 @@ start-odd:
@echo "Go to http://localhost:8080/jaeger/ui for the Jaeger UI."
@echo "Go to http://localhost:8080/grafana/ for the Grafana UI."
@echo "Go to http://localhost:8080/loadgen/ for the Load Generator UI."
@echo "Go to http://localhost:8080/feature/ for the Feature Flag UI."
@echo "Go to http://localhost:11633/ for the Tracetest Web UI."

.PHONY: stop
stop:
docker compose down --remove-orphans --volumes
docker compose --profile tests --profile odd down --remove-orphans --volumes
@echo ""
@echo "OpenTelemetry Demo is stopped."

Expand Down
23 changes: 12 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,16 +56,16 @@ keeping it up to date for you.

| | | |
|-----------------------------------------|-----------------------------|----------------------------------------------------------------|
| [AlibabaCloud LogService][AlibabaCloud] | [Google Cloud][GoogleCloud] | [Sentry][Sentry] |
| [AppDynamics][AppDynamics] | [Grafana Labs][GrafanaLabs] | [ServiceNow Cloud Observability][ServiceNowCloudObservability] |
| [Aspecto][Aspecto] | [Guance][Guance] | [Splunk][Splunk] |
| [Axiom][Axiom] | [Helios][Helios] | [Sumo Logic][SumoLogic] |
| [Axoflow][Axoflow] | [Honeycomb.io][Honeycombio] | [TelemetryHub][TelemetryHub] |
| [Azure Data Explorer][Azure] | [Instana][Instana] | [Teletrace][Teletrace] |
| [Coralogix][Coralogix] | [Kloudfuse][Kloudfuse] | [Tracetest][Tracetest] |
| [Datadog][Datadog] | [Logz.io][Logzio] | [Uptrace][Uptrace] |
| [Dynatrace][Dynatrace] | [New Relic][NewRelic] | |
| [Elastic][Elastic] | [OpenSearch][OpenSearch] | |
| [AlibabaCloud LogService][AlibabaCloud] | [Elastic][Elastic] | [New Relic][NewRelic] |
| [AppDynamics][AppDynamics] | [Google Cloud][GoogleCloud] | [OpenSearch][OpenSearch] |
| [Aspecto][Aspecto] | [Grafana Labs][GrafanaLabs] | [Sentry][Sentry] |
| [Axiom][Axiom] | [Guance][Guance] | [ServiceNow Cloud Observability][ServiceNowCloudObservability] |
| Axoflow | [Helios][Helios] | [Splunk][Splunk] |
| [Azure Data Explorer][Azure] | [Honeycomb.io][Honeycombio] | [Sumo Logic][SumoLogic] |
| [Coralogix][Coralogix] | [Instana][Instana] | [TelemetryHub][TelemetryHub] |
| [Dash0][Dash0] | [Kloudfuse][Kloudfuse] | [Teletrace][Teletrace] |
| [Datadog][Datadog] | [Liatrio][Liatrio] | [Tracetest][Tracetest] |
| [Dynatrace][Dynatrace] | [Logz.io][Logzio] | [Uptrace][Uptrace] |

## Contributing

Expand Down Expand Up @@ -109,9 +109,9 @@ Emeritus:
[AppDynamics]: https://www.appdynamics.com/blog/cloud/how-to-observe-opentelemetry-demo-app-in-appdynamics-cloud/
[Aspecto]: https://github.com/aspecto-io/opentelemetry-demo
[Axiom]: https://play.axiom.co/axiom-play-qf1k/dashboards/otel.traces.otel-demo-traces
[Axoflow]: https://axoflow.com/opentelemetry-support-in-more-detail-in-axosyslog-and-syslog-ng/
[Azure]: https://github.com/Azure/Azure-kusto-opentelemetry-demo
[Coralogix]: https://coralogix.com/blog/configure-otel-demo-send-telemetry-data-coralogix
[Dash0]: https://github.com/dash0hq/opentelemetry-demo
[Datadog]: https://github.com/DataDog/opentelemetry-demo
[Dynatrace]: https://www.dynatrace.com/news/blog/opentelemetry-demo-application-with-dynatrace/
[Elastic]: https://github.com/elastic/opentelemetry-demo
Expand All @@ -122,6 +122,7 @@ Emeritus:
[Honeycombio]: https://github.com/honeycombio/opentelemetry-demo
[Instana]: https://github.com/instana/opentelemetry-demo
[Kloudfuse]: https://github.com/kloudfuse/opentelemetry-demo
[Liatrio]: https://github.com/liatrio/opentelemetry-demo
[Logzio]: https://logz.io/learn/how-to-run-opentelemetry-demo-with-logz-io/
[NewRelic]: https://github.com/newrelic/opentelemetry-demo
[OpenSearch]: https://github.com/opensearch-project/opentelemetry-demo
Expand Down
Loading

0 comments on commit 4a84a32

Please sign in to comment.