O Error Reporting agrega erros produzidos na nuvem em execução serviços. Esses erros são informados pela API Error Reporting ou são inferidos como erros quando o Error Reporting inspeciona entradas de registro em busca de padrões de texto comuns, como rastros de pilha. Erros de grupos do Error Reporting que têm a mesma causa raiz.
O Error Reporting é ativado automaticamente.
O Error Reporting processa até 1.000 erros por hora. Quando esse limite é atingido, as contagens exibidas são estimadas. Se muitos eventos forem recebidos, o Error Reporting coleta amostras de até 100 erros por hora e continuar a extrapolar as contagens.
Quando o Error Reporting analisa entradas de registro
O Error Reporting é um serviço global baseado em o Cloud Logging e pode analisar entradas de registro quando todas as condições a seguir forem verdadeiras:
- O Assured Workloads está desativado. Para mais informações, consulte Visão geral do Assured Workloads.
- Chaves de criptografia gerenciadas pelo cliente (CMEK) está desativado em todos os buckets que armazenam a entrada de registro. Para informações sobre como determinar a configuração da CMEK para um bucket de registro, consulte Verificar a ativação da chave.
- O bucket de registros atende a um dos itens a seguir:
- O bucket de registro é armazenado no mesmo projeto em que as entradas de registro foram originadas.
- As entradas de registro foram roteadas para um projeto, que as armazenou em um bucket de registro.
Como os erros são agrupados
Quando o Error Reporting avalia entradas de registro, ele ignora entradas de registro com as seguintes condições:
- No ambiente padrão do App Engine, os erros registrados com gravidade menor que
ERROR
são ignorados. - Os frames de pilha que não pertencem ao usuário são ignorados (aqueles que pertencem às bibliotecas públicas, por exemplo).
- Todas as sequências repetidas de um ou mais frames de pilha são substituídas por uma ocorrência única daquela sequência.
- Métodos introduzidos por compilador e símbolos são removidos.
Em seguida, o Error Reporting segue estas regras para agrupar erros:
- As exceções são agrupadas se tiverem o mesmo tipo e pilhas semelhantes.
- O rastreamento de pilha é ignorado para exceções que geralmente não estão relacionadas ao local de origem onde elas ocorrem.
- Os erros sem uma pilha de exceção são agrupados se tiverem sido criados por
a mesma entrada de registro, aproximada pelo local de origem informado
de (
reportLocation
).
As seguintes regras de agrupamento são aplicadas, especificamente, nesta ordem:
Tipo de erro | Agrupados por |
---|---|
Erros causados por um problema geral no ambiente.
Por exemplo, problemas específicos do App Engine: com.google.apphosting.runtime.HardDeadlineExceededError com.google.appengine.api.datastore.DatastoreTimeoutException Problemas do Java: java.util.concurrent.CancellationException |
Agrupados por tipo de exceção. |
Erros com um rastreamento de pilha. No caso de exceções aninhadas, é considerada aquela mais interna.
Por exemplo: runtime error: index out of range package1.func1() file1:20 package2.func2() file2:33 |
Agrupados por tipo de exceção e pelos cinco frames principais. |
Erros sem um stack trace, mas com uma mensagem.
Exemplo: runtime error: index out of range func1() |
Agrupados por mensagem e, se presente, pelo nome da função. Apenas os três primeiros tokens principais da mensagem são considerados. No exemplo à esquerda, eles são runtime , error e index . |
Regionalidade dos dados
Se você configurar o Assured Workloads para requisitos de residência de dados ou Impact Level 4 (IL4), o Google Cloud desativa automaticamente a geração de relatórios de erros.
No Cloud Logging, é possível regionalizar seus registros roteando-os para um local específico. Na página Grupos de erros, O Error Reporting organiza e mostra grupos de erros com base no a região do bucket de registros que contém as entradas. Como o Error Reporting é um serviço global, os grupos de erros podem ser acessados de qualquer região. Esse comportamento não é configurável.