Как ваш Ruby?
Я только спрашиваю, потому что я, вероятно, решил бы эту проблему, используя Logstash и , написание настраиваемого модуля ввода для приема данных SMTP. Или используйте какой-то внешний фильтр, чтобы данные SMTP были адекватно представлены в одном из существующих принятых форматов ввода.
Изменить : С помощью внешнего фильтра я намекаю на что-то, написанное на подходящем языке сценариев (Perl, Python и т. Д.), Которое будет действовать как SMTP-клиент (или сервер, в зависимости от вашей точки зрения), подключиться к SMTP-серверу, захватить сообщение, а затем преобразовать его в формат, который Logstash принимает изначально, будь то AMQP (я предпочитаю это) или необработанный TCP .
Редактировать 2 : Я только что нашел проект для преобразования SMTP в AMQP с помощью плагина rabbitMQ. Потенциально, довольно долгий путь, но все же неплохая идея. Вы бы настроили сервер RabbitMQ с этим плагином, который затем преобразует сообщения SMTP в AMQP, которые Logstash затем будет обрабатывать и анализировать.
Это небольшая нишевая проблема, поэтому вам, вероятно, лучше написать свое собственное или написать плагин для уже существующего.