Depois de atualizar a lista de campos, funcionou. Na interface do usuário do Kibana: Gestão - > Padrões de índice - > clique no botão "Atualizar lista de campos"
Eu tenho um arquivo de log de aplicativo consiste em seguintes níveis de log: INFO, WARN, ERROR, DEBUG. Os seguintes critérios de filtragem funcionam bem no arquivo de configuração do logstash:
filter {
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:timestamp} %{LOGLEVEL:log-level} \[%{DATA:thread_name}\]?-\[%{DATA:class}\] %{GREEDYDATA:message}" }
}
date {
match => ["timestamp", "yyyy-MM-dd HH:mm:ss,SSS"]
target => "@timestamp"
}
}
output {
elasticsearch { hosts => ["localhost:9200"] }
stdout { codec => rubydebug }
}
Eu posso ver o campo de nível de log na exibição "Descobrir" do Kibana. No entanto, gostaria de visualizar o log do meu aplicativo da seguinte forma: Divida uma barra vertical em um determinado momento para mostrar quantos logs de ERRO, quantos logs de INFO, etc. são atingidos em um determinado momento. Quando eu vou para a aba "Visualize" e tento fazer "Adicionar sub-baldes", "dividir barras" no eixo X, sub-agregação="Termos"; Não consigo ver o campo: "log-level" nas opções "Field" selecionáveis. Você poderia me ajudar a dividir as barras com base no nível de log? Obrigado.
Depois de atualizar a lista de campos, funcionou. Na interface do usuário do Kibana: Gestão - > Padrões de índice - > clique no botão "Atualizar lista de campos"
Tags elasticsearch logstash kibana