Skip to content

Commit

Permalink
add: Japanese translations for context propagation and components
Browse files Browse the repository at this point in the history
  • Loading branch information
Yoshi Yamaguchi committed Jun 25, 2024
1 parent a2c5ff2 commit 1c6355c
Show file tree
Hide file tree
Showing 2 changed files with 142 additions and 0 deletions.
109 changes: 109 additions & 0 deletions content/ja/docs/concepts/components.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
---
title: コンポーネント
description: OpenTelemetryを構成する主なコンポーネント
aliases: [data-collection]
weight: 20
default_lang_commit: 313e391
---

OpenTelemetryは現在、いくつかの主要コンポーネントで構成されています。

- [仕様](#specification)
- [コレクター](#collector)
- [言語固有のAPIとSDKの実装](#language-specific-api--sdk-implementations)
- [計装ライブラリ](#instrumentation-libraries)
- [エクスポーター](#exporters)
- [ゼロコード計装](#zero-code-instrumentation)
- [リソース検出器](#resource-detectors)
- [サービス間プロパゲーター](#cross-service-propagators)
- [サンプラー](#samplers)
- [Kubernetesオペレーター](#kubernetes-operator)
- [Function as a Serviceアセット](#function-as-a-service-assets)

OpenTelemetryは、テレメトリーデータの生成とエクスポートのためのベンダー固有のSDKとツールを置き換えられます。

## 仕様 {#specification}

仕様はすべての実装に対する言語横断的な要件と想定を記述しています。
用語の定義だけでなく、この仕様では以下のことが定義されています。

- **API:** トレース、メトリクス、およびロギングデータを生成および相関させるためのデータ型と操作を定義します。
- **SDK:** 言語固有のAPI実装の要件を定義します。設定、データ処理、エクスポートの概念もここで定義されます。
- **データ:** OpenTelemetryプロトコル(OTLP)と、テレメトリーバックエンドがサポートできるベンダー非依存のセマンティック規約を定義します。

詳細は、[仕様](/docs/specs/)のページを参照してください。

## コレクター {#collector}

OpenTelemetryコレクターは、テレメトリーデータを受信、処理、エクスポートできる、ベンダー非依存のプロキシーです。
複数のフォーマット(たとえば、OTLP、Jaeger、Prometheus、および多くの商用/独自ツール)でテレメトリーデータを受信し、1つ以上のバックエンドにデータを送信します。
また、テレメトリーデータをエクスポートする前の処理やフィルタリングもサポートします。

詳細は、[コレクター](/docs/collector/)のページを参照してください。

## 言語固有のAPIとSDKの実装 {#language-specific-api--sdk-implementations}

OpenTelemetryには言語SDKもあります。このSDKによってOpenTelemetryAPIを使って、選択した言語でテレメトリーデータを生成し、そのデータを好みのバックエンドにエクスポートできます。
これらのSDKはまた、あなたのアプリケーションでの手動計装に接続するために使える、一般的なライブラリとフレームワーク用の計装ライブラリも組み込めます。

詳細は、[計装](/docs/concepts/instrumentation/)のページを参照してください。

### 計装ライブラリ {#instrumentation-libraries}

OpenTelemetry は、サポートされている言語の一般的なライブラリやフレームワークから関連するテレメトリーデータを生成する、幅広い数のコンポーネントをサポートしています。
たとえば、HTTPライブラリからのインバウンドとアウトバウンドのHTTPリクエストは、それらのリクエストに関するデータを生成します。

OpenTelemetryの意欲的なゴールは、すべての一般的なライブラリがデフォルトでオブザーバビリティがあるようにビルドされることです。

詳細は、[計装ライブラリ](/docs/concepts/instrumentation/libraries/)のページを参照してください。

### エクスポーター {#exporters}

{{% docs/languages/exporters/intro %}}

### ゼロコード計装 {#zero-code-instrumentation}

利用できる場合、OpenTelemetryの言語固有の実装は、ソースコードに触れることなくアプリケーションを計装する方法を提供します。
基礎となる仕組みは言語に依存しますが、ゼロコード計装は、アプリケーションにOpenTelemetry API と SDK の機能を追加します。
さらに、計装ライブラリのセットとエクスポーターの依存関係を追加するかもしれません。

詳細は、[ゼロコード計装](/docs/concepts/instrumentation/zero-code/)のページを参照してください。

### リソース検出器 {#resource-detectors}

[リソース](/docs/concepts/resources/)はテレメトリーを生成するエンティティをリソース属性として表します。
たとえば、Kubernetes上のコンテナで実行されているテレメトリーを生成するプロセスには、Pod名、名前空間、そして場合によってはデプロイメント名があります。
これらの属性をすべてリソースに含めることができます。

OpenTelemetry の言語固有の実装は、`OTEL_RESOURCE_ATTRIBUTES` 環境変数からのリソース検出と、プロセスのランタイム、サービス、ホスト、オペレーティングシステムのような多くの一般的なエンティティを提供します。

詳細は、[リソース](/docs/concepts/resources/)のページを参照してください。

### サービス間プロパゲーター {#cross-service-propagators}

伝搬は、サービスやプロセス間でデータを移動させる仕組みです。
トレースに限ったことではありませんが、伝搬により、プロセスやネットワークの境界を越えて任意に分散したサービス間で、トレースはシステムに関する因果情報を構築できます。

ほとんどのユースケースでは、コンテキスト伝搬は計装ライブラリを通じて行われます。
必要であれば、スパンのコンテキストや[バゲッジ](/docs/concepts/signals/baggage/)のような横断的な関心事をシリアライズおよびデシリアライズするために、プロパゲータを使用できます。

### サンプラー {#samplers}

サンプリングは、システムによって生成されるトレースの量を制限するプロセスです。
OpenTelemetryの各言語固有の実装は、いくつかの[ヘッドサンプラー](/docs/concepts/sampling/#head-sampling)を提供しています。

詳細は、[サンプリング](/docs/concepts/sampling)のページを参照してください。

## Kubernetesオペレーター {#kubernetes-operator}

OpenTelemetryオペレーターはKubernetesオペレーターの実装です。
オペレーターはOpenTelemetryコレクターを管理し、OpenTelemetryを使用してワークロードの自動計装を行います。

詳細は、[K8sオペレーター](/docs/kubernetes/operator/)のページを参照してください。

## Function as a Serviceアセット {#function-as-a-service-assets}

OpenTelemetryは、さまざまなクラウドベンダーが提供する Function-as-a-Service を監視するさまざまな方法をサポートしています。
OpenTelemetryコミュニティは、現在、アプリケーションを自動計装できるビルド済みのLambdaレイヤーと、アプリケーションを手動または自動で計装する際に使用できるスタンドアロンのコレクターLambdaレイヤーのオプションを提供しています。

詳細は、[Functions as a Service](/docs/faas/)のページを参照してください。
33 changes: 33 additions & 0 deletions content/ja/docs/concepts/context-propagation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
title: コンテキスト伝搬
weight: 10
description: 分散トレーシングを可能にする概念について学ぶ
default_lang_commit: 313e391
---

コンテキスト伝搬により、[シグナル](/docs/concepts/signals)は、それらが生成された場所に関係なく、互いを相関させられます。
トレースに限ったことではありませんが、コンテキスト伝搬によって、[トレース](/docs/concepts/signals/traces)は、プロセスやネットワークの境界を越えて任意に分散しているサービス間で、システムに関する因果情報を構築できます。

コンテキストの伝播を理解するには、コンテキストと伝搬(プロパゲーション)という、2つの別々の概念を理解する必要があります。

## コンテキスト

コンテキストは、送受信サービスまたは[実行ユニット](/docs/specs/otel/glossary/#execution-unit)が、あるシグナルと別のシグナルを関連付けるための情報を含むオブジェクトです。

たとえば、サービスAがサービスBを呼び出した場合、IDがコンテキスト内にあるサービスAのスパンは、サービスBで次に作成されるスパンの親スパンとして使用されます。
コンテキスト内にあるトレースIDは、サービスBで次に作成されるスパンにも使用されるため、そのスパンはサービスAのスパンと同じトレースの一部であることを意味します。

## 伝搬(プロパゲーション)

伝搬は、サービスとプロセス間でコンテキストを移動させる仕組みです。
コンテキストオブジェクトをシリアライズまたはデシリアライズし、あるサービスから別のサービスに伝搬される関連情報を提供します。

伝播は通常、計装ライブラリによって処理され、ユーザーには透過的です。
手動でコンテキストを伝播する必要がある場合は、伝搬APIを使用できます。

OpenTelemetryはいくつかの公式プロパゲーターを保守しています。
デフォルトのプロパゲーターは[W3C TraceContext](https://www.w3.org/TR/trace-context/)仕様で指定されたヘッダーを使用しています。

## 仕様

コンテキスト伝搬の詳細については、[コンテキストの仕様](/docs/specs/otel/context/)を参照してください。

0 comments on commit 1c6355c

Please sign in to comment.