Skip to content

Commit

Permalink
[ja] translate demo/_index and demo/architecture page into ja (#5863)
Browse files Browse the repository at this point in the history
  • Loading branch information
yugo-ibuki authored Jan 4, 2025
1 parent 9f4fc6e commit d37f619
Show file tree
Hide file tree
Showing 2 changed files with 278 additions and 0 deletions.
80 changes: 80 additions & 0 deletions content/ja/docs/demo/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
title: OpenTelemetryデモ ドキュメンテーション
linkTitle: デモ
cascade:
repo: https://github.com/open-telemetry/opentelemetry-demo
weight: 180
cSpell:ignore: OLJCESPC
default_lang_commit: 1e69c8f94a605ce5624c6b6657080d98f633ac7b
---

[OpenTelemetryデモ](/ecosystem/demo/)のドキュメンテーションへようこそ。
ここでは、デモのインストール方法や実行方法、そしてOpenTelemetryの動作を確認できるいくつかのシナリオについて説明しています。

## デモの実行 {#running-the-demo}

デモをデプロイして動作を確認したい場合は、ここから始めてください。

- [Docker](docker-deployment/)
- [Kubernetes](kubernetes-deployment/)

## 言語機能リファレンス {#language-feature-reference}

特定の言語の計装がどのように機能するかを理解したい場合は、ここから始めてください。

| 言語 | 自動計装 | 計装ライブラリ | 手動計装 |
| ---------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| .NET | [会計サービス](services/accounting/) | [カートサービス](services/cart/) | [カートサービス](services/cart/) |
| C++ | | | [通貨サービス](services/currency/) |
| Go | | [決済サービス](services/checkout/), [商品カタログサービス](services/product-catalog/) | [決済サービス](services/checkout/), [商品カタログサービス](services/product-catalog/) |
| Java | [広告サービス](services/ad/) | | [広告サービス](services/ad/) |
| JavaScript | | [フロントエンド](services/frontend/) | [フロントエンド](services/frontend/), [支払いサービス](services/payment/) |
| Kotlin | | [不正検知サービス](services/fraud-detection/) | |
| PHP | | [見積サービス](services/quote/) | [見積サービス](services/quote/) |
| Python | [レコメンデーションサービス](services/recommendation/) | | [レコメンデーションサービス](services/recommendation/) |
| Ruby | | [メールサービス](services/email/) | [メールサービス](services/email/) |
| Rust | | [配送サービス](services/shipping/) | [配送サービス](services/shipping/) |

## サービスドキュメント {#service-documentation}

各サービスのOpenTelemetryのデプロイの仕方に関する具体的な情報は、こちらで確認できます

- [会計サービス](services/accounting/)
- [広告サービス](services/ad/)
- [カートサービス](services/cart/)
- [決済サービス](services/checkout/)
- [メールサービス](services/email/)
- [フロントエンド](services/frontend/)
- [負荷生成ツール](services/load-generator/)
- [支払いサービス](services/payment/)
- [商品カタログサービス](services/product-catalog/)
- [見積サービス](services/quote/)
- [レコメンデーションサービス](services/recommendation/)
- [配送サービス](services/shipping/)
- [画像プロバイダーサービス](services/imageprovider/)

## シナリオ {#scenarios}

OpenTelemetryを使用してどのように問題を解決できるでしょうか?
これらのシナリオでは、事前に設定された問題を紹介し、それらを解決するためにOpenTelemetryのデータをどのように解釈するかを説明します。

今後、さらに多くのシナリオを追加していく予定です。

- フィーチャーフラグサービスを使用して、商品ID:`OLJCESPC7Z``GetProduct`リクエストに対する[商品カタログエラー](feature-flags)を生成
- メモリリークを発見し、メトリクスとトレースを使用して診断。
[詳細](scenarios/recommendation-cache/)

## リファレンス {#reference}

要件や機能マトリクスなどのプロジェクトリファレンスドキュメント。

- [アーキテクチャ](architecture/)
- [開発](development/)
- [フィーチャーフラグリファレンス](feature-flags/)
- [メトリック機能マトリクス](telemetry-features/metric-coverage/)
- [要件](./requirements/)
- [スクリーンショット](screenshots/)
- [サービス](services/)
- [スパン属性リファレンス](telemetry-features/manual-span-attributes/)
- [テスト](tests/)
- [トレース機能マトリクス](telemetry-features/trace-coverage/)
198 changes: 198 additions & 0 deletions content/ja/docs/demo/architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,198 @@
---
title: デモのアーキテクチャ
linkTitle: アーキテクチャ
aliases: [current_architecture]
body_class: otel-mermaid-max-width
default_lang_commit: 1e69c8f94a605ce5624c6b6657080d98f633ac7b
---

**OpenTelemetryデモ** は、異なるプログラミング言語で書かれた複数のマイクロサービスから構成されており、gRPCとHTTPを使って相互に通信を行います。
さらに、負荷生成ツールが含まれており、[Locust](https://locust.io/)というツールを使用して、ユーザートラフィックを模擬的に生成します。

```mermaid
graph TD
subgraph サービス図
accountingservice(会計サービス):::dotnet
adservice(広告サービス):::java
cache[(キャッシュ<br/>&#40Valkey&#41)]
cartservice(カートサービス):::dotnet
checkoutservice(決済サービス):::golang
currencyservice(通貨サービス):::cpp
emailservice(メールサービス):::ruby
flagd(Flagd):::golang
flagdui(Flagd-ui):::typescript
frauddetectionservice(不正検知サービス):::kotlin
frontend(フロントエンド):::typescript
frontendproxy(フロントエンドプロキシ <br/>&#40Envoy&#41):::cpp
imageprovider(画像プロバイダー <br/>&#40nginx&#41):::cpp
loadgenerator([負荷生成ツール]):::python
paymentservice(支払いサービス):::javascript
productcatalogservice(商品カタログサービス):::golang
quoteservice(見積サービス):::php
recommendationservice(レコメンデーションサービス):::python
shippingservice(配送サービス):::rust
queue[(キュー<br/>&#40Kafka&#41)]:::java
adservice ---->|gRPC| flagd
checkoutservice -->|gRPC| cartservice
checkoutservice --->|TCP| queue
cartservice --> cache
cartservice -->|gRPC| flagd
checkoutservice -->|gRPC| shippingservice
checkoutservice -->|gRPC| paymentservice
checkoutservice --->|HTTP| emailservice
checkoutservice -->|gRPC| currencyservice
checkoutservice -->|gRPC| productcatalogservice
frauddetectionservice -->|gRPC| flagd
frontend -->|gRPC| adservice
frontend -->|gRPC| cartservice
frontend -->|gRPC| checkoutservice
frontend ---->|gRPC| currencyservice
frontend ---->|gRPC| recommendationservice
frontend -->|gRPC| productcatalogservice
frontendproxy -->|gRPC| flagd
frontendproxy -->|HTTP| frontend
frontendproxy -->|HTTP| flagdui
frontendproxy -->|HTTP| imageprovider
Internet -->|HTTP| frontendproxy
loadgenerator -->|HTTP| frontendproxy
paymentservice -->|gRPC| flagd
queue -->|TCP| accountingservice
queue -->|TCP| frauddetectionservice
recommendationservice -->|gRPC| productcatalogservice
recommendationservice -->|gRPC| flagd
shippingservice -->|HTTP| quoteservice
end
classDef dotnet fill:#178600,color:white;
classDef cpp fill:#f34b7d,color:white;
classDef golang fill:#00add8,color:black;
classDef java fill:#b07219,color:white;
classDef javascript fill:#f1e05a,color:black;
classDef kotlin fill:#560ba1,color:white;
classDef php fill:#4f5d95,color:white;
classDef python fill:#3572A5,color:white;
classDef ruby fill:#701516,color:white;
classDef rust fill:#dea584,color:black;
classDef typescript fill:#e98516,color:black;
```

```mermaid
graph TD
subgraph サービスの凡例
dotnetsvc(.NET):::dotnet
cppsvc(C++):::cpp
golangsvc(Go):::golang
javasvc(Java):::java
javascriptsvc(JavaScript):::javascript
kotlinsvc(Kotlin):::kotlin
phpsvc(PHP):::php
pythonsvc(Python):::python
rubysvc(Ruby):::ruby
rustsvc(Rust):::rust
typescriptsvc(TypeScript):::typescript
end
classDef dotnet fill:#178600,color:white;
classDef cpp fill:#f34b7d,color:white;
classDef golang fill:#00add8,color:black;
classDef java fill:#b07219,color:white;
classDef javascript fill:#f1e05a,color:black;
classDef kotlin fill:#560ba1,color:white;
classDef php fill:#4f5d95,color:white;
classDef python fill:#3572A5,color:white;
classDef ruby fill:#701516,color:white;
classDef rust fill:#dea584,color:black;
classDef typescript fill:#e98516,color:black;
```

デモアプリケーションの[メトリック](/docs/demo/telemetry-features/metric-coverage/)[トレース](/docs/demo/telemetry-features/trace-coverage/) の計装の現状については、リンクをご確認ください。

コレクターの設定は [otelcol-config.yml](https://github.com/open-telemetry/opentelemetry-demo/blob/main/src/otelcollector/otelcol-config.yml) で行われており、代替のエクスポーターをここで設定することができます。

```mermaid
graph TB
subgraph tdf[テレメトリーデータフロー]
subgraph subgraph_padding [ ]
style subgraph_padding fill:none,stroke:none;
%% タイトルの重複を防ぐためのパディング
subgraph od[OpenTelemetryデモ]
ms(マイクロサービス)
end
ms -.->|"OTLP<br/>gRPC"| oc-grpc
ms -.->|"OTLP<br/>HTTP POST"| oc-http
subgraph oc[OTelコレクター]
style oc fill:#97aef3,color:black;
oc-grpc[/"OTLPレシーバー<br/>リッスン先:<br/>grpc://localhost:4317"/]
oc-http[/"OTLPレシーバー<br/>リッスン先:<br/>localhost:4318<br/>"/]
oc-proc(プロセッサー)
oc-prom[/"OTLP HTTPエクスポーター"/]
oc-otlp[/"OTLPエクスポーター"/]
oc-grpc --> oc-proc
oc-http --> oc-proc
oc-proc --> oc-prom
oc-proc --> oc-otlp
end
oc-prom -->|"localhost:9090/api/v1/otlp"| pr-sc
oc-otlp -->|gRPC| ja-col
subgraph pr[Prometheus]
style pr fill:#e75128,color:black;
pr-sc[/"Prometheus OTLP書き込みレシーバー"/]
pr-tsdb[(Prometheus TSDB)]
pr-http[/"Prometheus HTTP<br/>リッスン先:<br/>localhost:9090"/]
pr-sc --> pr-tsdb
pr-tsdb --> pr-http
end
pr-b{{"ブラウザ<br/>Prometheus UI"}}
pr-http ---->|"localhost:9090/graph"| pr-b
subgraph ja[Jaeger]
style ja fill:#60d0e4,color:black;
ja-col[/"Jaegerコレクター<br/>リッスン先:<br/>grpc://jaeger:4317"/]
ja-db[(Jaeger DB)]
ja-http[/"Jaeger HTTP<br/>リッスン先:<br/>localhost:16686"/]
ja-col --> ja-db
ja-db --> ja-http
end
subgraph gr[Grafana]
style gr fill:#f8b91e,color:black;
gr-srv["Grafanaサーバー"]
gr-http[/"Grafana HTTP<br/>リッスン先:<br/>localhost:3000"/]
gr-srv --> gr-http
end
pr-http --> |"localhost:9090/api"| gr-srv
ja-http --> |"localhost:16686/api"| gr-srv
ja-b{{"ブラウザ<br/>Jaeger UI"}}
ja-http ---->|"localhost:16686/search"| ja-b
gr-b{{"ブラウザ<br/>Grafana UI"}}
gr-http -->|"localhost:3000/dashboard"| gr-b
end
end
```

Protocol Bufferの定義は /pb/ ディレクトリにあります。

0 comments on commit d37f619

Please sign in to comment.