Este documento descreve os modelos e o exemplo de código disponíveis para ajudar você a criar monitores sintéticos. As funções de exemplo estão disponíveis no repositório do GitHub
Google Cloud/synthetics-sdk-nodjs
.
Se você escrever testes e não usar um modelo, verifique se o teste
será aprovado, a menos que um Error
seja gerado. Recomendamos que você use a biblioteca Assert
para garantir que, quando ocorrerem falhas, elas sejam atribuídas à linha de código correta.
Modelos genéricos
Os modelos genéricos são configurados para coletar dados de rastreamento e de registro de solicitações HTTP de saída. A solução usa o módulo auto-instrumentation-node do OpenTelemetry e o logger Winston. Devido à dependência de produtos de código aberto, espere mudanças na estrutura dos dados de rastreamento e de registros. Portanto, os dados de rastreamento e registro coletados devem ser usados apenas para fins de depuração.
Você pode implementar sua própria abordagem para coletar dados de rastreamento e registro de solicitações HTTP
de saída. Para um exemplo de abordagem personalizada, consulte a classe SyntheticAutoInstrumentation
.
Exemplo genérico do Node.js
A amostra generic-synthetic-nodejs
ilustra como consultar um URL. Esta amostra contém o mesmo que a função padrão
mostrada pelo console Google Cloud . Para ver o exemplo completo, clique em more_vert Mais e selecione Ver no GitHub.
Exemplo de TypeScript
O exemplo generic-synthetic-typescript
ilustra como consultar um URL. Para ver o exemplo completo, clique em more_vert Mais e selecione Ver no GitHub.
Modelo do Puppeteer
Se você usa o Puppeteer, comece com o exemplo
generic-puppeteer-nodejs
.
Configuração necessária do Puppeteer
Para usar o Puppeteer, conclua as seguintes etapas:
Inclua
.puppeteerrc.cjs
no diretório de origem da sua função do Cloud Run:Adicione o seguinte script ao arquivo
package.json
da sua função do Cloud Run:"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
Exemplo do Puppeteer
O exemplo generic-puppeteer-nodejs
ilustra como
usar o Puppeteer com sua função do Cloud Run. Para ver o exemplo completo, clique em more_vert Mais e selecione Ver no GitHub.
Modelo do Selenium WebDriver
Se você usa o Selenium WebDriver, comece com o exemplo
generic-selenium-nodejs
. A amostra, que está disponível no GitHub, inclui um arquivo index.js
e package.json
.
Para ver o exemplo completo, clique em more_vert Mais e selecione Ver no GitHub.
Modelo do Mocha
Se você escrever testes que dependem do modelo Mocha,
considere se uma sequência de testes deve continuar ou parar quando ocorrer uma
falha. Para interromper uma sequência de testes após uma falha, defina a flag
bail
.
Para um exemplo completo que inclui a implantação de uma API, um conjunto de testes do Mocha de amostra para os endpoints da API e como configurar o monitor sintético, consulte o blog Google Cloud Tutorial do Synthetic Monitoring.
O exemplo mocha-url-ok
ilustra como
uma função do Cloud Run pode invocar um
pacote de testes do Mocha e fornece um pacote de testes de exemplo.
Para ver o exemplo completo, clique em more_vert Mais e selecione Ver no GitHub.
Modelo de link corrompido
O exemplo broken-links-ok
mostra como configurar um verificador de links quebrados.
Para esse modelo, especifique apenas os valores do objeto options
. Esse
objeto especifica o URI a ser testado e os parâmetros do teste.
Se você usa o Puppeteer, conclua as etapas de configuração obrigatória do Puppeteer.
Para ver o exemplo completo, clique em more_vert Mais e selecione Ver no GitHub.
A seguir
- Criar um monitor sintético
- Criar um verificador de links corrompidos
- Gerenciar monitores sintéticos
- Analisar os resultados de monitores sintéticos