

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

# Mengkonfigurasi pengukuran per jam dengan AWS Marketplace Metering Service
<a name="container-metering-registerusage"></a>

**catatan**  
 Untuk penerapan Amazon EKS, perangkat lunak Anda harus menggunakan [peran IAM untuk akun layanan (IRSA)](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html) untuk menandatangani panggilan API untuk operasi API. [https://docs.aws.amazon.com/marketplace/latest/APIReference/API_marketplace-metering_RegisterUsage.html](https://docs.aws.amazon.com/marketplace/latest/APIReference/API_marketplace-metering_RegisterUsage.html) Menggunakan [EKS Pod Identity](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html), peran node, atau kunci akses jangka panjang tidak didukung.  
Untuk penerapan Amazon ECS, perangkat lunak Anda harus menggunakan peran [IAM tugas Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) untuk menandatangani panggilan API untuk operasi API. [https://docs.aws.amazon.com/marketplace/latest/APIReference/API_marketplace-metering_RegisterUsage.html](https://docs.aws.amazon.com/marketplace/latest/APIReference/API_marketplace-metering_RegisterUsage.html) Menggunakan peran node atau kunci akses jangka panjang tidak didukung.

Jika produk kontainer Anda menggunakan harga per jam per tugas atau per-pod alih-alih dimensi harga terukur khusus, Anda tidak perlu menentukan dimensi pengukuran khusus. Anda dapat menggunakan AWS Marketplace Metering Service untuk pengukuran per jam dengan produk kontainer. AWS Marketplace Bagian berikut menunjukkan cara mengonfigurasi pengukuran per jam dengan AWS Marketplace Metering Service.

Perangkat lunak pengukur operasi `RegisterUsage` API digunakan per tugas Amazon Elastic Container Service (Amazon ECS) atau per pod Amazon Elastic Kubernetes Service (Amazon EKS), per jam, dengan penggunaan prorata ke yang kedua. Penggunaan minimal 1 menit berlaku untuk tugas atau pod yang berumur pendek. Pengukuran berkelanjutan untuk penggunaan perangkat lunak secara otomatis ditangani oleh. AWS Marketplace Metering Control Plane Perangkat lunak Anda tidak diperlukan untuk melakukan tindakan khusus pengukuran apa pun kecuali menelepon `RegisterUsage` sekali untuk pengukuran penggunaan perangkat lunak untuk memulai.

`RegisterUsage`harus segera dipanggil pada saat meluncurkan wadah. Jika Anda tidak mendaftarkan kontainer dalam 6 jam pertama peluncuran kontainer, AWS Marketplace Metering Service tidak memberikan jaminan pengukuran apa pun untuk bulan-bulan sebelumnya. Namun, pengukuran akan berlanjut untuk bulan berjalan ke depan sampai wadah berakhir.

Mereka AWS Marketplace Metering Control Plane terus menagih pelanggan untuk menjalankan tugas Amazon ECS dan pod Amazon EKS, terlepas dari status langganan pelanggan. Ini menghilangkan kebutuhan perangkat lunak Anda untuk melakukan pemeriksaan hak setelah peluncuran tugas atau pod awal yang berhasil. 

*Untuk informasi selengkapnya tentang mengintegrasikan AWS Marketplace Metering Service API dengan produk kontainer dengan harga per jam, lihat lab [Integrasikan dengan pengukuran per jam](https://catalog.workshops.aws/mpseller/en-US/container/integrate-hourly) di bengkel penjual.AWS Marketplace * 

**Topics**
+ [Prasyarat pengukuran per jam](#hourly-metering-prereqs)
+ [Integrasi pengujian untuk `RegisterUsage`](#testing-integration-for-registerusage)
+ [Penanganan kesalahan untuk `RegisterUsage`](#hourly-metering-entitlement-error-handling)
+ [Mengintegrasikan produk container Anda dengan AWS Marketplace Metering Service menggunakan AWS SDK untuk Java](java-integration-example-registerusage.md)

## Prasyarat pengukuran per jam
<a name="hourly-metering-prereqs"></a>

Sebelum menerbitkan produk, Anda harus melakukan hal berikut:

1. Buat produk kontainer baru di Portal Manajemen AWS Marketplace, dan catat kode produknya.

   Untuk informasi selengkapnya, lihat [Ikhtisar: Buat produk kontainer](container-product-getting-started.md#create-container-product).

1. Gunakan peran AWS Identity and Access Management (IAM) untuk tugas atau pod yang menjalankan aplikasi Anda dengan izin IAM yang diperlukan untuk memanggil. `RegisterUsage` Kebijakan terkelola `AWSMarketplaceMeteringRegisterUsage` meliputi izin-izin ini. Untuk informasi selengkapnya tentang kebijakan, lihat [ AWSMarketplaceMeteringFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSMarketplaceMeteringFullAccess.html)di *Referensi Kebijakan AWS Terkelola*.

1. (Opsional) Jika Anda ingin melihat logging, kami sarankan Anda mengaktifkan AWS CloudTrail logging dalam tugas atau definisi pod.

1. Lakukan panggilan uji ke operasi `RegisterUsage` API dengan catatan untuk semua dimensi harga yang Anda tetapkan.

## Integrasi pengujian untuk `RegisterUsage`
<a name="testing-integration-for-registerusage"></a>

Gunakan operasi `RegisterUsage` API untuk menguji integrasi Anda sebelum mengirimkan gambar Anda AWS Marketplace untuk dipublikasikan.

Panggil `RegisterUsage` dari gambar kontainer dengan menjalankan produk Anda di Amazon ECS atau Amazon EKS. Gunakan AWS akun yang Anda gunakan untuk membuat daftar produk AWS Marketplace. Integrasi pengukuran Anda harus secara dinamis mengatur Wilayah AWS, bukan hardcoding itu. Namun, saat menguji, luncurkan setidaknya satu tugas Amazon ECS atau pod Amazon EKS yang berisi kontainer berbayar Anda di Wilayah AS Timur (Virginia Utara). Dengan melakukan ini, tim AWS Marketplace operasi dapat memverifikasi pekerjaan Anda dengan log di Wilayah tersebut.

**catatan**  
Jika produk Anda mendukung Amazon ECS dan Amazon EKS, Anda hanya perlu meluncurkan di Amazon EKS bagi kami untuk memvalidasi integrasi Anda.

Anda tidak dapat sepenuhnya menguji integrasi sampai produk Anda dipublikasikan dengan semua metadata dan informasi harga yang diperlukan. Jika diminta, tim operasi AWS Marketplace katalog dapat memverifikasi penerimaan catatan pengukuran Anda.

## Penanganan kesalahan untuk `RegisterUsage`
<a name="hourly-metering-entitlement-error-handling"></a>

Jika image container Anda terintegrasi dengan AWS Marketplace Metering Service dan menerima pengecualian selain `ThrottlingException` saat startup container, Anda harus menghentikan container untuk mencegah penggunaan yang tidak sah.

Pengecualian selain `ThrottlingException` dilemparkan hanya pada panggilan awal ke operasi `RegisterUsage` API. Panggilan berikutnya dari tugas Amazon ECS yang sama atau pod Amazon EKS tidak dibuang `CustomerNotSubscribedException` meskipun pelanggan berhenti berlangganan saat tugas atau pod masih berjalan. Pelanggan ini masih dikenakan biaya untuk menjalankan kontainer setelah mereka berhenti berlangganan, dan penggunaannya dilacak.

Tabel berikut menjelaskan kesalahan yang mungkin ditimbulkan oleh operasi `RegisterUsage` API. Setiap bahasa pemrograman AWS SDK memiliki seperangkat pedoman penanganan kesalahan yang dapat Anda rujuk untuk informasi tambahan. 


|  **Kesalahan**  |  **Deskripsi**  | 
| --- | --- | 
|  InternalServiceErrorException  |  RegisterUsagetidak tersedia.  | 
|  CustomerNotEntitledException  |  Pelanggan tidak memiliki langganan yang valid untuk produk tersebut.  | 
|  InvalidProductCodeException  |  ParameterProductCodenilai yang dilewatkan sebagai bagian dari permintaan tidak ada.  | 
|  InvalidPublicKeyException  |  ParameterPublicKeyVersionnilai yang dilewatkan sebagai bagian dari permintaan tidak ada.  | 
|  PlatformNotSupportedException  |  AWS Marketplace tidak mendukung penggunaan pengukuran dari platform yang mendasarinya. Hanya Amazon ECS, Amazon EKS, dan AWS Fargate yang didukung.  | 
|  ThrottlingException  |  Panggilan keRegisterUsagediperlambat.  | 
|  InvalidRegionException  |  RegisterUsageharus dipanggil sama Wilayah AWS dengan tugas Amazon ECS atau pod Amazon EKS diluncurkan. Hal ini mencegah kontainer dari memilih Wilayah (misalnya,withRegion(“us-east-1”)) saat memanggilRegisterUsage.  | 