

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menelan telemetri aplikasi
<a name="observability-ingestion"></a>

Untuk menggunakan fitur observabilitas di Amazon OpenSearch Service, Anda perlu menyerap jejak aplikasi, log, dan metrik. Halaman ini mencakup konfigurasi jalur OpenTelemetry Kolektor dan OpenSearch Penyerapan untuk memproses dan merutekan data telemetri ke dan Layanan Terkelola Amazon untuk OpenSearch Prometheus.

## Mengkonfigurasi Kolektor OpenTelemetry
<a name="observability-ingestion-otel"></a>

Kolektor OpenTelemetry (OTel) adalah titik masuk untuk semua telemetri aplikasi. Ini menerima data melalui OTLP dan merutekan jejak dan log ke OpenSearch Ingestion saat mengirim metrik ke Prometheus.

Anda dapat mengkonfigurasi OTel Kolektor menggunakan salah satu pendekatan berikut:

 OTel Kolektor mengekspor jejak dan mencatat ke titik akhir OpenSearch Ingestion menggunakan otentikasi SiGv4, dan metrik ke Amazon Managed Service untuk Prometheus menggunakan eksportir tulis jarak jauh Prometheus. OpenSearch Ingestion menangani pemrosesan, pengayaan, dan perutean ke. OpenSearch

### OTel Konfigurasi kolektor dengan OpenSearch Ingestion
<a name="observability-ingestion-otel-osis"></a>

Contoh konfigurasi berikut menggunakan otentikasi SiGv4 untuk mengekspor jejak dan log ke titik akhir OpenSearch Ingestion, dan metrik ke Prometheus:

```
extensions:
  sigv4auth:
    region: us-west-2
    service: osis

exporters:
  otlphttp/osis-traces:
    traces_endpoint: ${OSIS_ENDPOINT}/v1/traces
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/osis-logs:
    logs_endpoint: ${OSIS_ENDPOINT}/v1/logs
    auth: { authenticator: sigv4auth }
    compression: none
  # Amazon Managed Service for Prometheus via Prometheus Remote Write with SigV4 auth
  prometheusremotewrite/amp:
    endpoint: "https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write"
    auth:
      authenticator: sigv4auth

service:
  extensions: [sigv4auth]
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/osis-traces]
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/osis-logs]
    metrics:
      receivers: [otlp]
      processors: [batch]
      exporters: [prometheusremotewrite/amp]
```

**catatan**  
Prinsipal IAM mengirimkan kebutuhan data `osis:Ingest` dan `aps:RemoteWrite` izin pada pipa ARN.

## Mengkonfigurasi saluran pipa OpenSearch Ingestion
<a name="observability-ingestion-pipelines"></a>

OpenSearch Penyerapan (atau Data Prepper yang dikelola sendiri) menerima telemetri dari OTel Kolektor dan memprosesnya untuk pemantauan kinerja aplikasi (APM).

### Arsitektur pipa
<a name="observability-ingestion-pipeline-arch"></a>

Pipeline memproses data telemetri dalam tahapan berikut:

1. Pipa entri menerima semua telemetri dan rute log dan jejak ke sub-pipeline yang terpisah.

1. Pipeline log menulis data log untuk OpenSearch menggunakan tipe `log-analytics-plain` indeks.

1. Pipa jejak mendistribusikan bentang ke pipa penyimpanan mentah dan pipa peta layanan.

1. Proses pipeline jejak mentah membentang dengan `otel_traces` prosesor dan menyimpannya dalam tipe `trace-analytics-plain-raw` indeks.

1. Pipeline peta layanan menggunakan `otel_apm_service_map` prosesor untuk menghasilkan topologi dan metrik RED (Rate, Errors, Duration). Ia menulis kepada OpenSearch dan kepada Prometheus melalui penulisan jarak jauh.

### Konfigurasi alur
<a name="observability-ingestion-pipeline-config"></a>

Contoh berikut menunjukkan konfigurasi pipeline lengkap untuk OpenSearch Ingestion yang mencakup semua jenis sinyal observabilitas — log, jejak, dan metrik. Anda dapat menyertakan semua saluran pipa atau hanya yang relevan dengan kasus penggunaan Anda. Ganti *placeholder* nilai dengan informasi Anda sendiri.

```
version: '2'

# Main OTLP pipeline - receives all telemetry and routes by signal type
otlp-pipeline:
  source:
    otlp:
      logs_path: '/pipeline-name/v1/logs'
      traces_path: '/pipeline-name/v1/traces'
      metrics_path: '/pipeline-name/v1/metrics'
  route:
    - logs: 'getEventType() == "LOG"'
    - traces: 'getEventType() == "TRACE"'
    - metrics: 'getEventType() == "METRIC"'
  processor: []
  sink:
    - pipeline:
        name: otel-logs-pipeline
        routes:
          - logs
    - pipeline:
        name: otel-traces-pipeline
        routes:
          - traces
    - pipeline:
        name: otel-metrics-pipeline
        routes:
          - metrics

# Log processing pipeline
otel-logs-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor:
    - copy_values:
        entries:
          - from_key: "time"
            to_key: "@timestamp"
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        index_type: log-analytics-plain
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"

# Trace fan-out pipeline
otel-traces-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor: []
  sink:
    - pipeline:
        name: traces-raw-pipeline
        routes: []
    - pipeline:
        name: service-map-pipeline
        routes: []

# Raw trace storage pipeline
traces-raw-pipeline:
  source:
    pipeline:
      name: otel-traces-pipeline
  processor:
    - otel_traces:
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        index_type: trace-analytics-plain-raw
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"

# Service map generation pipeline (APM)
service-map-pipeline:
  source:
    pipeline:
      name: otel-traces-pipeline
  processor:
    - otel_apm_service_map:
        group_by_attributes:
          - telemetry.sdk.language # Add any resource attribute to group by
        window_duration: 30s
  route:
    - otel_apm_service_map_route: 'getEventType() == "SERVICE_MAP"'
    - service_processed_metrics: 'getEventType() == "METRIC"'
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"
        routes:
          - otel_apm_service_map_route
        index_type: otel-v2-apm-service-map
    - prometheus:
        url: 'https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write'
        aws:
          region: 'region'
        routes:
          - service_processed_metrics

# Metrics processing pipeline
otel-metrics-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor:
    - otel_metrics:
  sink:
    - prometheus:
        url: 'https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write'
        aws:
          region: 'region'
```

## Memverifikasi konsumsi
<a name="observability-ingestion-verify"></a>

Setelah Anda mengonfigurasi OTel Kolektor dan saluran pipa, verifikasi bahwa data telemetri mengalir dengan benar.
+ **Verifikasi OpenSearch indeks** — Konfirmasikan bahwa indeks berikut ada di domain Anda:`otel-v1-apm-span-*`,`otel-v2-apm-service-map`, dan. `logs-otel-v1-*`
+ **Verifikasi target Prometheus** — Konfirmasikan bahwa target penulisan jarak jauh Prometheus menerima metrik dari pipeline peta layanan.
+ **Verifikasi di OpenSearch UI** — Arahkan ke **Observabilitas**, lalu **Pemantauan Aplikasi** untuk mengonfirmasi bahwa layanan Anda muncul.

## Langkah selanjutnya
<a name="observability-ingestion-next"></a>

Setelah Anda memverifikasi bahwa data telemetri tertelan, jelajahi topik-topik berikut:
+ [Pemantauan aplikasi](observability-app-monitoring.md)— Pantau kesehatan aplikasi dengan peta layanan dan metrik RED.
+ [Temukan jejak](observability-analyze-traces.md) — Temukan dan analisis jejak yang didistribusikan.
+ [Temukan log](observability-analyze-logs.md) - Temukan dan kueri log aplikasi.
+ [Temukan metrik](observability-metrics.md) — Temukan dan kueri metrik Prometheus menggunakan PromQL.