

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建置您自己的自訂 OpenTelemetry Collector
<a name="CloudWatch-OTLPAdvancedsetup"></a>

您可以建置自己的自訂 OpenTelemetry Collector，使用 OpenTelemetry 在 CloudWatch 中取得最佳應用程式可觀測性體驗。在此設定中，需要使用開放原始碼 CloudWatch 元件建置自己的 OpenTelemetry Collector。

## 先決條件
<a name="CloudWatch-OTLPAdvancedsetupPrequisite"></a>

確定已在 CloudWatch 中啟用 *Transaction Search*。如需詳細資訊，請參閱 [Transaction Search](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/CloudWatch-Transaction-Search.html)。

## 建置您自己的收集器
<a name="CloudWatch-OTLPAdvancedsetupBuildCollector"></a>

可以使用下列組態建置您自己的收集器，使用 OpenTelemetry 在 CloudWatch 中監控您的應用程式。如需詳細資訊，請參閱[建置自訂收集器](https://opentelemetry.io/docs/collector/custom-collector/)。

CloudWatch 的常見組態。

```
dist:
  name: otelcol-dev
  description: OTel Collector for sending telemetry to CloudWatch.
  output_path: ./otelcol-dev
extensions:
  - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/sigv4authextension v0.111.0
  - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/extension/awsproxy v0.113.0
exporters:
  - gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.111.0
  - gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.111.0
receivers:
  - gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.111.0
```

追蹤的其他組態。

```
# Enable Tracing 
dist:
  name: otelcol-dev
  description: OTel Collector for sending telemetry to CloudWatch.
  output_path: ./otelcol-dev
extensions:
    #Include common configurations and your custom extensions

exporters:
    #Include common configurations and your custom extensions
 
receivers:
  - gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.111.0
processors:
  - gomod: github.com/amazon-contributing/opentelemetry-collector-contrib/processor/awsapplicationsignalsprocessor v0.113.0
  - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor v0.113.0
  - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/metricstransformprocessor v0.113.0
replaces:
  - github.com/open-telemetry/opentelemetry-collector-contrib/internal/aws/awsutil v0.113.0 => github.com/amazon-contributing/opentelemetry-collector-contrib/internal/aws/awsutil v0.113.0
  - github.com/open-telemetry/opentelemetry-collector-contrib/internal/aws/cwlogs v0.113.0 => github.com/amazon-contributing/opentelemetry-collector-contrib/internal/aws/cwlogs v0.113.0
  - github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsemfexporter v0.113.0 => github.com/amazon-contributing/opentelemetry-collector-contrib/exporter/awsemfexporter v0.113.0
  - github.com/openshift/api v3.9.0+incompatible => github.com/openshift/api v0.0.0-20180801171038-322a19404e37
```

**注意**  
注意下列事項：  
建置收集器之後，請依循 [OpenTelemetry Collector](CloudWatch-OTLPSimplesetup.md) 下的程序，在主機或 kubernetes 環境中部署和設定自訂收集器。
如需使用 Application Signals 處理器設定自訂 OpenTelemetry 收集器的詳細資訊，請參閱 [Application Signals 自訂組態](https://github.com/aws-observability/application-signals-demo/blob/main/scripts/opentelemetry/appsignals_custom_otel_setup/custom-opentelemetry.yaml)範例。Application Signals 處理器僅支援將最新版本的 OpenTelemetry Collectors 用於自訂建置。如需受支援版本的資訊，請參閱 [opentelemetry-collector-contrib](https://github.com/amazon-contributing/opentelemetry-collector-contrib/tags) 儲存庫。