Questo documento descrive i modelli e il codice campione disponibili per aiutarti a creare monitor sintetici. Le funzioni di esempio sono disponibili nel
Google Cloud/synthetics-sdk-nodjs repository GitHub.
Se scrivi test e non utilizzi un modello, assicurati che il test
venga superato a meno che non venga generato un Error. Ti consigliamo
di utilizzare la Assert libreria per assicurarti che
in caso di errori, questi 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 OpenTelemetry auto-instrumentation-node e il logger Winston. A causa della dipendenza dai prodotti open source, è probabile che la struttura dei dati di traccia e log cambi. Pertanto, i dati di traccia e log raccolti devono essere utilizzati solo a scopo di debug.
Puoi implementare il tuo approccio per raccogliere dati di traccia e log per le richieste HTTP in uscita. Per un esempio di approccio personalizzato,
consulta la classe SyntheticAutoInstrumentation.
Esempio Node.js generico
L'esempio generic-synthetic-nodejs mostra
come eseguire una query su un URL. Questo esempio contiene lo stesso della funzione predefinita
visualizzata dalla Google Cloud console. Per visualizzare l'esempio completo, nella barra degli strumenti dell'esempio, seleziona il logo di GitHub.
Esempio TypeScript
L'esempio generic-synthetic-typescript
mostra come eseguire una query su un URL. Per visualizzare l'esempio completo, nella barra degli strumenti dell'esempio, seleziona il logo di GitHub.
Modello Puppeteer
Se utilizzi Puppeteer, ti consigliamo di iniziare con l'
generic-puppeteer-nodejs esempio.
Configurazione di Puppeteer richiesta
Per utilizzare Puppeteer, assicurati di completare i seguenti passaggi:
Includi
.puppeteerrc.cjsnella directory di origine della funzione Cloud Run:Aggiungi il seguente script al file
package.jsondella funzione Cloud Run:"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
Esempio Puppeteer
L'esempio generic-puppeteer-nodejs mostra come
utilizzare Puppeteer con la funzione Cloud Run. Per visualizzare l'esempio completo, nella barra degli strumenti dell'esempio, seleziona il logo di 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, nella barra degli strumenti dell'esempio, seleziona il logo di GitHub.
Modello Mocha
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
bail flag.
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 mostra 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, nella barra degli strumenti dell'esempio, seleziona il logo di GitHub.
Modello di link interrotti
L'esempio broken-links-ok
mostra come configurare un controllo dei link interrotti.
Per questo modello, devi specificare 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 di configurazione di Puppeteer richiesti.
Per visualizzare l'esempio completo, nella barra degli strumenti dell'esempio, seleziona il logo di GitHub.
Passaggi successivi
- Creare un monitor sintetico
- Creare un controllo dei link interrotti
- Gestire i monitor sintetici
- Esplorare i risultati dei monitor sintetici