Menulis skrip canary - Amazon CloudWatch

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

Menulis skrip canary

Bagian berikut menjelaskan cara menulis skrip kenari dan cara mengintegrasikan kenari dengan AWS layanan lain dan dengan dependensi dan pustaka eksternal.

Mengubah skrip Selenium yang sudah ada untuk menggunakan canary Synthetics

Anda dapat dengan cepat memodifikasi skrip yang ada untuk Python dan Selenium untuk digunakan sebagai canary. Untuk informasi selengkapnya tentang Selenium, silakan lihat www.selenium.dev/.

Untuk contoh ini, kita akan mulai dengan skrip Selenium berikut:

from selenium import webdriver def basic_selenium_script(): browser = webdriver.Chrome() browser.get('https://example.com') browser.save_screenshot('loaded.png') basic_selenium_script()

Langkah konversinya adalah sebagai berikut.

Untuk mengkonversi skrip Selenium yang akan digunakan sebagai canary
  1. Ubah pernyataan import untuk menggunakan Selenium dari modul aws_synthetics:

    from aws_synthetics.selenium import synthetics_webdriver as webdriver

    Modul Selenium dari aws_synthetics memastikan bahwa kenari dapat memancarkan metrik dan log, menghasilkan HAR file, dan bekerja dengan fitur Synthetics lainnya. CloudWatch

  2. Buat fungsi handler dan panggil metode Selenium Anda. Penanggung jawab adalah fungsi titik masuk untuk skrip.

    Jika Anda menggunakan syn-python-selenium-1.0, fungsi handler harus diberi nama handler. Jika Anda menggunakan syn-python-selenium-1.1 atau lebih baru, fungsi tersebut dapat memiliki nama apa pun, tetapi harus nama yang sama yang digunakan dalam skrip. Juga, jika Anda menggunakan syn-python-selenium-1.1 atau yang lebih baru, Anda akan dapat menyimpan skrip Anda di bawah folder apa pun dan menentukan folder itu sebagai bagian dari nama handler.

    def handler(event, context): basic_selenium_script()

Skrip sekarang diperbarui menjadi kenari CloudWatch Synthetics. Berikut adalah skrip yang diperbarui:

from aws_synthetics.selenium import synthetics_webdriver as webdriver def basic_selenium_script(): browser = webdriver.Chrome() browser.get('https://example.com') browser.save_screenshot('loaded.png') def handler(event, context): basic_selenium_script()

Mengubah skrip Puppeteer Synthetics yang ada untuk mengautentikasi sertifikat non-standar

Salah satu kasus penggunaan penting untuk kenari Synthetics adalah bagi Anda untuk memantau titik akhir Anda sendiri. Jika Anda ingin memantau titik akhir yang tidak siap untuk lalu lintas eksternal, pemantauan ini terkadang dapat berarti bahwa Anda tidak memiliki sertifikat yang tepat yang ditandatangani oleh otoritas sertifikat pihak ketiga tepercaya.

Dua solusi yang mungkin untuk skenario ini adalah sebagai berikut:

Anda tidak terbatas pada dua opsi ini ketika Anda menggunakan kenari CloudWatch Synthetics. Anda dapat memperluas fitur-fitur ini dan menambahkan logika bisnis Anda dengan memperluas kode canary.

catatan

Synthetics canary yang berjalan pada runtime Python secara bawaan mengaktifkan --ignore-certificate-errors flag, jadi kenari tersebut seharusnya tidak memiliki masalah dalam menjangkau situs dengan konfigurasi sertifikat non-standar.