diff --git a/ansible/roles/common/templates/heka-rabbitmq.toml.j2 b/ansible/roles/common/templates/heka-rabbitmq.toml.j2
index 014c75113e1ffc7bdf9e1a5ae92f4c6d416fc7aa..d8e16ec3bee8b1a7e9f8e1eb29427aca804e75de 100644
--- a/ansible/roles/common/templates/heka-rabbitmq.toml.j2
+++ b/ansible/roles/common/templates/heka-rabbitmq.toml.j2
@@ -4,13 +4,14 @@ filename = "lua_decoders/os_rabbitmq_log.lua"
 
 [rabbitmq_log_splitter]
 type = "RegexSplitter"
-delimiter = '\n(=[^=]+====)'
+delimiter = '\n\n(=[^=]+====)'
 delimiter_eol = false
+deliver_incomplete_final = true
 
 [rabbitmq_logstreamer_input]
 type = "LogstreamerInput"
 decoder = "rabbitmq_log_decoder"
 splitter = "rabbitmq_log_splitter"
 log_directory = "/var/log/kolla"
-file_match = 'rabbitmq/rabbit*\.log'
-differentiator = ['rabbitmq']
+file_match = 'rabbitmq/(?P<Service>rabbit.*)\.log'
+differentiator = ["Service"]
diff --git a/docker/heka/plugins/decoders/os_rabbitmq_log.lua b/docker/heka/plugins/decoders/os_rabbitmq_log.lua
index 44d2bc44fc27dc186ad7a17e7fed58dc74993c36..5ce6c65fcbc45f4943254eda8803a84538bc29ee 100644
--- a/docker/heka/plugins/decoders/os_rabbitmq_log.lua
+++ b/docker/heka/plugins/decoders/os_rabbitmq_log.lua
@@ -54,6 +54,8 @@ function process_message ()
 
     msg.Timestamp = m.Timestamp
     msg.Payload = m.Message
+    msg.Logger = read_message("Logger")
+
     if utils.label_to_severity_map[m.SeverityLabel] then
         msg.Severity = utils.label_to_severity_map[m.SeverityLabel]
     elseif m.SeverityLabel == 'CRASH' then