Skip to content

Commit d61d329

Browse files
committed
init code
0 parents  commit d61d329

File tree

544 files changed

+143446
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

544 files changed

+143446
-0
lines changed

.dockerignore

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
2+
3+
.github
4+
docs
5+
internal
6+
src/*/README.md
7+
src/*/Dockerfile
8+
src/*/*/Dockerfile
9+
10+
###################################
11+
# currency
12+
./src/currency/client.js
13+
./src/currency/node_modules/
14+
###################################
15+
16+
###################################
17+
# frontend
18+
./src/frontend/node_modules/
19+
20+
###################################
21+
# shipping
22+
./src/shipping/target
23+
###################################
24+

.env

+165
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
2+
3+
# Demo App version
4+
IMAGE_VERSION=2.0.1
5+
IMAGE_NAME=ghcr.io/open-telemetry/demo
6+
DEMO_VERSION=latest
7+
8+
# Build Args
9+
TRACETEST_IMAGE_VERSION=v1.7.1
10+
OTEL_JAVA_AGENT_VERSION=2.13.1
11+
OPENTELEMETRY_CPP_VERSION=1.19.0
12+
13+
# Dependent images
14+
COLLECTOR_CONTRIB_IMAGE=ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:0.120.0
15+
FLAGD_IMAGE=ghcr.io/open-feature/flagd:v0.12.1
16+
GRAFANA_IMAGE=grafana/grafana:11.5.2
17+
JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.66.0
18+
# must also update version field in src/grafana/provisioning/datasources/opensearch.yaml
19+
OPENSEARCH_IMAGE=opensearchproject/opensearch:2.19.0
20+
POSTGRES_IMAGE=postgres:17.3
21+
PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v3.2.0
22+
VALKEY_IMAGE=valkey/valkey:8.1-alpine
23+
TRACETEST_IMAGE=kubeshop/tracetest:${TRACETEST_IMAGE_VERSION}
24+
25+
# Demo Platform
26+
ENV_PLATFORM=local
27+
28+
# OpenTelemetry Collector
29+
HOST_FILESYSTEM=/
30+
DOCKER_SOCK=/var/run/docker.sock
31+
OTEL_COLLECTOR_HOST=otel-collector
32+
OTEL_COLLECTOR_PORT_GRPC=4317
33+
OTEL_COLLECTOR_PORT_HTTP=4318
34+
OTEL_COLLECTOR_CONFIG=./src/otel-collector/otelcol-config.yml
35+
OTEL_COLLECTOR_CONFIG_EXTRAS=./src/otel-collector/otelcol-config-extras.yml
36+
OTEL_EXPORTER_OTLP_ENDPOINT=http://${OTEL_COLLECTOR_HOST}:${OTEL_COLLECTOR_PORT_GRPC}
37+
PUBLIC_OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://localhost:8080/otlp-http/v1/traces
38+
39+
# OpenTelemetry Resource Definitions
40+
OTEL_RESOURCE_ATTRIBUTES=service.namespace=opentelemetry-demo,service.version=${IMAGE_VERSION}
41+
42+
# Metrics Temporality
43+
OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=cumulative
44+
45+
# ******************
46+
# Core Demo Services
47+
# ******************
48+
# Accounting Service
49+
ACCOUNTING_DOCKERFILE=./src/accounting/Dockerfile
50+
51+
# Ad Service
52+
AD_PORT=9555
53+
AD_ADDR=ad:${AD_PORT}
54+
AD_DOCKERFILE=./src/ad/Dockerfile
55+
56+
# Cart Service
57+
CART_PORT=7070
58+
CART_ADDR=cart:${CART_PORT}
59+
CART_DOCKERFILE=./src/cart/src/Dockerfile
60+
61+
# Checkout Service
62+
CHECKOUT_PORT=5050
63+
CHECKOUT_ADDR=checkout:${CHECKOUT_PORT}
64+
CHECKOUT_DOCKERFILE=./src/checkout/Dockerfile
65+
66+
# Currency Service
67+
CURRENCY_PORT=7001
68+
CURRENCY_ADDR=currency:${CURRENCY_PORT}
69+
CURRENCY_DOCKERFILE=./src/currency/Dockerfile
70+
71+
# Email Service
72+
EMAIL_PORT=6060
73+
EMAIL_ADDR=http://email:${EMAIL_PORT}
74+
EMAIL_DOCKERFILE=./src/email/Dockerfile
75+
76+
# Fraud Service
77+
FRAUD_DOCKERFILE=./src/fraud-detection/Dockerfile
78+
79+
# Frontend
80+
FRONTEND_PORT=8080
81+
FRONTEND_ADDR=frontend:${FRONTEND_PORT}
82+
FRONTEND_DOCKERFILE=./src/frontend/Dockerfile
83+
84+
# Frontend Proxy (Envoy)
85+
FRONTEND_HOST=frontend
86+
ENVOY_PORT=8080
87+
FRONTEND_PROXY_ADDR=frontend-proxy:${ENVOY_PORT}
88+
FRONTEND_PROXY_DOCKERFILE=./src/frontend-proxy/Dockerfile
89+
90+
# Image Provider
91+
IMAGE_PROVIDER_HOST=image-provider
92+
IMAGE_PROVIDER_PORT=8081
93+
IMAGE_PROVIDER_DOCKERFILE=./src/image-provider/Dockerfile
94+
95+
# Load Generator
96+
LOCUST_WEB_PORT=8089
97+
LOCUST_USERS=5
98+
LOCUST_HOST=http://${FRONTEND_PROXY_ADDR}
99+
LOCUST_WEB_HOST=load-generator
100+
LOCUST_AUTOSTART=true
101+
LOCUST_HEADLESS=false
102+
LOAD_GENERATOR_DOCKERFILE=./src/load-generator/Dockerfile
103+
104+
# Payment Service
105+
PAYMENT_PORT=50051
106+
PAYMENT_ADDR=payment:${PAYMENT_PORT}
107+
PAYMENT_DOCKERFILE=./src/payment/Dockerfile
108+
109+
# Product Catalog Service
110+
PRODUCT_CATALOG_RELOAD_INTERVAL=10
111+
PRODUCT_CATALOG_PORT=3550
112+
PRODUCT_CATALOG_ADDR=product-catalog:${PRODUCT_CATALOG_PORT}
113+
PRODUCT_CATALOG_DOCKERFILE=./src/product-catalog/Dockerfile
114+
115+
# Quote Service
116+
QUOTE_PORT=8090
117+
QUOTE_ADDR=http://quote:${QUOTE_PORT}
118+
QUOTE_DOCKERFILE=./src/quote/Dockerfile
119+
120+
# Recommendation Service
121+
RECOMMENDATION_PORT=9001
122+
RECOMMENDATION_ADDR=recommendation:${RECOMMENDATION_PORT}
123+
RECOMMENDATION_DOCKERFILE=./src/recommendation/Dockerfile
124+
125+
# Shipping Service
126+
SHIPPING_PORT=50050
127+
SHIPPING_ADDR=shipping:${SHIPPING_PORT}
128+
SHIPPING_DOCKERFILE=./src/shipping/Dockerfile
129+
130+
# ******************
131+
# Dependent Services
132+
# ******************
133+
# Flagd
134+
FLAGD_HOST=flagd
135+
FLAGD_PORT=8013
136+
137+
# Flagd UI
138+
FLAGD_UI_HOST=flagd-ui
139+
FLAGD_UI_PORT=4000
140+
FLAGD_UI_DOCKERFILE=./src/flagd-ui/Dockerfile
141+
142+
# Kafka
143+
KAFKA_PORT=9092
144+
KAFKA_ADDR=kafka:${KAFKA_PORT}
145+
KAFKA_DOCKERFILE=./src/kafka/Dockerfile
146+
147+
# Valkey
148+
VALKEY_PORT=6379
149+
VALKEY_ADDR=valkey-cart:${VALKEY_PORT}
150+
151+
# ********************
152+
# Telemetry Components
153+
# ********************
154+
# Grafana
155+
GRAFANA_PORT=3000
156+
GRAFANA_HOST=grafana
157+
158+
# Jaeger
159+
JAEGER_PORT=16686
160+
JAEGER_HOST=jaeger
161+
162+
# Prometheus
163+
PROMETHEUS_PORT=9090
164+
PROMETHEUS_HOST=prometheus
165+
PROMETHEUS_ADDR=${PROMETHEUS_HOST}:${PROMETHEUS_PORT}

.env.arm64

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
_JAVA_OPTIONS=-XX:UseSVE=0

.env.override

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# DO NOT PUSH CHANGES OF THIS FILE TO opentelemetry/opentelemetry-demo
2+
# PLACE YOUR .env ENVIRONMENT VARIABLES OVERRIDES IN THIS FILE

.gitattributes

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
2+
3+
* text=auto
4+
5+
gradlew text eol=lf

.github/CODEOWNERS

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Code owners file.
2+
# This file controls who is tagged for review for any given pull request.
3+
4+
# For anything not explicitly taken by someone else:
5+
* @open-telemetry/demo-approvers

.github/ISSUE_TEMPLATE/bug_report.md

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug Report
3+
about: Create a report to help us improve
4+
labels: bug
5+
---
6+
7+
# Bug Report
8+
9+
Which version of the demo you are using? (please provide either a specific
10+
[commit
11+
hash](https://github.com/open-telemetry/opentelemetry-demo/commits/main)
12+
or a specific
13+
[release](https://github.com/open-telemetry/opentelemetry-demo/releases)).
14+
15+
## Symptom
16+
17+
A clear and concise description of what the bug is.
18+
19+
**What is the expected behavior?**
20+
21+
What do you expect to see?
22+
23+
**What is the actual behavior?**
24+
25+
Please describe the actual behavior experienced.
26+
27+
## Reproduce
28+
29+
Could you provide the minimum required steps to resolve the issue you're seeing?
30+
31+
We will close this issue if:
32+
33+
* The steps you provided are complex.
34+
* If we can not reproduce the behavior you're reporting.
35+
36+
## Additional Context
37+
38+
Please feel free to add any other context about the problem here.
+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
name: Feature Request
3+
about: Suggest an idea for this project
4+
labels: enhancement
5+
---
6+
7+
# Feature Request
8+
9+
Before opening a feature request against this repo, consider whether the feature
10+
should/could be implemented in the [other OpenTelemetry client
11+
libraries](https://github.com/open-telemetry/). If so, please [open an issue on
12+
opentelemetry-specification](https://github.com/open-telemetry/opentelemetry-specification/issues/new)
13+
first.
14+
15+
**Is your feature request related to a problem?**
16+
17+
If so, provide a concise description of the problem.
18+
19+
**Describe the solution you'd like:**
20+
21+
What would you like to happen instead? What is the expected behavior?
22+
23+
**Describe alternatives you've considered.**
24+
25+
Which alternative solutions or features have you considered?
26+
27+
## Additional Context
28+
29+
Feel free to add any other context about the feature request here.

.github/ISSUE_TEMPLATE/question.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
name: Question
3+
about: Create a question to help us improve our knowledge base and documentation
4+
labels: question
5+
---
6+
7+
# Question
8+
9+
Use [Github Discussions](https://github.com/open-telemetry/opentelemetry-demo/discussions/).

.github/PULL_REQUEST_TEMPLATE.md

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Changes
2+
3+
Please provide a brief description of the changes here.
4+
5+
## Merge Requirements
6+
7+
For new features contributions, please make sure you have completed the following
8+
essential items:
9+
10+
* [ ] `CHANGELOG.md` updated to document new feature additions
11+
* [ ] Appropriate documentation updates in the [docs][]
12+
* [ ] Appropriate Helm chart updates in the [helm-charts][]
13+
14+
<!--
15+
A Pull Request that modifies instrumentation code will likely require an
16+
update in docs. Please make sure to update the opentelemetry.io repo with any
17+
docs changes.
18+
19+
A Pull Request that modifies docker-compose.yaml, otelcol-config.yaml, or
20+
Grafana dashboards will likely require an update to the Demo Helm chart.
21+
Other changes affecting how a service is deployed will also likely require an
22+
update to the Demo Helm chart.
23+
-->
24+
25+
Maintainers will not merge until the above have been completed. If you're unsure
26+
which docs need to be changed ping the
27+
[@open-telemetry/demo-approvers](https://github.com/orgs/open-telemetry/teams/demo-approvers).
28+
29+
[docs]: https://opentelemetry.io/docs/demo/
30+
[helm-charts]: https://github.com/open-telemetry/opentelemetry-helm-charts

.github/component_owners.yml

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Copyright The OpenTelemetry Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
# this file is used by .github/workflows/assign-reviewers.yml
4+
components:
5+
src/ad:
6+
- jack-berg
7+
- mateuszrzeszutek
8+
- trask

.github/dependabot.yml

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Copyright The OpenTelemetry Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
version: 2
4+
updates:
5+
- package-ecosystem: "github-actions"
6+
directories:
7+
- "/"
8+
groups:
9+
actions-production-dependencies:
10+
dependency-type: "production"
11+
schedule:
12+
interval: "daily"
13+
- package-ecosystem: "gomod"
14+
directories:
15+
- "/src/**/*"
16+
groups:
17+
go-production-dependencies:
18+
dependency-type: "production"
19+
schedule:
20+
interval: "daily"
21+
- package-ecosystem: "gradle"
22+
directories:
23+
- "/src/**/*"
24+
groups:
25+
gradle-production-dependencies:
26+
dependency-type: "production"
27+
schedule:
28+
interval: "daily"
29+
- package-ecosystem: "pip"
30+
directories:
31+
- "/src/**/*"
32+
groups:
33+
pip-production-dependencies:
34+
dependency-type: "production"
35+
schedule:
36+
interval: "daily"
37+
- package-ecosystem: "nuget"
38+
directories:
39+
- "/src/**/*"
40+
groups:
41+
nuget-production-dependencies:
42+
dependency-type: "production"
43+
schedule:
44+
interval: "daily"
45+
- package-ecosystem: "composer"
46+
directories:
47+
- "/src/**/*"
48+
groups:
49+
composer-production-dependencies:
50+
dependency-type: "production"
51+
schedule:
52+
interval: "daily"
53+
- package-ecosystem: "npm"
54+
directories:
55+
- "/src/flagd-ui/*"
56+
- "/src/frontend/*"
57+
- "/src/payment/*"
58+
groups:
59+
npm-production-dependencies:
60+
dependency-type: "production"
61+
npm-development-dependencies:
62+
dependency-type: "development"
63+
schedule:
64+
interval: "daily"

0 commit comments

Comments
 (0)