1. Antes de começar
Como abordamos no codelab Depuração de casa inteligente, estamos publicando métricas e registros dos seus projetos de casa inteligente. As métricas ajudam a determinar em que pontos a Ação de casa inteligente tem problemas, e os registros são úteis para fazer um estudo aprofundado e resolvê-los.
Além das métricas que disponibilizamos para seu projeto, você também pode gerar suas próprias. Basta usar as métricas com base em registros do Google Cloud. Isso permite monitorar certos padrões nos registros e depurar problemas de qualidade.
Pré-requisitos
- Ter uma integração Compatível com a casa inteligente
- Concluir o codelab Depuração de casa inteligente.
O que você vai aprender
- Como criar consultas para filtrar registros de erros de casa inteligente
- Como criar métricas com base em registros para que suas consultas gerem métricas
- Como criar gráficos e painéis a partir de métricas com base em registros para monitoramento
2. Como usar registros
Como abordamos brevemente no codelab Depuração de casa inteligente, trabalhar com registros é fundamental para o sucesso do seu projeto. Há ótimas ferramentas disponíveis no Google Cloud para monitorar e analisar seus registros. Use a Análise de registros para acessar todos os registros disponíveis para seu projeto.
Como acessar registros
A primeira etapa para acessar seus registros é fazer login no Google Cloud e escolher o projeto. Abra Operações > Geração de registros > Análise de registros para navegar até a Análise de registros no menu lateral. Depois de abrir a ferramenta, aparecerá esta visualização:
A Análise de registros tem duas seções principais: uma para escrever consultas na parte superior (Criador de consultas) e outra que mostra os resultados (Resultados da consulta).
Por padrão, vários componentes diferentes no Google gravam registros no projeto. Para encontrar e usar esses registros da integração de casa inteligente, é preciso escrever consultas personalizadas.
Como criar consultas
Os registros são publicados em projetos com um tipo de recurso. Cada tipo de recurso representa uma plataforma diferente no Google. Os registros da plataforma de casa inteligente estão disponíveis para seu projeto no tipo de recurso assistant_action_project
.
Além disso, quando são criados, ,todos os registros recebem um nível de gravidade. Com os registros de casa inteligente, usamos o nível ERROR
para os que representam erros e exceções e o nível DEBUG
para todo o restante.
No exemplo a seguir, criaremos uma consulta para filtrar apenas os registros da nossa plataforma que representam erros:
Quando terminar de escrever a consulta, clique no botão Executar consulta para iniciá-la. Isso mostrará erros da integração com a casa inteligente:
Como você pode ver, houve erros que ocorreram várias vezes na última hora. Cada linha representa um único registro de erros. Clique em cada registro para expandir os campos aninhados e ver as informações deles.
Como usar histogramas
A Análise de registros oferece um recurso útil de histograma para ver a distribuição de tempo dos registros que correspondem à consulta. Para ativar o recurso, clique em LAYOUT DA PÁGINA nos botões do canto superior direito e marque Histograma.
Depois da ativação, aparecerá uma distribuição dos registros que correspondem à consulta:
Como você pode ver na imagem acima, há vários erros agrupados de maneira esparsa na última hora. Eles parecem formar três clusters: por volta das 13h45, das 14h e das 14h15. O histograma ajuda a detectar padrões que seriam difíceis de identificar apenas com os valores de carimbo de data/hora.
No momento, a consulta que usamos não diferencia os registros e mostra todos os erros da integração de casa inteligente. Muitas vezes, convém diferenciar os erros. Por exemplo, para rastrear padrões originados de determinados tipos ou características de dispositivos. Para fazer isso, veremos como criar consultas avançadas.
Consultas avançadas
Ao inspecionar um log de eventos da casa inteligente, há vários campos que podem ser usados para coletar informações:
action
trait
:característica do dispositivo-alvo do usuário (por exemplo, ativar, desativar, iniciar, parar, brilho)actionType
: estado de granularidade fina da característica (por exemplo, ativar, desativar, iniciar, parar, retomar)
device
deviceType
:tipo do dispositivo-alvo do usuário (por exemplo, luz, interruptor, lavadora)
status
isSuccess
: se o resultado da ação é considerado bem-sucedido (verdadeiro/falso).statusType
: código de status do resultado da ação (indica um código de erro em caso de falha).externalDebugString
: string de depuração da ação (descreve o erro em detalhes)
Outros campos
Também há outros campos para extrair informações:
requestId
: um ID exclusivo associado à solicitação (gerado pelo Google)executionType
: o caminho usado pela solicitação (indica se foi em nuvem ou no local)latencyMsec
: latência percebida da solicitação nos servidores do Google (em ms)locale
: idioma/região de onde a solicitação é enviada (por exemplo, en-US, fr-FR).
Ao usar o campo de característica da lista acima, a consulta será modificada e incluirá apenas erros provenientes da característica ativar/desativar, da seguinte forma:
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
Depois de executar a consulta atualizada, o sistema identifica os registros e mostra o resultado correspondente:
Até agora, fizemos todas as nossas consultas manualmente. Essa é uma maneira rápida de verificar o estado dos erros, mas não é indicada para monitorar as mudanças nos padrões de erros ao longo do tempo. Para automatizar esse fluxo e capturar dados de períodos mais longos, criaremos métricas com base em registros.
3. Métricas com base em registros
Usamos as métricas com base em registros para contar o número de registros que correspondem às consultas ao longo do tempo. Assim fica mais fácil ver padrões em todos os seus registros e informações úteis sobre os problemas subjacentes.
Como criar uma métrica com base em registros
Para criar uma métrica com base em registros, navegue até Operações > Geração de registros > Métricas com base em registros. Isso mostrará a lista de métricas com base em registros já disponíveis no seu projeto. Clique no botão CRIAR MÉTRICApara ver a tela de criação de métricas com base em registros:
Há dois tipos principais: a métrica de contagem, que mostra o número de registros que correspondem à sua consulta. A métrica de distribuição acompanha a distribuição subjacente e permite operações estatísticas como média, mediana e 95 percentil.
Role para baixo até uma seção de filtros para digitar a consulta.
Vamos colar a consulta da seção anterior na área de texto Criar filtro.
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
Também é possível clicar no botão VISUALIZAR REGISTROS para abrir uma visualização rápida dos registros anteriores que correspondem ao filtro. Quando terminar, clique no botão CRIAR MÉTRICA e avance para a próxima seção.
Como visualizar dados de métricas com base em registros
Agora que criamos a métrica com base em registros, ela estará disponível na seção Métricas definidas pelo usuário da página "Métricas com base em registros".
No menu de três pontos da métrica com base em registros, selecione Visualizar no Metrics Explorer para ver os dados coletados:
Os novos erros são capturados pela métrica com base em registros e exibidos na janela do gráfico no Metrics Explorer.
Como usar painéis personalizados para fazer o monitoramento
Depois de conferir se a nova métrica com base em registros está funcionando, salve a visualização de gráfico em um painel personalizado. Para isso, clique no botão Salvar gráfico no canto superior direito do Metrics Explorer. Você verá uma solicitação para nomear o gráfico e selecionar o painel em que quer salvá-lo:
Depois de salvar o gráfico dessa forma, fica fácil acessá-lo a partir do painel. Para acessar a lista de painéis disponíveis no seu projeto, navegue até Operações > Monitoramento > Painéis.
Salvamos nosso gráfico em um painel chamado "Painel do codelab". Ao abri-lo, você verá esta visualização:
O gráfico que representa a métrica com base em registros é exibido aqui com os dados coletados. Os registros de casa inteligente são publicados no seu projeto em tempo real. Quando um novo registro estiver disponível, ele será contabilizado imediatamente pela métrica com base em registros.
4. Parabéns
Parabéns! Você aprendeu a transformar consultas em métricas com base em registros e salvá-las em painéis personalizados para fazer o monitoramento.
Próximas etapas
Com base neste codelab, faça os exercícios a seguir e explore outros recursos:
- Consulte o guia Como criar métricas de distribuição para criar métricas com base em registros em campos numéricos, como a latência.
- Consulte a biblioteca de exemplos de consultas do Google Cloud para conferir alguns filtros complexos que podem ser usados em métricas com base em registros.