

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

# Kelola operasi kardinalitas tinggi
<a name="Application-Signals-Cardinality"></a>

Sinyal Aplikasi mencakup pengaturan di CloudWatch agen yang dapat Anda gunakan untuk mengelola kardinalitas operasi Anda dan mengelola ekspor metrik untuk mengoptimalkan biaya. Secara default, fungsi pembatas metrik menjadi aktif ketika jumlah operasi yang berbeda untuk layanan dari waktu ke waktu melebihi ambang default 500. Anda dapat menyetel perilaku dengan menyesuaikan pengaturan konfigurasi. 

## Tentukan apakah pembatasan metrik diaktifkan
<a name="Limiting-Activated"></a>

Anda dapat menggunakan metode berikut untuk mengetahui apakah pembatasan metrik default sedang terjadi. Jika ya, Anda harus mempertimbangkan untuk mengoptimalkan kontrol kardinalitas dengan mengikuti langkah-langkah di bagian selanjutnya.
+ Di CloudWatch konsol, pilih **Sinyal Aplikasi**, **Layanan**. Jika Anda melihat **Operasi** bernama **AllOtherOperations**atau **RemoteOperation**bernama **AllOtherRemoteOperations**, maka pembatasan metrik sedang terjadi.
+ Jika ada metrik yang dikumpulkan oleh Sinyal Aplikasi yang memiliki nilai `AllOtherOperations` untuk `Operation` dimensinya, maka pembatasan metrik sedang terjadi.
+ Jika ada metrik yang dikumpulkan oleh Sinyal Aplikasi yang memiliki nilai `AllOtherRemoteOperations` untuk `RemoteOperation` dimensinya, maka pembatasan metrik sedang terjadi.

### Optimalkan kontrol kardinalitas
<a name="Optimize-Cardinality"></a>

Untuk mengoptimalkan kontrol kardinalitas Anda, Anda dapat melakukan hal berikut:
+ Buat aturan kustom untuk operasi agregat.
+ Konfigurasikan kebijakan pembatasan metrik Anda.

#### Buat aturan kustom untuk operasi agregat
<a name="Optimize-Cardinality-Custom-Rules"></a>

Operasi kardinalitas tinggi terkadang dapat disebabkan oleh nilai unik yang tidak tepat yang diekstraksi dari konteksnya. Misalnya, mengirimkan permintaan HTTP/S yang menyertakan pengguna IDs atau sesi IDs di jalur dapat menyebabkan ratusan operasi yang berbeda. Untuk mengatasi masalah tersebut, sebaiknya Anda mengonfigurasi CloudWatch agen dengan aturan penyesuaian untuk menulis ulang operasi ini.

Dalam kasus di mana ada lonjakan dalam menghasilkan berbagai metrik yang berbeda melalui `RemoteOperation` panggilan individual, seperti`PUT /api/customer/owners/123`,, dan permintaan serupa`PUT /api/customer/owners/456`, kami sarankan Anda mengkonsolidasikan operasi ini menjadi satu. `RemoteOperation` Salah satu pendekatannya adalah menstandarisasi semua `RemoteOperation` panggilan yang dimulai `PUT /api/customer/owners/` dengan format seragam, khususnya. `PUT /api/customer/owners/{ownerId}` Contoh berikut menggambarkan hal ini. Untuk informasi tentang aturan penyesuaian lainnya, lihat[Aktifkan Sinyal CloudWatch Aplikasi](CloudWatch-Agent-Application_Signals.md).

```
{
   "logs":{
      "metrics_collected":{
         "application_signals":{
            "rules":[
               {
                  "selectors":[
                     {
                        "dimension":"RemoteOperation",
                        "match":"PUT /api/customer/owners/*"
                     }
                  ],
                  "replacements":[
                     {
                        "target_dimension":"RemoteOperation",
                        "value":"PUT /api/customer/owners/{ownerId}"
                     }
                  ],
                  "action":"replace"
               }
            ]
         }
      }
   }
}
```

Dalam kasus lain, metrik kardinalitas tinggi mungkin telah digabungkan`AllOtherRemoteOperations`, dan mungkin tidak jelas metrik spesifik apa yang disertakan. CloudWatch Agen dapat mencatat operasi yang dijatuhkan. Untuk mengidentifikasi operasi yang dijatuhkan, gunakan konfigurasi dalam contoh berikut untuk mengaktifkan logging hingga masalah muncul kembali. Kemudian periksa log CloudWatch agen (dapat diakses oleh wadah `stdout` atau file EC2 log) dan cari kata kunci`drop metric data`.

```
{
  "agent": {
    "config": {
      "agent": {
        "debug": true
      },
      "traces": {
        "traces_collected": {
          "application_signals": {
          }
        }
      },
      "logs": {
        "metrics_collected": {
          "application_signals": {
            "limiter": {
              "log_dropped_metrics": true
            }
          }
        }
      }
    }
  }
}
```

#### Buat kebijakan pembatasan metrik Anda
<a name="Optimize-Cardinality-Metric-Limiting"></a>

Jika konfigurasi pembatas metrik default tidak membahas kardinalitas untuk layanan Anda, Anda dapat menyesuaikan konfigurasi pembatas metrik. Untuk melakukan ini, tambahkan `limiter` bagian di bawah `logs/metrics_collected/application_signals` bagian dalam file konfigurasi CloudWatch Agen.

Contoh berikut menurunkan ambang batas metrik dari 500 metrik berbeda menjadi 100.

```
{
  "logs": {
    "metrics_collected": {
      "application_signals": {
        "limiter": {
          "drop_threshold": 100
        }
      }
    }
  }
}
```