Skip to content

Log ingesting API developed in Java using Logstash and Elasticsearch together with Quarkus

Notifications You must be signed in to change notification settings

leonp967/log-ingesting-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Log Access Analytics

Foi utilizado o Logstash em conjunto com o Elasticsearch para realizar o tratamento, armazenamento e métricas dos logs. O framework utilizado na API foi o Quarkus. Quando o serviço recebe um log via REST, este é salvo no Logstash, que realiza o tratamento do timestamp para extrair a semana do ano, dia do mês, ano e minuto em que o log ocorreu. Após o tratamento isto é enviado para o Elasticsearch para ser indexado. E no momento de gerar métricas, foram utilizados os Terms Aggregations do Elasticsearch.

Configuração utilizada no Logstash

input {
	http { 
          port => 8090
       }
}

filter {
  json{
    	source => "message"
	}
  date { match => ["accessTimestamp", "yyyy-MMMM-dd HH:mm:ss", "UNIX_MS"]
    	target => "@timestamp"
    	add_field => {"minute" => "%{+mm}"}
    	add_field => {"week" => "%{+w}"}
    	add_field => {"day" => "%{+dd}"}
    	add_field => {"year" => "%{+yyyy}"}
  	}
}

output {
  elasticsearch { hosts => ["localhost:9200"] }
}

About

Log ingesting API developed in Java using Logstash and Elasticsearch together with Quarkus

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages