Мы транслируем журналы приложений из CloudWatch в AWS ELK. Наши микросервисы написаны на Java, поэтому я концентрируюсь только на них. Типичная трассировка стека исключений Java при регистрации выглядит следующим образом:
Exception in thread "main" java.lang.NullPointerException
at com.example.myproject.Book.getTitle(Book.java:16)
at com.example.myproject.Author.getBookTitles(Author.java:25)
at com.example.myproject.Bootstrap.main(Bootstrap.java:14)
Как правило, это будет передаваться строка за строкой в стек ELK, что разбивает все сообщение.
Обычно, чтобы вся трассировка стека передавалась как одно сообщение, можно настроить плагин multiline в Logstash или Filebeat.
Есть идеи, как включить многострочное вещание при потоковой передаче файлов журнала из CloudWatch в ELK с помощью AWS lambda?