When using correlating message with syslog-ng 3.3.1 i get only the value in the last matching rule but not the earlier.
Here is my patterndb.xml
<?xml version='1.0' encoding='UTF-8'?>
<patterndb version='3' pub_date='2011-11-07'>
<ruleset name='ecelerity' id='12345678'>
<pattern>ecelerity</pattern>
<rules>
<rule provider='me' id='123475980' class='system'
context-scope='program' context-id='${MSG.UID}' context-timeout='10'>
<patterns>
<pattern>@ESTRING:LOG.UTC:|@@ESTRING:LOG.UID:|@ORCPTS|@ANYSTRING:LOG.VAL:@</pattern>
</patterns>
<examples>
<example>
<test_message program="ecelerity">1319550976|c0a80a3c-b7f6c6d000002063-1f-4ea6c0004833|ORCPTS|s.andriamampianina@***.**</test_message>
<test_values>
<test_value name="LOG.UTC">1319550976</test_value>
<test_value name="LOG.UID">c0a80a3c-b7f6c6d000002063-1f-4ea6c0004833</test_value>
<test_value name="LOG.VAL">s.andriamampianina@***.**</test_value>
</test_values>
</example>
</examples>
</rule>
<rule provider='me' id='123475981' class='system'
context-id='${MSG.UID}'>
<patterns>
<pattern>@ESTRING:LOG.UTC:|@@ESTRING:LOG.UID:|@SENDER|@ANYSTRING:LOG.VAL:@</pattern>
</patterns>
<actions>
<action>
<message>
<values>
<value name="MESSAGE">From ${LOG.VAL}@1 to ${LOG.VAL}@2.</value>
<value name="TRIGGER">yes</value>
</values>
</message>
</action>
</actions>
</rule>
</rules>
</ruleset>
</patterndb>