Questo documento descrive i modelli e codice campione disponibili
per aiutarti a creare monitoraggi sintetici. Le funzioni di esempio sono disponibili nel repository GitHub
Google Cloud/synthetics-sdk-nodjs
.
Se scrivi test e non utilizzi un modello, assicurati che il test
venga superato a meno che non venga generata un'Error
. Ti consigliamo
di utilizzare la libreria Assert
per assicurarti che
gli errori vengano attribuiti alla riga di codice corretta.
Modelli generici
I modelli generici sono configurati per raccogliere dati di traccia e log per le richieste HTTP in uscita. La soluzione utilizza il modulo auto-instrumentation-node di OpenTelemetry e il logger Winston. A causa della dipendenza dai prodotti open source, è probabile che si verifichino modifiche alla struttura dei dati di traccia e di log. Pertanto, i dati di traccia e di log raccolti devono essere utilizzati solo a scopo di debug.
Puoi implementare il tuo approccio per raccogliere i dati di traccia e di log per le richieste HTTP in uscita. Per un esempio di approccio personalizzato,
vedi il corso SyntheticAutoInstrumentation
.
Esempio Node.js generico
L'esempio generic-synthetic-nodejs
mostra
come eseguire una query su un URL. Questo esempio contiene gli stessi elementi della funzione predefinita
visualizzata dalla console Google Cloud . Per visualizzare l'esempio completo, fai clic su more_vert Altro
e poi seleziona Visualizza su GitHub.
Esempio TypeScript
L'esempio generic-synthetic-typescript
mostra come eseguire una query su un URL. Per visualizzare l'esempio completo, fai clic su more_vert Altro
e poi seleziona Visualizza su GitHub.
Modello Puppeteer
Se utilizzi Puppeteer, ti consigliamo di iniziare con l'esempio
generic-puppeteer-nodejs
.
Configurazione di Puppeteer richiesta
Per utilizzare Puppeteer, assicurati di completare i seguenti passaggi:
Includi
.puppeteerrc.cjs
nella directory di origine della tua funzione Cloud Run:Aggiungi il seguente script al file
package.json
della tua funzione Cloud Run:"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
Esempio di Puppeteer
L'esempio generic-puppeteer-nodejs
mostra come utilizzare Puppeteer con la funzione Cloud Run. Per visualizzare l'esempio completo, fai clic su more_vert Altro
e poi seleziona Visualizza su GitHub.
Modello Selenium WebDriver
Se utilizzi Selenium WebDriver, ti consigliamo di iniziare con l'esempio
generic-selenium-nodejs
. L'esempio,
disponibile su GitHub, include un file index.js
e package.json
.
Per visualizzare l'esempio completo, fai clic su more_vert Altro e poi seleziona Visualizza su GitHub.
Modello Moka
Se scrivi test che si basano sul modello Mocha,
valuta se una sequenza di test deve continuare o interrompersi quando si verifica un errore. Per interrompere una sequenza di test dopo un errore, devi impostare il flag
bail
.
Per un esempio end-to-end che include il deployment di un'API, una suite di test Mocha di esempio per gli endpoint API e la configurazione del monitor sintetico, consulta il blog Google Cloud Tutorial sul monitoraggio sintetico.
L'esempio mocha-url-ok
illustra come una funzione Cloud Run può richiamare una suite di test Mocha e fornisce una suite di test di esempio.
Per visualizzare l'esempio completo, fai clic su more_vert Altro
e poi seleziona Visualizza su GitHub.
Modello di link inaccessibile
L'esempio broken-links-ok
mostra come configurare un controllo dei link non funzionanti.
Per questo modello, specifica solo i valori dell'oggetto options
. Questo oggetto specifica l'URI da testare e i parametri del test.
Se utilizzi Puppeteer, assicurati di completare i passaggi della configurazione di Puppeteer richiesta.
Per visualizzare l'esempio completo, fai clic su more_vert Altro e poi seleziona Visualizza su GitHub.
Passaggi successivi
- Creare un monitoraggio sintetico
- Creare un controllo dei link non funzionanti
- Gestire i monitor sintetici
- Esplorare i risultati del monitoraggio sintetico