

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

# Fungsi pustaka tersedia untuk skrip canary Node.js menggunakan Playwright
<a name="CloudWatch_Synthetics_Canaries_Nodejs_Playwright"></a>

Bagian ini menjelaskan fungsi pustaka yang tersedia untuk skrip canary menggunakan runtime Node.js Playwright.

**Topics**
+ [

## meluncurkan
](#Synthetics_Library_Nodejs_Playwright_functions)
+ [

## Halaman baru
](#Synthetics_Library_Nodejs_Playwright_function_newPage)
+ [

## tutup
](#Synthetics_Library_Nodejs_Playwright_function_close)
+ [

## getDefaultLaunchPilihan
](#Synthetics_Library_Nodejs_Playwright_function_getDefaultLaunchOptions)
+ [

## executeStep
](#Synthetics_Library_Nodejs_Playwright_function_executeStep)

## meluncurkan
<a name="Synthetics_Library_Nodejs_Playwright_functions"></a>

Fungsi ini meluncurkan browser Chromium menggunakan fungsi peluncuran Playwright, dan mengembalikan objek browser. Ini mendekompresi binari browser dan meluncurkan browser chromium dengan menggunakan opsi default yang cocok untuk browser tanpa kepala. Untuk informasi selengkapnya tentang `launch` fungsi ini, lihat [https://playwright.dev/docs/api/class-browsertype#browser-type-launch](https://playwright.dev/docs/api/class-browsertype#browser-type-launch)di dokumentasi Playwright.

 **Penggunaan** 

```
const browser = await synthetics.launch();
```

 **Argumen** 

`options`[opsi](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) (opsional) adalah serangkaian opsi yang dapat dikonfigurasi untuk browser.

 **Pengembalian** 

Janji `<Browser>` di mana [Browser](https://playwright.dev/docs/api/class-browser) adalah contoh browser Playwright.

Jika fungsi ini dipanggil lagi, browser yang sebelumnya dibuka ditutup sebelum memulai browser baru. Anda dapat mengganti parameter peluncuran yang digunakan oleh CloudWatch Synthetics, dan meneruskan parameter tambahan saat meluncurkan browser. Misalnya, cuplikan kode berikut meluncurkan browser dengan argumen default dan jalur default yang dapat dieksekusi, tetapi dengan viewport 800 x 600 piksel. Untuk informasi selengkapnya, lihat [Opsi peluncuran Playwright di dokumentasi](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) Playwright.

```
const browser = await synthetics.launch({
  defaultViewport: { 
      "deviceScaleFactor": 1, 
      "width": 800,
      "height": 600 
}});
```

 Anda juga dapat menambahkan atau mengganti flag Chromium yang diteruskan secara default ke browser. Misalnya, Anda dapat menonaktifkan keamanan web dengan menambahkan `--disable-web-security` tanda ke argumen dalam parameter peluncuran CloudWatch Synthetics: 

```
// This function adds the --disable-web-security flag to the launch parameters
const defaultOptions = await synthetics.getDefaultLaunchOptions();
const launchArgs = [...defaultOptions.args, '--disable-web-security'];
const browser = await synthetics.launch({
    args: launchArgs
  });
```

## Halaman baru
<a name="Synthetics_Library_Nodejs_Playwright_function_newPage"></a>

`newPage()`Fungsi membuat dan mengembalikan halaman Playwright baru. Synthetics secara otomatis menyiapkan koneksi Chrome DevTools Protocol (CDP) untuk mengaktifkan tangkapan jaringan untuk pembuatan arsip HTTP (HAR).

 **Penggunaan** 

Gunakan `newPage()` salah satu cara berikut:

 **1. Membuat halaman baru dalam konteks browser baru:** 

```
const page = await synthetics.newPage(browser);
```

 **2. Membuat halaman baru dalam konteks browser tertentu:** 

```
// Create a new browser context
const browserContext = await browser.newContext();

// Create a new page in the specified browser context
const page = await synthetics.newPage(browserContext)
```

 **Argumen** 

Menerima contoh Playwright [Browser](https://playwright.dev/docs/api/class-browser) atau contoh Playwright. [ BrowserContext](https://playwright.dev/docs/api/class-browsercontext) 

 **Pengembalian** 

Janji <Page>di mana Page adalah contoh [Halaman](https://playwright.dev/docs/api/class-page) Penulis Naskah.

## tutup
<a name="Synthetics_Library_Nodejs_Playwright_function_close"></a>

Menutup browser yang saat ini dibuka.

 **Penggunaan** 

```
await synthetics.close();
```

Disarankan untuk menutup browser di `finally` blok skrip Anda.

 **Argumen** 

Tidak ada 

 **Pengembalian** 

Mengembalikan Promise <void>yang digunakan oleh fungsi peluncuran Synthetics untuk meluncurkan browser.

## getDefaultLaunchPilihan
<a name="Synthetics_Library_Nodejs_Playwright_function_getDefaultLaunchOptions"></a>

`getDefaultLaunchOptions()`Fungsi mengembalikan opsi peluncuran browser yang digunakan oleh CloudWatch Synthetics.

 **Penggunaan** 

```
const defaultOptions = await synthetics.getDefaultLaunchOptions();
```

 **Argumen** 

Tidak ada 

 **Pengembalian** 

Mengembalikan [opsi peluncuran](https://playwright.dev/docs/api/class-browsertype#browser-type-launch) Playwright yang digunakan oleh `launch` fungsi Synthetics untuk meluncurkan browser.

## executeStep
<a name="Synthetics_Library_Nodejs_Playwright_function_executeStep"></a>

`executeStep`Fungsi ini digunakan untuk mengeksekusi langkah dalam skrip Synthetics. Dalam CloudWatch Synthetics, langkah Synthetics adalah cara untuk memecah skrip kenari Anda menjadi serangkaian tindakan yang didefinisikan dengan jelas, memungkinkan Anda untuk memantau berbagai bagian perjalanan aplikasi Anda secara terpisah. Untuk setiap langkah, CloudWatch Synthetics melakukan hal berikut:
+ Secara otomatis menangkap tangkapan layar sebelum langkah dimulai dan setelah langkah selesai. Anda juga dapat menangkap tangkapan layar dalam satu langkah. Screenshot ditangkap secara default, tetapi dapat dimatikan dengan menggunakan konfigurasi Synthetics.
+ Laporan, termasuk ringkasan, detail eksekusi langkah seperti durasi langkah, `pass` atau `fail` status, halaman sumber dan tujuan, tangkapan layar terkait URLs, dll. Dibuat untuk setiap proses kenari. Saat Anda memilih run di konsol CloudWatch Synthetics, Anda dapat melihat detail eksekusi setiap langkah pada tab **Step**.
+ `SuccessPercent`dan `Duration` CloudWatch metrik dipancarkan untuk setiap langkah, memungkinkan pengguna untuk memantau ketersediaan dan latensi setiap langkah.

 **Penggunaan** 

```
await synthetics.executeStep("mystepname", async function () {
  await page.goto(url, { waitUntil: 'load', timeout: 30000 });
}
```

**catatan**  
Langkah-langkah harus berjalan secara berurutan. Pastikan untuk menggunakan `await` janji.

 **Argumen** 
+ `stepName`string (wajib) (boolean) — Nama langkah Synthetics. 
+ `functionToExecute`fungsi async (wajib) - Fungsi yang ingin Anda jalankan Synthetics. Fungsi ini harus berisi logika untuk langkah tersebut.
+ `stepConfig`objek (opsional) - Konfigurasi langkah mengesampingkan konfigurasi Synthetics global untuk langkah ini.
  + `continueOnStepFailure`boolean (opsional) - Apakah akan terus menjalankan skrip kenari setelah langkah ini gagal. 
  + `screenshotOnStepStart`boolean (opsional) - Apakah akan mengambil tangkapan layar di awal langkah ini. 
  + `screenshotOnStepSuccess`boolean (opsional) - Apakah akan mengambil tangkapan layar jika langkah ini berhasil. 
  + `screenshotOnStepFailure`boolean (opsional) - Apakah akan mengambil tangkapan layar jika langkah ini gagal. 
+ `page`- Objek halaman penulis naskah (opsional)

  Sebuah objek halaman penulis naskah. Synthetics menggunakan objek halaman ini untuk menangkap tangkapan layar dan. URLs Secara default, Synthetics menggunakan halaman Playwright yang dibuat ketika `synthetics.newPage()` fungsi dipanggil untuk menangkap detail halaman seperti screenshot dan. URLs

 **Pengembalian** 

Mengembalikan Promise yang menyelesaikan dengan nilai yang dikembalikan oleh fungsi. ` functionToExecute` Untuk contoh skrip, lihat [Kode sampel untuk skrip canary](CloudWatch_Synthetics_Canaries_Samples.md) di panduan ini.