<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Arial","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1214270582;
        mso-list-type:hybrid;
        mso-list-template-ids:-781711078 67698705 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
        {mso-level-text:"%1\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Thank you for your feedback.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">We are trying to design a log system that protects against log loss, so if any of the failure scenarios that you mentioned occurred, we need to make sure we do not lose any logs.&nbsp;
 That is the reason why we want to use an audit log file stored in non-volatile memory to store logs that have not been sent to the server yet.&nbsp; However, we are having trouble defining how to know when to delete logs from the file when they are delivered to
 the server.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">I have read a little about RLTP and my understanding is that this protocol is only available for syslog-ng PE edition. &nbsp;We are using syslog-ng OSE because we need to make some
 minor modifications to the source code. &nbsp;For that reason, we cannot use the RLTP protocol.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Let me ask a few specific questions:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-.25in;mso-list:l0 level1 lfo1"><![if !supportLists]><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><span style="mso-list:Ignore">1)<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Is there any way to ask the syslog-ng client daemon to send information back to the application that sends messages to it when a message has been successfully delivered
 to the syslog-ng server daemon (message deliver acknowledgment)?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-.25in;mso-list:l0 level1 lfo1"><![if !supportLists]><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><span style="mso-list:Ignore">2)<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">I have been looking for a C/C&#43;&#43; API to generate IETF syslog-ng messages but I cannot not find it. &nbsp;I believe that the #include &lt;syslog.h&gt; header is specific for BSD
 syslog messages.&nbsp; If there is one, where can I find it?<o:p></o:p></span></p>
<p class="MsoListParagraph"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-.25in;mso-list:l0 level1 lfo1"><![if !supportLists]><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><span style="mso-list:Ignore">3)<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">I did a little reading on ampq and zeromp, do you know if I can save messages to non-volatile memory while they are waiting in the queue?&nbsp; I need to make sure that messages
 are not lost if the system is turned-off or rebooted.<o:p></o:p></span></p>
<p class="MsoListParagraph"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Thank you for all your help.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> syslog-ng-bounces@lists.balabit.hu [mailto:syslog-ng-bounces@lists.balabit.hu]
<b>On Behalf Of </b>Balazs Scheidler<br>
<b>Sent:</b> Thursday, November 07, 2013 2:55 AM<br>
<b>To:</b> Syslog-ng users' and developers' mailing list<br>
<b>Subject:</b> Re: [syslog-ng] syslog-ng Message Deliver Acknowledgment and Action<o:p></o:p></span></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p>It depends what failure modes you want to protect against.<o:p></o:p></p>
<p>There can be<br>
* network connection breaks<br>
* Syslog-ng daemon crashes (client, server)<br>
* audit daemon crashes<o:p></o:p></p>
<p>Syslog-ng has most of the infrastructure to carry out (flow control), but some pieces are missing. The PE team did work in this area, they created RLTP for app. Level network acknowledgements that would protect against network and syslogng crashes. Even
 in that case though the ack information can only be propagated back to your audit app by speaking RLTP.<o:p></o:p></p>
<p>Maybe you would need a queueing stack like amqp or 0mq, those tend to provide explicit acks, and there are brokerless solutions as well.<o:p></o:p></p>
<div>
<p class="MsoNormal">On Nov 6, 2013 6:15 PM, &quot;Tamayo, Andres&quot; &lt;<a href="mailto:Andres.Tamayo@viasat.com">Andres.Tamayo@viasat.com</a>&gt; wrote:<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">Hello,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">I am new at using syslog-ng and I was hoping someone in the developers mailing list would be able to help me.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">I am trying to use a syslog-ng client daemon and a syslog-ng server daemon to implement an audit message system but I cannot find
 information that would help me configure the daemons for my particular scenario.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">Here is my scenario:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">I have a separate audit daemon that generates log messages that are written to an audit log file in syslog format. &nbsp;I need the syslog-ng
 client to read the logs in the audit log file and send them to the syslog-ng server.&nbsp; When the server has received the messages, I need some acknowledgment from the syslog-ng client, so my other audit daemon can remove the submitted log messages from the audit
 log file (preventing it from reaching maximum capacity).</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">My scenario does not have to be setup exactly this way if there are better ways to achieve the same result.&nbsp; Basically, I need to
 keep all logs that have not yet being sent to the syslog-ng server in an audit file.&nbsp; When the messages are delivered to the syslog-ng server, I need to delete them from the audit file.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">Can someone tell me if I can achieve this results using syslog-ng daemons?&nbsp; Is there a better way to implement my scenario.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">Thank you for your help in advance.</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
______________________________________________________________________________<br>
Member info: <a href="https://urldefense.proofpoint.com/v1/url?u=https://lists.balabit.hu/mailman/listinfo/syslog-ng&amp;k=OWT%2FB14AE7ysJN06F7d2nQ%3D%3D%0A&amp;r=o7GqWGDQQvuJbgvvR6T88i9N1FvBWrMPYBwWrEtosko%3D%0A&amp;m=H3XFCCxuN%2BoJ7bteSxs7fSMtVHpZVOxK491YyGxJqtc%3D%0A&amp;s=762f719282e6c489261af35e7c48511cb1e28ce0f26ba244dc1cd239a6105c65" target="_blank">
https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
Documentation: <a href="https://urldefense.proofpoint.com/v1/url?u=http://www.balabit.com/support/documentation/?product%3Dsyslog-ng&amp;k=OWT%2FB14AE7ysJN06F7d2nQ%3D%3D%0A&amp;r=o7GqWGDQQvuJbgvvR6T88i9N1FvBWrMPYBwWrEtosko%3D%0A&amp;m=H3XFCCxuN%2BoJ7bteSxs7fSMtVHpZVOxK491YyGxJqtc%3D%0A&amp;s=816e8cd9b9abcde4d3a7344e432dbaefa88b470a09d3f585ecb9fd9fb2f2abcd" target="_blank">
http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
FAQ: <a href="https://urldefense.proofpoint.com/v1/url?u=http://www.balabit.com/wiki/syslog-ng-faq&amp;k=OWT%2FB14AE7ysJN06F7d2nQ%3D%3D%0A&amp;r=o7GqWGDQQvuJbgvvR6T88i9N1FvBWrMPYBwWrEtosko%3D%0A&amp;m=H3XFCCxuN%2BoJ7bteSxs7fSMtVHpZVOxK491YyGxJqtc%3D%0A&amp;s=438420559bf0bc11020087736b3878af9ad9e723b2f78502d6bdabe3f21e9d2a" target="_blank">
http://www.balabit.com/wiki/syslog-ng-faq</a><br>
<br>
<o:p></o:p></p>
</div>
</div>
</body>
</html>