Para aplicativos Node.js, os plug-ins são mantidos nas bibliotecas de geração de registros já conhecidas Bunyan e Winston.
Winston é uma biblioteca de uso geral, que implementa uma variedade de formatadores e transportes de registro.
A Bunyan é especializada em registros JSON estruturados. A formatação do registro pode ser executada por meio do pipe na linha de comando da Bunyan.
Também é possível usar a biblioteca de cliente do Logging para Node.js diretamente ou criar suas próprias integrações com a biblioteca de geração de registros preferida.
Não é necessário instalar o agente do Logging para usar as bibliotecas Bunyan e Winston em uma instância de VM do Compute Engine.
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 Cloud Logging 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 Cloud Logging API.
- Prepare o ambiente para o desenvolvimento do Node.js.
Como usar o Bunyan
O Cloud Logging fornece um plug-in para a biblioteca de geração de registros Node.js do Bunyan. O plug-in do Logging para Bunyan fornece uma camada mais simples e de nível superior para trabalhar com o Logging.
Como instalar o plug-in
A maneira mais fácil de instalar o plug-in Bunyan do Logging é com NPM:
npm install --save bunyan @google-cloud/logging-bunyan
Importe o plug-in e adicione-o à configuração do Bunyan:
Como configurar o plug-in
É possível personalizar o comportamento do plug-in
Bunyan usando as mesmas opções de configuração suportadas pela
biblioteca de cliente da Cloud API do Cloud Logging para Node.js.
Essas opções podem ser transmitidas no objeto options
para o construtor
do plug-in.
Como usar o Bunyan e o Express
É possível configurar e usar o Bunyan com o Logging em um aplicativo Node.js Express.
Como usar o Winston
O Cloud Logging fornece um plug-in para a biblioteca de geração de registros Node.js do Winston. O plug-in do Logging para Winston fornece uma camada mais simples e de nível superior para trabalhar com o Logging.
Como instalar o plug-in
A maneira mais fácil de instalar o plug-in Winston do Logging é com NPM:
npm install --save @google-cloud/logging-winston winston
Importe o plug-in e adicione-o à configuração do Winston:
Como configurar o plug-in
É possível personalizar o comportamento do plug-in Winston
usando as mesmas
opções de configuração suportadas pela
biblioteca de cliente Cloud API do Cloud Logging para Node.js.
Essas opções podem ser transmitidas no objeto options
para o construtor
do plug-in.
Para mais informações sobre a instalação, consulte a documentação para as bibliotecas do Cloud Logging para Node.js. Além disso, use o rastreador de problemas (em inglês) para informá-los.
Gravar registros com a biblioteca de cliente do Cloud Logging
Para informações sobre como usar a biblioteca de cliente do Cloud Logging para Node.js diretamente, consulte Bibliotecas de cliente do Cloud Logging.
Executar no Google Cloud
Para que um aplicativo grave registros usando as bibliotecas do Cloud Logging para Node.js, a
conta de serviço do recurso subjacente precisa ter o
papel de Gravador de registros (roles/logging.logWriter
) do IAM.
A maioria dos ambientes do Google Cloud configura automaticamente a conta de serviço padrão para ter esse papel.
App Engine
O Cloud Logging é ativado automaticamente para o App Engine, e a conta de serviço padrão do aplicativo tem as permissões do IAM por padrão para gravar entradas de registro.
Para gravar entradas de registro do seu app, recomendamos que você use o Bunyan ou o Winston (links em inglês), conforme descrito nesta página.
Para mais informações, consulte Como gravar e ver registros.
Google Kubernetes Engine (GKE)
O GKE concede automaticamente à conta de serviço padrão
o papel do IAM de Gravador de registros (roles/logging.logWriter
).
Se você usar a
Identidade da carga de trabalho
com essa conta de serviço padrão para permitir que as cargas de trabalho acessem
APIs específicas do Google Cloud, nenhuma outra configuração será necessária.
No entanto, se você usar a Identidade da carga de trabalho com uma
conta de serviço do IAM personalizada, verifique se essa conta
tem o papel de Gravador de registros (roles/logging.logWriter
).
Se necessário, também é possível usar o seguinte comando para adicionar o escopo de acesso logging.write
ao criar o cluster:
gcloud container clusters create example-cluster-name \
--scopes https://www.googleapis.com/auth/logging.write
Compute Engine
Ao usar instâncias de VM do Compute Engine, adicione o escopo de acesso cloud-platform
a cada instância. Ao criar uma nova instância por meio do
console do Google Cloud, faça isso na seção Identidade e acesso à API
do painel Criar instância. Use a conta de serviço padrão do Compute Engine ou outra de sua escolha e selecione Permitir acesso completo a todas as APIs do Cloud na seção Identidade e acesso à API. Seja qual for a conta
de serviço selecionada, verifique se ela recebeu o
papel de gravador de registros na seção IAM e administrador do
console do Google Cloud.
Cloud Functions
O Cloud Functions concede o papel de gravador de registros por padrão.
As bibliotecas do Cloud Logging para Node.js podem ser usadas sem a necessidade de fornecer credenciais explicitamente.
O Cloud Functions é configurado para usar o Cloud Logging automaticamente.
Execute localmente e em outro lugar
Para usar as bibliotecas do Cloud Logging para Node.js fora do Google Cloud, incluindo a execução da biblioteca na sua própria estação de trabalho, nos computadores do data center ou nas instâncias de VM de outro provedor de nuvem, forneça o ID do projeto do Google Cloud e as credenciais da conta de serviço adequadas diretamente às bibliotecas do Cloud Logging para Node.js.
Para contas de serviço atuais, faça o seguinte:
Conceda à conta de serviço o papel do IAM Gravador de registros (
roles/logging.logWriter
). Para mais informações sobre os papéis do IAM, consulte Controle de acesso.
Se você não tiver uma conta de serviço, crie uma. Para mais informações sobre esse processo, consulte Criar contas de serviço.
Para informações gerais sobre os métodos que podem ser usados para autenticação, consulte Terminologia: contas de serviço.
Como usar o Bunyan:Como usar o Winston:
Visualize os registros
No painel de navegação do console do Google Cloud, selecione Logging e clique em Análise de registros:
Acessar a Análise de registros
No Explorador de registros, é preciso especificar um ou mais recursos, mas a escolha deles pode não ser óbvia. Veja a seguir algumas dicas para ajudar você a começar:
Se você estiver implantando seu aplicativo no App Engine ou usando as bibliotecas específicas dele, defina seu recurso como Aplicativo do GAE.
Se você estiver implantando seu aplicativo no Compute Engine, defina o recurso como Instância de VM do GCE.
Se você estiver implantando seu aplicativo no Google Kubernetes Engine, a configuração de geração de registros do cluster determinará o tipo de recurso das entradas de registro. Para ver uma discussão detalhada sobre as soluções de observabilidade legada do Google Cloud e do Kubernetes Monitoring do Google Cloud e como essas opções afetam o tipo de recurso, consulte Como migrar para o Kubernetes Monitoring de observabilidade do Google Cloud.
Se o aplicativo estiver usando a API Cloud Logging diretamente, o recurso dependerá da API e da configuração. Por exemplo, no seu aplicativo, é possível especificar um recurso ou usar um recurso padrão.
Se você não vir registros no Explorador de registros, alterne para o modo de consulta avançada e use uma consulta vazia para ver todas as entradas de registro.
- Se quiser alternar para o modo de consulta avançada, clique no menu (▾) na parte superior do Explorador de registros e selecione Converter para filtro avançado.
- Limpe o conteúdo que aparece na caixa de filtro.
- Clique em Enviar filtro.
É possível examinar as entradas individuais para identificar seus recursos.
Para mais informações, acesse Como usar a Análise de registros.