O Alibaba Cloud Elasticsearch oferece um recurso de consulta de logs que permite buscar registros por palavra-chave e intervalo de tempo. Isso ajuda a identificar rapidamente problemas no cluster e simplifica as operações e a manutenção. Este tópico descreve como consultar logs e explica os tipos de log disponíveis.
Limitações
Access Log: Este recurso está disponível apenas para instâncias do Elasticsearch com versão 6.7.0 (com versão secundária do mecanismo ≥ 1.0.2) ou versão 7.10 e posterior.
-
Audit Log: A visualização de logs de auditoria no console é suportada apenas para instâncias com versão 7.x ou posterior nas seguintes regiões.
País ou região
Região
china
China (Beijing), China (Hangzhou), China (Shanghai), China (Zhangjiakou)
Ásia-Pacífico
Singapore, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Japan (Tokyo)
Europa e Américas
US (Virginia), US (Silicon Valley), Germany (Frankfurt), UK (London)
Procedimento
Faça login no console do Alibaba Cloud Elasticsearch.
No menu de navegação à esquerda, escolha Elasticsearch Clusters.
-
Acesse o cluster desejado.
Na barra de navegação superior, selecione o grupo de recursos ao qual o cluster pertence e a região onde ele está localizado.
Na página Elasticsearch Clusters, localize o cluster e clique em seu ID.
-
No painel de navegação à esquerda, clique em Logs para visualizar os logs de execução do cluster.
O Alibaba Cloud Elasticsearch suporta os seguintes tipos de log: log principal, log lento de busca, log lento de indexação, log GC, log de acesso ES e log de auditoria. A tabela abaixo descreve esses tipos e seus casos de uso. Para mais detalhes, consulte Log details.
Tipo de log
Descrição
Casos de uso
Cluster Log
Registra o status de integridade do cluster, além de eventos de consulta e gravação de índices. Os logs de gravação incluem criação de índices, atualizações de mapeamento e sobrecargas na fila de escrita. Já os logs de consulta abrangem o status da fila de consultas e exceções.
Utilize o log principal para verificar o status de execução dos nós, atividades de leitura e escrita, conectividade entre nós, eventos de Full GC, criação ou exclusão de índices e erros de consulta no nível do cluster.
ImportanteCaso ocorra um problema no lado do cliente, verifique primeiro o log principal e o Cluster Monitoring para descartar gargalos de desempenho ou problemas de configuração no cluster.
Search Slow Log
Registra consultas lentas. Quando o tempo de execução de uma consulta ultrapassa um limiar definido, suas informações são registradas. O limiar para consultas lentas vem pré-configurado no modelo de índice do Modelo de Configuração Específica de Cenário com valores padrão otimizados. Basta aplicar o modelo. Para mais informações, consulte Index template configuration.
Se as consultas demorarem mais do que o esperado, analise o log lento de busca para investigar a causa.
Consultas lentas consomem mais recursos do cluster. Ao notar uma grande quantidade de logs lentos, verifique os recursos e a carga do cluster para identificar gargalos. Em seguida, expanda os recursos correspondentes ou utilize o aliyun-qos plugin para aplicar limitação de taxa e garantir a estabilidade do cluster.
Indexing Slow Log
Registra operações de gravação lentas. Se o tempo de execução de uma gravação exceder um limiar especificado, os dados serão registrados. O limiar para gravações lentas também é pré-configurado no modelo de índice do Modelo de Configuração Específica de Cenário com valores ideais. Apenas aplique o modelo. Consulte Index template configuration para detalhes.
Quando as operações de escrita levarem mais tempo que o previsto, examine o log lento de indexação para diagnóstico.
Gravações lentas demandam mais recursos do cluster. Se houver muitos logs desse tipo, avalie os recursos e a carga para encontrar gargalos. Depois, aumente os recursos necessários ou use o aliyun-qos plugin para limitar a taxa e manter a estabilidade do cluster.
GC Log
Registra eventos de coleta de lixo acionados pelo uso da memória heap da JVM. O log GC fornece detalhes sobre vários mecanismos de coleta, incluindo Old GC, CMS GC, Full GC e Minor GC.
Diante de gargalos de desempenho no cluster, consulte o log GC para obter informações detalhadas sobre coletas prolongadas ou frequentes. Se tais eventos existirem, expanda os recursos do cluster ou utilize o aliyun-qos plugin para aplicar limitação de taxa e assegurar a estabilidade.
ImportantePor padrão, os clusters do Alibaba Cloud Elasticsearch utilizam o coletor de lixo CMS. Para nós de dados com 32 GB ou mais de memória, recomenda-se o coletor G1 para melhorar a eficiência do GC. Veja Configure a garbage collector para mais informações.
Access Log
Registra os acessos ao cluster. Esses logs mostram detalhes das requisições relacionadas a
restSearchActionrecebidas pelo cluster Elasticsearch, incluindo URI, tamanho do corpo e horário da requisição.Importante-
A visualização do Access Log no console é permitida apenas para instâncias com versão 6.7.0 (versão secundária do mecanismo ≥ 1.0.2) ou versão 7.10 e posterior.
-
O log de acesso ES não suporta o registro dos seguintes tipos de consulta: consultas SQL, multi-search, scroll e consultas geradas por algumas ferramentas de visualização do Kibana.
-
Para obter informações mais completas sobre requisições de consulta e escrita, ative os logs de auditoria. Consulte Configure an audit log collector para saber mais.
Use o Access Log para identificar quais clientes estão enviando requisições de consulta ao cluster Elasticsearch.
Asynchronous Write Log
Registra eventos relacionados à segurança em uma instância Elasticsearch com base no recurso de auditoria do X-Pack Security. Ele captura operações de criação, exclusão, atualização e consulta, além de sucessos e falhas de autenticação de usuários e alterações de permissões.
Importante-
A visualização de logs de auditoria no console é suportada apenas para instâncias com versão 7.x ou posterior nas regiões listadas em Limitations. Para outras instâncias, é necessário ativar os logs de auditoria na configuração YML. Uma vez ativados, os logs são gravados em um índice no próprio cluster Elasticsearch. Você pode visualizá-los consultando índices que começam com .security_audit_log-* no console do Kibana. Consulte Configure YML parameters para mais detalhes.
-
Para visualizar logs de auditoria no console, é preciso primeiro ativar a coleta clicando em Asynchronous Write Log.
-
Por padrão, os seguintes tipos de evento são coletados: access_denied, anonymous_access_denied, authentication_failed, connection_denied, tampered_request, run_as_denied, run_as_granted. Para alterar os tipos coletados, modifique o parâmetro
xpack.security.audit.logfile.events.includeno arquivo YML do cluster. Veja Configure an audit log collector para instruções.
Utilize os logs de auditoria para revisar sucessos e falhas de autenticação, solucionar problemas de negação de conexão, monitorar acessos a dados ou investigar atividades suspeitas, como mudanças em autorizações de acesso e configurações de segurança de usuários.
-
-
Na página de logs, insira suas condições de consulta na caixa de pesquisa, selecione o horário inicial e final e clique em Audit Log.
O Alibaba Cloud Elasticsearch retorna e exibe os resultados na página de consulta de logs conforme os critérios informados.
É possível consultar logs dos últimos sete dias consecutivos. Por padrão, a exibição segue a ordem cronológica inversa.
A sintaxe de consulta baseia-se no Lucene. Para mais detalhes, consulte Sintaxe de string de consulta.
O operador
ANDna consulta deve estar em letras maiúsculas.Caso nenhum horário final seja especificado, o sistema assume o horário atual. Se o horário inicial não for definido, o padrão será uma hora antes do horário final.
Por exemplo, para consultar logs principais onde content contém a palavra-chave health, level é info e host é 172,16.xx.xx, utilize a seguinte consulta:
host:172.16.xx.xx AND content:health AND level:info.Importante-
Cada consulta retorna no máximo 10.000 entradas de log.
Se as 10.000 entradas retornadas não contiverem as informações necessárias, reduza o intervalo de tempo da consulta.
Uma única entrada de log exibe até 10.000 caracteres.
Detalhes dos logs
Log principal
O log principal exibe os registros de execução do cluster, incluindo horário de geração, endereço IP do nó de origem e conteúdo do log.
|
Parâmetro |
Descrição |
|
Log Configuration |
Horário em que o log foi gerado. |
|
Search |
Endereço IP do nó que originou o log. |
|
Time |
Detalhes do log, compostos principalmente por level, host, time e content:
|
Log lento
Os logs lentos vêm habilitados por padrão e registram operações de indexação (log lento de indexação) e consulta (log lento de busca) que ultrapassam um determinado limiar de tempo. Consulte esses logs para analisar problemas como carga desequilibrada no cluster, exceções de leitura/escrita e processamento lento de dados.
Por padrão, o log lento do Alibaba Cloud Elasticsearch registra operações de leitura e escrita que levam entre 5 e 10 segundos, um limiar que pode ser alto demais para uma solução eficaz de problemas. Após criar uma instância, utilize um dos métodos abaixo para reduzir o limiar de registro e capturar mais dados:
-
Após a criação do cluster, o Modelo de Configuração Específica de Cenário é ativado automaticamente. O Index template configuration contido nele define as configurações de log lento. A configuração padrão para o cenário de uso geral é a seguinte:
"settings": { "index": { "search": { "slowlog": { "level": "info", "threshold": { "fetch": { "warn": "200ms", "trace": "50ms", "debug": "80ms", "info": "100ms" }, "query": { "warn": "500ms", "trace": "50ms", "debug": "100ms", "info": "200ms" } } } }, "refresh_interval": "10s", "unassigned": { "node_left": { "delayed_timeout": "5m" } }, "indexing": { "slowlog": { "level": "info", "threshold": { "index": { "warn": "200ms", "trace": "20ms", "debug": "50ms", "info": "100ms" } }, "source": "1000" } } } }NotaSe o Node IP Address estiver definido como Content, será necessário ativar e enviar a configuração do modelo para aplicar as definições padrão de log lento ao cluster. Consulte Modify a scenario-specific configuration template para mais informações.
-
Acesse o console do Kibana da instância e execute o comando abaixo para modificar a configuração de log lento. Veja Log on to the Kibana console para detalhes.
PUT _settings{ "index.indexing.slowlog.threshold.index.warn" : "200ms", "index.indexing.slowlog.threshold.index.trace" : "20ms", "index.indexing.slowlog.threshold.index.debug" : "50ms", "index.indexing.slowlog.threshold.index.info" : "100ms", "index.search.slowlog.threshold.fetch.warn" : "200ms", "index.search.slowlog.threshold.fetch.trace" : "50ms", "index.search.slowlog.threshold.fetch.debug" : "80ms", "index.search.slowlog.threshold.fetch.info" : "100ms", "index.search.slowlog.threshold.query.warn" : "500ms", "index.search.slowlog.threshold.query.trace" : "50ms", "index.search.slowlog.threshold.query.debug" : "100ms", "index.search.slowlog.threshold.query.info" : "200ms"}
Após essa alteração, os logs de tarefas de leitura ou escrita que excederem o limiar configurado aparecerão na aba Scenario.
A página de log lento exibe os registros em uma tabela com três colunas: None, Slow Log e Time. A coluna Content mostra os detalhes do log em formato estruturado de chave-valor. Por exemplo, um registro de log lento de indexação exibe [index.indexing.slowlog.index], nome do índice .monitoring-kibana-6-2021.10.09, duração took[177.9ms] e nível info.
Log GC
O log GC é habilitado por padrão e contém o horário de geração, o endereço IP do nó de origem e o conteúdo do log. Para mais informações, consulte Main log.
A visualização do log exibe dois registros de GC, ambos em 2021-10-09T11:17:18, Nó IP 10.15.xxx, com o seguinte conteúdo:
GC(173) Pause Young (Allocation Failure) 478M->194M(1417M) 9.591ms: Pausa Young GC, memória heap recuperada de 478M para 194M, duração de 9,591ms.GC(173) ParNew: 301481K->10599K(335040K): O coletor ParNew recuperou a geração jovem de 301481K para 10599K.
Log de acesso ES
O log de acesso apresenta informações detalhadas sobre requisições relacionadas a restSearchAction recebidas pelo cluster Elasticsearch, incluindo nó do cluster e endereço IP, tamanho do corpo, conteúdo da requisição, horário, IP do cliente e URI.
A visualização do Node IP no console é restrita a instâncias com versão 6.7.0 (versão secundária do mecanismo ≥ 1.0.2) ou versão 7.10 e posterior.
Para obter dados mais completos sobre requisições de consulta e escrita, ative os logs de auditoria. Consulte Configure an audit log collector para saber mais.
Log de auditoria
A visualização de logs de auditoria no console é suportada apenas para instâncias com versão 7.x ou posterior nas regiões listadas em Limitations.
Baseado no recurso de auditoria do X-Pack Security, o log de auditoria registra eventos de segurança no cluster Elasticsearch, incluindo sucessos e falhas de autenticação, alterações de permissão, autorizações de acesso a dados e operações de criação, exclusão, atualização e consulta. Esses logs permitem rastrear autenticações e comportamentos operacionais dentro do cluster. O recurso vem desativado por padrão. Siga os passos abaixo para ativá-lo e visualizar os logs:
Na página Content, clique em Access Log à direita.
-
Na caixa de diálogo Logs, ative a chave Log Configuration.
ImportanteAo ativar a Log Configuration, você poderá consultar os logs de auditoria do cluster na página atual. Para alterar os tipos de eventos coletados, acesse a configuração do cluster e modifique o parâmetro
xpack.security.audit.logfile.events.include. Consulte Configure an audit log collector para mais detalhes.Ativar ou desativar a Audit Log Collection reinicia o cluster. O Alibaba Cloud Elasticsearch utiliza uma reinicialização gradual. O cluster permanece disponível durante o processo se estiver no estado verde, se cada índice tiver pelo menos uma réplica e se a utilização de recursos não for excessiva. Ainda assim, recomenda-se realizar essa operação fora do horário de pico.
-
Leia o aviso e clique em Audit Log Collection.
O cluster será reiniciado após a confirmação. Acompanhe o progresso em Task List. Após a reinicialização, a coleta de logs de auditoria estará ativa.
ImportanteOs dados de log de auditoria consomem espaço em disco e podem impactar o desempenho. Caso não precise mais visualizar esses logs, utilize o mesmo procedimento para desativar o recurso Audit Log Collection.
-
Na página OK, clique na aba Audit Log Collection para visualizar os logs de auditoria.
Os logs de auditoria são exibidos em uma tabela com três colunas: Logs, Audit Log e Time. A área de conteúdo mostra campos de auditoria no formato chave-valor, incluindo:
audit_user_roles: funções do usuárioaudit_action: ação de auditoriaaudit_event_action: resultado do evento (ex.: access_granted)audit_origin_type: tipo de origem (ex.: transport)audit_user_name: nome de usuárioaudit_request_name: nome da requisiçãoaudit_node_id,host,audit_hostnamee outras informações do nó
Referências
Perguntas frequentes
Can I set the retention period for .security logs in Elasticsearch?
What do I do if I cannot view the query and update logs of an Elasticsearch instance?
How do I configure and view the slow logs of an Elasticsearch instance?
How do I programmatically retrieve the slow logs of an Elasticsearch instance on a regular basis?