É possível enviar relatórios de erros para o Error Reporting a partir de aplicativos Node.js usando a biblioteca Error Reporting para Node.js (em inglês). Use a biblioteca do Error Reporting para Node.js ao criar grupos de erros para os seguintes casos:
- O bucket de registros tem chaves de criptografia gerenciadas pelo cliente (CMEK).
- Os buckets de registros não estão na região
global
. - Você quer relatar eventos de erro personalizados.
O Error Reporting é integrado a alguns serviços do Google Cloud, como Cloud Functions, App Engine, Compute Engine e Google Kubernetes Engine. Essa ferramenta exibe os erros registrados no Cloud Logging por aplicativos em execução nesses serviços. Para mais informações, acesse Como executar no Google Cloud nesta página.
Também é possível enviar dados de erros para o Error Reporting usando o Logging. Para mais informações sobre os requisitos de formatação de dados, leia Como formatar mensagens de erro no Logging (em inglês).
Antes de começar
- Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
-
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Ative a Error Reporting API .
-
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Ative a Error Reporting API .
- Prepare o ambiente para o desenvolvimento do Node.js.
Instale a biblioteca de cliente
Com a biblioteca do Error Reporting para Node.js, você pode monitorar e visualizar os erros relatados por aplicativos Node.js em execução em praticamente qualquer lugar.
-
Use npm para instalar o pacote:
npm install --save @google-cloud/error-reporting
-
Importe a biblioteca e instancie um cliente para começar a relatar erros:
Para mais informações sobre a instalação, leia a documentação da biblioteca do Error Reporting para Node.js (em inglês). Além disso, use o rastreador de problemas (em inglês) para informá-los.
Configurar a biblioteca de cliente
É possível personalizar o comportamento da biblioteca do Error Reporting para Node.js. Consulte a configuração da biblioteca para ver uma lista das possíveis opções de configuração. Essas opções podem ser transmitidas no objeto options
para o construtor da biblioteca.
Outras integrações
Para mais informações sobre integrações entre a biblioteca do Error Reporting para Node.js e outros frameworks da Web do Node.js, consulte o repositório da biblioteca no GitHub (em inglês).
Executar apps no Google Cloud
Para criar grupos de erros usando projects.events.report
, sua conta de serviço exige o papel Gravador do Error Reporting (roles/errorreporting.writer
).
Alguns serviços do Google Cloud concedem automaticamente o
papel de Gravador do Error Reporting (roles/errorreporting.writer
) à conta de serviço
adequada. No entanto, você precisa conceder esse papel à conta de serviço apropriada para alguns serviços.
Ambiente flexível do App Engine
O App Engine concede automaticamente o
papel Gravador do Error Reporting (roles/errorreporting.writer
)
à sua conta de serviço padrão.
A biblioteca do Error Reporting para Node.js pode ser usada sem a necessidade de fornecer credenciais explicitamente.
O Error Reporting é ativado automaticamente para aplicativos do ambiente flexível do App Engine. Nenhuma outra configuração é necessária.Google Kubernetes Engine
Para usar o Error Reporting com o Google Kubernetes Engine, faça o seguinte:
Verifique se a conta de serviço a ser usada pelo contêiner recebeu o papel Gravador do Error Reporting (
roles/errorreporting.writer
).É possível usar a conta de serviço padrão do Compute Engine ou uma conta de serviço personalizada.
Para informações sobre como conceder papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Crie o cluster e conceda a ele o escopo de acesso
cloud-platform
.Por exemplo, o comando create a seguir especifica o escopo de acesso
cloud-platform
e uma conta de serviço:gcloud container clusters create CLUSTER_NAME --service-account SERVICE_ACCT_NAME --scopes=cloud-platform
Compute Engine
Para usar o Error Reporting com instâncias de VM do Compute Engine, faça o seguinte:
Verifique se a conta de serviço a ser usada pela instância de VM recebeu o papel Gravador do Error Reporting (
roles/errorreporting.writer
).É possível usar a conta de serviço padrão do Compute Engine ou uma conta de serviço personalizada.
Para informações sobre como conceder papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
-
No painel de navegação do console do Google Cloud, selecione Compute Engine e, depois, Instâncias de VM:
Selecione a instância de VM em que você quer receber o escopo de acesso
cloud-platform
.Clique em Parar e em Editar.
Na seção Identidade e acesso à API, selecione uma conta de serviço que tenha o papel Gravador do Error Reporting (
roles/errorreporting.writer
).Na seção Escopos de acesso, selecione Permitir acesso completo a todas as APIs do Cloud e salve as alterações.
Clique em Iniciar / retomar.
Cloud Functions
O Cloud Functions concede o
papel Gravador do Error Reporting (roles/errorreporting.writer
)
à sua conta de serviço padrão automaticamente.
A biblioteca do Error Reporting para Node.js pode ser usada sem a necessidade de fornecer credenciais explicitamente.
O Cloud Functions está configurado para usar o Error Reporting automaticamente. As exceções de JavaScript não processadas serão exibidas no Logging e processadas pelo Error Reporting sem a necessidade de usar a biblioteca dessa ferramenta para Node.js.
Exemplo:Exemplo
É possível relatar um erro, manualmente, chamando o método report
, conforme visto no exemplo a seguir:
Como relatar erros com o Express.js
A biblioteca do Error Reporting para Node.js pode integrar o Error Reporting aos frameworks da Web do Node.js mais conhecidos, como o Express.js:
Executar apps em um ambiente de desenvolvimento local
Para usar a biblioteca do Error Reporting para Node.js em um ambiente de desenvolvimento local, como executar a biblioteca na sua própria estação de trabalho, é preciso fornecer a biblioteca do Error Reporting para Node.js com as credenciais padrão do aplicativo local. Para mais informações, consulte Autenticar no Error Reporting.
Para usar as amostras de Node.js nesta página de um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure o Application Default Credentials com as credenciais de usuário.
- Instale a CLI do Google Cloud.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Crie as credenciais de autenticação para sua Conta do Google:
gcloud auth application-default login
Veja mais informações em: Configurar a autenticação para um ambiente de desenvolvimento local.
O
método projects.events.report
também
aceita chaves de API.
Se você quiser usar chaves de API na autenticação, não será necessário
configurar um arquivo local do Application Default Credentials.
Veja mais informações em
Crie uma chave de API
na documentação de autenticação do Google Cloud.
Como visualizar relatórios de erros
No painel de navegação do console do Google Cloud, selecione Error Reporting e escolha seu projeto do Google Cloud:
Para mais informações, consulte Como visualizar erros.