In diesem Dokument werden die verfügbaren Vorlagen und Beispielcodes beschrieben.
zum Erstellen synthetischer Monitore. Die Beispielfunktionen sind im GitHub-Repository Google Cloud/synthetics-sdk-nodjs
verfügbar.
Wenn Sie Tests schreiben und keine Vorlage verwenden, achten Sie darauf, dass Ihr Test bestanden wird, es sei denn, eine Error
wird geworfen. Wir empfehlen die Verwendung der Assert
-Bibliothek, damit Fehler der richtigen Codezeile zugeordnet werden können.
Allgemeine Vorlagen
Die generischen Vorlagen sind so konfiguriert, dass sie Trace- und Logdaten für ausgehende HTTP-Anfragen. Die Lösung nutzt das OpenTelemetry-Modul auto-instrumentation-node und den Winston-Logger. Aufgrund der Abhängigkeit von Open-Source-Produkten sind Änderungen Struktur von Trace- und Logdaten. Der erfasste Trace und Protokolldaten sollten nur zur Fehlerbehebung verwendet werden.
Sie können Ihren eigenen Ansatz zur Erfassung von Trace- und Protokolldaten für ausgehende HTTP-Anfragen implementieren. Ein Beispiel für einen benutzerdefinierten Ansatz finden Sie in der Klasse SyntheticAutoInstrumentation
.
Generisches Node.js-Beispiel
Im generic-synthetic-nodejs
-Beispiel wird gezeigt, wie eine URL abgefragt wird. Dieses Beispiel enthält dieselbe wie die Standardfunktion
in der Google Cloud Console angezeigt. Um das vollständige Beispiel anzusehen, klicken Sie auf more_vert Mehr.
und wählen Sie dann Auf GitHub ansehen aus.
TypeScript-Beispiel
Beispiel generic-synthetic-typescript
zeigt, wie eine URL abgefragt wird. Wenn Sie sich das vollständige Beispiel ansehen möchten, klicken Sie auf more_vert Mehr und wählen Sie dann Auf GitHub ansehen aus.
Puppeteer-Vorlage
Wenn Sie Puppeteer verwenden, sollten Sie mit dem Beispiel generic-puppeteer-nodejs
beginnen.
Erforderliche Puppeteer-Einrichtung
Führen Sie die folgenden Schritte aus, um Puppeteer zu verwenden:
Fügen Sie
.puppeteerrc.cjs
in das Quellverzeichnis Ihrer Cloud Run-Funktion ein:Fügen Sie das folgende Skript in die Datei
package.json
Ihres Cloud Run-Funktion:"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
Puppeteer-Beispiel
Das Beispiel generic-puppeteer-nodejs
veranschaulicht,
um Puppeteer mit der Cloud Run-Funktion zu verwenden. Um das vollständige Beispiel anzusehen, klicken Sie auf more_vert Mehr.
und wählen Sie dann Auf GitHub ansehen aus.
Selenium WebDriver-Vorlage
Wenn Sie Selenium WebDriver verwenden, sollten Sie mit dem Beispiel generic-selenium-nodejs
beginnen. Das Beispiel,
die auf GitHub verfügbar ist, enthält die Dateien index.js
und package.json
.
Wenn Sie sich das vollständige Beispiel ansehen möchten, klicken Sie auf more_vert Mehr und wählen Sie dann Auf GitHub ansehen aus.
Moka-Vorlage
Wenn Sie Tests schreiben, die auf der Mocha-Vorlage basieren,
Dann überlegen Sie, ob eine Reihe von Tests fortgesetzt oder beendet werden soll, wenn eine
Fehler auftreten. Wenn Sie eine Testabfolge nach einem Fehler beenden möchten, müssen Sie das Flag bail
setzen.
Ein End-to-End-Beispiel, das das Bereitstellen einer API, eine Beispiel-Mocha-Testsuite für die API-Endpunkte und die Konfiguration des synthetischen Monitors umfasst, finden Sie im Blogpost Google Cloud Synthetic Monitoring Tutorial.
Das Beispiel mocha-url-ok
veranschaulicht, wie eine Cloud Run-Funktion eine Mocha-Test-Suite aufrufen kann. Außerdem enthält es eine Beispiel-Test-Suite.
Wenn Sie sich das vollständige Beispiel ansehen möchten, klicken Sie auf more_vert Mehr und wählen Sie dann Auf GitHub ansehen aus.
Vorlage für fehlerhafte Links
Im Beispiel broken-links-ok
wird gezeigt, wie eine Prüfung auf fehlerhafte Links konfiguriert wird.
Für diese Vorlage geben Sie nur die Werte des options
-Objekts an. In diesem Objekt werden der zu testende URI und die Testparameter angegeben.
Wenn Sie Puppeteer verwenden, müssen Sie die erforderlichen Puppeteer-Einrichtungsschritte ausführen.
Wenn Sie sich das vollständige Beispiel ansehen möchten, klicken Sie auf more_vert Mehr und wählen Sie dann Auf GitHub ansehen aus.
Nächste Schritte
- Synthetischen Monitor erstellen
- Link-Check erstellen
- Synthetische Monitore verwalten
- Ergebnisse des synthetischen Monitorings untersuchen