Open pavlo-shcherbukha opened 1 year ago
Lucen викорситовуємо коли потрібні Regexp або щось складніше
От тут https://www.digitalocean.com/community/tutorials/how-to-use-kibana-dashboards-and-visualizations прекрасно описано як з чогось почати початківцю
Тут цікаво про табулярну візуалізацію https://birkanatici.medium.com/visualizing-for-log-data-with-kibana-lens-21a8950abeec
Тут питання з приводу роботи з KIBANA та логами для плбудови DashBoards
Проблема 1.
Опис проблми
Є в логові два записи (два документи). Один документ - коли запит вийшов. Другий документ коли прийшла відповідь і з яким результатом. Вони мають спільний ID. Потірбно якось їх поєднати та відобразити на Дашбоард
Знайдені рекомомендаціх
Thanks for the links provided. I've gone through all of them and tried to use aggregate filter. But seems it's working for few log entries and not for few.
Below is the filter configuration I created for logstash to load the log files data using aggregate.
filter{ grok { match => { "message" => "%{GREEDYDATA:PreText} : For_Request_Dashboard-%{WORD:TransactionId}|%{WORD:Class}|%{WORD:Method}|%{USERNAME:User}|%{HOSTNAME:Host}|%{DATA:StartTime}|%{DATA:EndTime}|%{WORD:IsError}|%{NUMBER:TotalTimeTakenInMilliseconds:int}"} remove_field => [ "message" ] } if [EndTime] == "NA" { aggregate { task_id => "%{TransactionId}" code => "map['StartTimeNew'] = event.get('StartTime')" map_action => "create" } } if [StartTime] == "NA" { aggregate { task_id => "%{TransactionId}" code => "event.set('StartTime', map['StartTimeNew'])" map_action => "update" end_of_task => true timeout => 120 } } }
Sample logs for reference:
2020-02-24 16:46:44.402 INFO 9780 --- [http-nio-8080-exec-2] c.v.s.SpringBootTestForLogsApplication : For_Request_Dashboard-100|DatabaseUtils|read|venakta.kodapaka|L0418L|Mon Feb 24 16:46:42 IST 2020|NA|NA|0 2020-02-24 16:46:44.402 INFO 9780 --- [http-nio-8080-exec-2] c.v.s.SpringBootTestForLogsApplication : For_Request_Dashboard-100|DatabaseUtils|read|venakta.kodapaka|L0418L|NA|Mon Feb 24 16:46:44 IST 2020|false|2001
Is anything wrong in the configuration? Or is it expected way to behave like that(few times correct/few times not)?
Please help me on this.