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.

É possível configurar alertas usando as métricas fornecidas ao projeto para monitorar interrupções de forma automatizada e receber notificações durante interrupções de serviço. Estamos publicando uma métrica de confiança para destacar as interrupções no seu projeto, que vamos abordar neste codelab junto com todas as outras ferramentas de alerta disponíveis no Google Cloud.
Pré-requisitos
- Ter uma integração compatível com a casa inteligente.
- Conclua o codelab Depuração de casa inteligente.
O que você vai aprender
- Como monitorar problemas de desempenho e interrupções de serviço no seu projeto.
- Como criar um alerta com base em um limite e receber notificações durante interrupções.
- Como usar a métrica de confiança fornecida ao seu projeto para detectar interrupções.
2. Monitoramento do desempenho
Monitorar a performance é fundamental para uma integração bem-sucedida com o ecossistema do Google Home. Estamos oferecendo um conjunto de ferramentas de monitoramento para desenvolvedores de casas inteligentes no Google Cloud. Use essas ferramentas para ter uma ideia da performance do seu projeto.
Como acessar painéis
A primeira etapa para acessar seus dados é verificar os painéis do Google Home. Para isso, faça login no console do Google Cloud e navegue até Operações > Monitoramento > Painéis. Há vários painéis disponíveis, e os da casa inteligente vêm com o prefixo "Google Home Analytics".

Criamos painéis individuais para representar cada tipo de integração. As integrações do Cloud, local e Matter têm painéis próprios, e os dados dos protocolos de streaming de câmera são fornecidos no painel "Qualidade da câmera". Esses painéis só vão conter dados se você tiver uma integração do tipo correspondente, além de um projeto em funcionamento que atenda às solicitações.
Ao abrir um desses painéis, a visualização será semelhante a esta:

Os Painéis contêm vários gráficos que mostram os detalhes das solicitações processadas pelo seu projeto. Em cada painel de integração, você vai encontrar um gráfico mostrando o número total de solicitações processadas pelo seu projeto, um gráfico mostrando a taxa de sucesso para esse tipo de integração e vários gráficos mostrando os tipos e características de dispositivos envolvidos.
Há três gráficos essenciais para avaliar a performance das suas ações de casa inteligente:

Durante as interrupções, é comum ver tendências de queda na porcentagem de sucesso e de alta no gráfico de detalhamento de erros. Monitorar a porcentagem de sucesso da execução ajuda a perceber a interrupção do serviço, e analisar os principais erros no detalhamento pode ajudar na depuração. Também é possível observar uma tendência de aumento na latência durante interrupções, que aparece nos gráficos de latência de solicitação.
A visualização padrão com gráficos que aparece nos painéis do Google Home Analytics é apenas uma visualização criada para seu projeto usando dados de métricas de casa inteligente. Você também pode usar o Metrics Explorer para criar seus próprios gráficos com base nas mesmas métricas e salvá-los em painéis personalizados.
Metrics Explorer
O Metrics Explorer é uma ferramenta para visualizar seções transversais do conjunto de dados do seu projeto. A ferramenta pode ser acessada no Console do Google Cloud em Operações > Monitoring > Metrics Explorer.
O Google Cloud oferece muitas métricas diferentes prontas para uso, incluindo algumas que não estão relacionadas à casa inteligente. As métricas que fornecemos para casas inteligentes estão listadas no recurso "actions.googleapis.com/smarthome_action/..." e podem ser facilmente pesquisadas digitando "smarthome" na caixa de seleção de métricas.

A pesquisa por "smarthome" vai mostrar todas as métricas de casa inteligente que oferecemos ao seu projeto. Você pode encontrar informações detalhadas sobre cada uma das nossas métricas nas páginas Monitoring e Logging da nossa documentação.
Ao monitorar seu projeto, a métrica mais simples a ser consultada é a Contagem de solicitações, que é uma métrica delta. Essa métrica registra uma entrada para cada execução de casa inteligente iniciada pelos usuários e campos como tipo de dispositivo, característica, tipo de execução envolvida e o campo de status que mostra o resultado.
Ao selecionar essa métrica, uma tela vai mostrar cada bucket de dados, semelhante a esta:

Basicamente, para cada combinação de rótulos de dados presente nessa métrica, existe um bucket que registra a mudança (delta) entre os intervalos de tempo anterior e atual. É possível agrupar ou filtrar esses intervalos para conseguir a fatia de dados de visualização desejada. Além disso, os dados são alinhados em intervalos de tempo selecionados com uma função de alinhamento (DELTA, MEAN, MEDIAN, SUM). A menos que seja necessário, você normalmente usa o alinhamento delta com uma métrica delta.
É possível criar a maioria dos gráficos disponíveis nos painéis do Google Home Analytics usando o Metrics Explorer e salvar seus gráficos para acesso posterior em um painel personalizado. Para criar visualizações mais complexas, como um gráfico de proporção, use a linguagem de consulta do Monitoring (MQL).
3. Estatísticas de sucesso
Para acompanhar o sucesso da integração, use a taxa de sucesso que calculamos com base na métrica de contagem de solicitações como um indicador de valor de referência ou a confiança de sucesso para uma abordagem mais especializada.
Taxa de sucesso
A taxa de sucesso é calculada para todas as suas integrações dividindo o número de solicitações bem-sucedidas pelo total de solicitações. Você pode acessar esse gráfico no painel de análise do Google Home.

O gráfico de taxa de sucesso de atendimento é muito útil para monitorar a performance do seu projeto, mas não tanto ao criar painéis personalizados ou configurar alertas. Como a taxa de sucesso é derivada da métrica de contagem de solicitações, e não uma métrica por si só, é necessário recriá-la usando a MQL (linguagem de consulta do Monitoring) no Metrics Explorer para usar com qualquer um dos recursos.
Além disso, para acompanhar as interrupções de desempenho no seu projeto, acreditamos que uma abordagem muito mais especializada seja necessária. Por isso, criamos a métrica de confiança, que muda de acordo com o quanto sua taxa de sucesso de atendimento atual se desvia das normas históricas.
Métrica de confiança
As interrupções podem ter diferentes formatos e tamanhos para projetos. Eles podem durar várias horas ou apenas alguns minutos, o que dificulta a identificação. Para isso, criamos uma métrica de confiança no seu projeto, que fornece um valor normalizado para prever a confiabilidade com base na performance anterior. Para acessar a métrica de confiança, pesquise "smarthome" no Metrics Explorer e selecione Confiança de sucesso na execução.

Quando a integração de casa inteligente tiver uma performance igual ou superior à histórica (média de sete dias), essa métrica vai gerar o valor máximo (1,0). Quando a porcentagem de sucesso desvia em mais de quatro desvios padrão (também calculados em sete dias), essa métrica gera o valor mínimo (0,0). Para casos em que os desvios padrão são muito pequenos (menos de 2,5%), essa métrica baseia o valor 0,0 em uma queda de 10% na porcentagem de sucesso.
Para todos os casos intermediários, essa métrica fornece valores entre 1,0 (confiança perfeita de que não há uma interrupção do serviço) e 0,0 (confiança máxima de que há uma interrupção do serviço).
Portanto, ao definir um alerta (na próxima seção), recomendamos usar o valor 0,5 como um limite. Isso corresponde a dois desvios padrão ou uma queda de 5%, o que for maior.
4. Como configurar alertas
A próxima etapa é usar tudo o que você aprendeu na seção anterior para configurar alertas no seu projeto.
Crie uma política de alertas
Os alertas automatizados no Google Cloud são definidos por políticas de alertas. É possível acessar as políticas de alertas no menu lateral, na guia Operações > Monitoring > Alertas. Para criar uma política de alertas, selecione a opção +CRIAR POLÍTICA, que vai abrir a tela de criação de políticas de alertas:

A criação de uma política de alertas tem três partes. Primeiro, determine o que você quer acompanhar adicionando uma condição. Ao clicar no botão ADICIONAR CONDIÇÃO, uma janela semelhante ao Metrics Explorer vai aparecer, com alguns controles extras para configurar a condição:

Para a meta, selecione a métrica de confiança que abordamos na seção anterior. Verifique se o alinhador está definido como delta usando essa métrica (Mostrar opções avançadas > Alinhador). A próxima etapa é configurar a condição de alerta e usar as seguintes configurações:

A condição é acionada se: essa é a principal configuração para determinar quando acionar os alertas. Selecionar Qualquer série temporal viola vai funcionar porque vamos definir um limite na nossa métrica e monitorar se o valor é ultrapassado.
Condição: queremos que o alerta seja acionado quando o valor ficar abaixo do limite. Por isso, vamos definir como está abaixo de. Com nossa métrica, 1,0 significa que a integração está funcionando bem, e 0,0 indica uma interrupção definitiva.
Limite: criamos a métrica de confiança para oferecer os melhores resultados quando esse valor é definido como 0,5. Se você quiser receber alertas com mais frequência e ser notificado sobre incidentes menores, tente aumentar esse valor (máximo de 1,0). Se você quiser receber menos alertas, apenas para problemas mais graves, tente diminuir esse valor (mínimo de 0,0).
Por: essa é a configuração para identificar por quanto tempo a interrupção do serviço precisa durar antes de você receber um alerta. Recomendamos manter essa configuração no valor mais recente para receber alertas sobre qualquer ponto que cruze o limite. Nossa métrica de confiança é publicada a cada 15 minutos, analisando o sucesso médio nesse período.
Depois de adicionar uma condição, a próxima etapa é selecionar o canal de notificação. O método mais simples de notificação são os alertas por e-mail. Escolha um e-mail na lista suspensa Canais de notificação:

Se você marcar a opção Notificar sobre o fechamento de incidentes, outra notificação será enviada quando o incidente for marcado como fechado. Nesse caso, também selecione uma Duração do fechamento automático de incidentes, que é especificada como 7 dias por padrão.
A etapa final é dar um nome ao alerta e adicionar a documentação que você quer incluir nas notificações.

Recomendamos fornecer documentação, principalmente se você não for a pessoa que vai receber o alerta. Adicionar etapas, como onde verificar durante um incidente e como fazer a triagem e a depuração, pode ajudar durante uma interrupção. Consulte nosso guia de solução de problemas, se necessário.
Depois de salva, a política de alertas vai aparecer na seção "Políticas" da página "Alertas".

5. Mitigação de interrupções
Depois de configurar os alertas, você vai receber notificações durante as interrupções pelos canais que informou. Além disso, uma entrada de incidente será criada na página "Alertas".
Como receber alertas
O canal de alerta que fornecemos neste codelab foi um e-mail. Depois de definir, esperamos que você não receba alertas (não tenha interrupções), mas, se isso acontecer, a notificação será semelhante a esta:

A notificação de alerta informa o valor observado que ultrapassou o limite especificado, além de um carimbo de data/hora que indica quando o incidente começou.
Monitorar incidentes
À medida que os incidentes acontecem, eles também são contabilizados na seção "Incidentes" da página "Alertas".

Clique no incidente específico para conferir os detalhes da interrupção do serviço, como duração ou gravidade.
Lembre-se de que, ao receber alertas, a melhor primeira etapa é analisar suas métricas e pesquisar nos logs os erros que contribuem para a interrupção do serviço. Você pode conferir como fazer isso no codelab Depuração de casa inteligente.
6. Parabéns

Parabéns! Você aprendeu a configurar alertas usando as métricas fornecidas ao seu projeto para monitorar interrupções de forma automatizada e receber notificações durante falhas no serviço.
Próximas etapas
Com base neste codelab, faça os exercícios a seguir e explore outros recursos:
- Você pode combinar o que aprendeu neste codelab com outras métricas fornecidas ao seu projeto. Confira a lista completa de métricas disponíveis na seção Métricas compatíveis da página Monitoring.
- Confira outros tipos de canais de notificação para alertas explicados na página Opções de notificação da documentação do Google Cloud.