Questo documento descrive i modelli e il codice campione disponibili
per aiutarti a creare
monitor sintetici. Le funzioni di esempio sono disponibili
Google Cloud/synthetics-sdk-nodjs
Repository GitHub.
Se scrivi test e non ti affidi a un modello, assicurati che il modello
passa a meno che non venga lanciato un Error
. I nostri suggerimenti
di utilizzare la libreria Assert
per assicurarti
quando si verificano errori, vengono attribuiti alla riga di codice appropriata.
Modelli generici
I modelli generici sono configurati per raccogliere i dati delle tracce e dei log per le richieste HTTP in uscita. La soluzione sfrutta il modulo auto-instrumentation-node di OpenTelemetry e il logger Winston. A causa della dipendenza dai prodotti open source, è normale che la struttura dei dati delle tracce e dei log subisca delle modifiche. Pertanto, i dati delle tracce e dei log raccolti devono essere utilizzati solo a scopo di debug.
Puoi implementare il tuo approccio per raccogliere i dati di traccia e log per i messaggi in uscita
richieste HTTP. Per un esempio di approccio personalizzato, consulta la classe SyntheticAutoInstrumentation
.
Esempio generico Node.js
L'esempio generic-synthetic-nodejs
illustra
come eseguire una query su un URL. Questo esempio contiene lo stesso valore della funzione predefinita
visualizzato nella console Google Cloud. Per visualizzare l'anteprima completa, fai clic su more_vert Altro,
quindi seleziona Visualizza su GitHub.
Esempio TypeScript
L'esempio generic-synthetic-typescript
illustra 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 usi Puppeteer, ti consigliamo di iniziare con la
Esempio di generic-puppeteer-nodejs
.
Configurazione richiesta Puppeteer
Per utilizzare Puppeteer, assicurati di completare i seguenti passaggi:
Includi
.puppeteerrc.cjs
nella directory di origine della 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 burattinaio
L'esempio generic-puppeteer-nodejs
illustra come utilizzare Puppeteer con la funzione Cloud Run. Per visualizzare l'anteprima completa, fai clic su more_vert Altro,
quindi 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'anteprima completa, fai clic su more_vert Altro, quindi seleziona Visualizza su GitHub.
Modello di Moka
Se scrivi test basati sul modello Mocha,
considera se una sequenza di test debba 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, un set di test Mocha di esempio per gli endpoint API e come configurare il monitoraggio sintetico, consulta il blog Tutorial sul monitoraggio sintetico di Google Cloud.
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 link inaccessibile
L'esempio broken-links-ok
illustra come configurare un controllore dei link interrotti.
Per questo modello, specifichi solo i valori dell'oggetto options
. Questo
specifica l'URI da testare e i parametri del test.
Se usi Puppeteer, assicurati di completare la procedura Passaggi di configurazione di Puppeteer richiesti.
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 interrotti
- Gestire i monitoraggi sintetici
- Esplora i risultati del monitoraggio sintetico