<div dir="ltr"><div><div><div><div><br></div>sources/destinations are worked on by a set of worker threads, which are not dedicated to a source or destination. <br><br></div>DNS resolution happens at the input side, so if you have multiple log statements, it will only happen once, right after reception, on the input side.<br><br></div>however, if you only have one udp() source, that will only use one worker at a time, so if you have multiple threads the others will not be affected.<br><br></div>hope this helps.<br></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr">-- <br>Bazsi<br></div></div></div>
<br><div class="gmail_quote">On Mon, Aug 24, 2015 at 4:27 PM, David Hauck <span dir="ltr">&lt;<a href="mailto:davidh@netacquire.com" target="_blank">davidh@netacquire.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Saturday, August 22, 2015 10:29 AM, <a href="mailto:syslog-ng-bounces@lists.balabit.hu">syslog-ng-bounces@lists.balabit.hu</a> wrote:<br>
&gt; Syslog-ng doesn&#39;t use an asynchronous dns resolver, but rather it uses<br>
&gt; the libc one as it wants to keep the ordering of messages.<br>
&gt;<br>
&gt; However it uses an inprocess DNS cache, that should mitigate most dns<br>
&gt; latency issues as hosts that generate logs should already be in the<br>
&gt; cache anyway.<br>
&gt;<br>
&gt; If you can&#39;t trust that the dns will work, just disable dns resolution<br>
&gt; eg use-<br>
&gt; dns(no) or use persist-only dns caching and populate /etc/hosts with<br>
&gt; those you want to see with names.<br>
&gt;<br>
&gt; <a href="https://www.balabit.com/sites/default/files/documents/syslog-ng-ose-la" rel="noreferrer" target="_blank">https://www.balabit.com/sites/default/files/documents/syslog-ng-ose-la</a><br>
&gt; te st-guides/en/syslog-ng-ose-guide-admin/html/example-local-dns.html<br>
<br>
</span>Great, the above all sounds fine.<br>
<br>
And, yes, the edge condition I&#39;m considering is a UDP destination with a failing DNS lookup (see below).<br>
<span class=""><br>
&gt; With regards to dns stalling all sources, no its not as long as<br>
&gt; syslog-ng is running in threaded mode. Only the affected worker is<br>
&gt; stalled the others will continue.<br>
<br>
</span>By &quot;affected worker&quot; do you mean the source or the destination. Hopefully this is the latter as I have many &quot;log&quot; definitions (all with the same source and all tied various destinations. Only some of these are configured with udp destinations that fail DNS lookup. What exactly doesn&#39;t/does get blocked here?<br>
<div class="HOEnZb"><div class="h5"><br>
&gt; On Aug 22, 2015 5:37 PM, &quot;David Hauck&quot; &lt;<a href="mailto:davidh@netacquire.com">davidh@netacquire.com</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt;       On <a href="mailto:yslog-ng-bounces@lists.balabit.hu">yslog-ng-bounces@lists.balabit.hu</a>] On Behalf Of Scheidler,,<br>
&gt; <a href="mailto:syslog-ng-bounces@lists.balabit.hu">syslog-ng-bounces@lists.balabit.hu</a> wrote:     &gt; Earlier syslog-ng<br>
&gt; immediately exited at startup, now it is considering  &gt; dns resolution<br>
&gt; errors just like connection failures so time-reopen applies.<br>
&gt;<br>
&gt;       OK, thx.<br>
&gt;<br>
&gt;       BTW, I was reading about the DNS resolver blocking the logger (during<br>
&gt; resolutions, which, in situations where the lookup fails, could result<br>
&gt; in significant time). What does this mean exactly? Are all<br>
&gt; destinations/sources blocked during this time?<br>
&gt;<br>
&gt;       &gt; Time-reopen defaults to 60 seconds as I remember as well and I<br>
&gt; can&#39;t remember any patch that would have changed it.<br>
&gt;<br>
&gt;       Thx also - I did locate my configuration setting for this and see<br>
&gt; that the distribution I&#39;m using resets this default to 10s (so<br>
&gt; everything&#39;s working fine here).<br>
&gt;<br>
&gt;       &gt; On Aug 22, 2015 1:01 AM, &quot;David Hauck&quot; &lt;<a href="mailto:davidh@netacquire.com">davidh@netacquire.com</a>&gt; wrote:<br>
&gt;       &gt;       &gt;       &gt;       Hi Fabien,      &gt;       &gt;       On Monday, June 15, 2015 7:08 AM,<br>
&gt; I wrote:      &gt; On Monday, June 15, 2015      &gt; 12:50 AM Fabien Wernli<br>
&gt; wrote:         &gt;&gt; Hi David,    &gt;&gt;<br>
&gt;&gt;&gt; On Fri, Jun 12, 2015<br>
&gt;       &gt; at 05:09:03PM +0000, David Hauck wrote:       &gt;&gt;&gt; Starting syslog-ng:<br>
&gt; Error         &gt; resolving hostname;   &gt;&gt;&gt; host=&#39;test.nacc.netacquire.dom&#39; Error<br>
&gt;       &gt; initializing message pipeline;        &gt;&gt;&gt;     &gt;&gt;&gt; Unfortunately, this<br>
&gt; results in    &gt; the entire process failing to start.  &gt;&gt;      &gt;&gt; This<br>
&gt; looks a hell lot like         &gt; a resolved issue [1] on github        &gt;&gt;<br>
&gt; &gt;&gt; [1]        &gt; <a href="https://github.com/balabit/syslog-ng/issues/318" rel="noreferrer" target="_blank">https://github.com/balabit/syslog-ng/issues/318</a>       &gt;<br>
&gt;&gt; Yes, indeed! And<br>
&gt;       &gt; this looks to have been included in v3.6.3 - I&#39;ll give this a try.    &gt;<br>
&gt;       &gt;       I&#39;ve finally had a chance to test this and see that it indeed<br>
&gt; fixes         &gt; outright error. However, I now see the following messages<br>
&gt; appear every 10s:     &gt;       &gt;       20150821 15:54:37.994 err<br>
&gt; syslog(syslog-ng):Error resolving hostname; host=&#39;tester&#39;     &gt;<br>
&gt; 20150821 15:54:37.994 err syslog(syslog-ng):Initiating connection<br>
&gt; failed, reconnecting; time_reopen=&#39;10&#39;        &gt;       &gt;       Is there a way to<br>
&gt; change the timeout? Is this the time-reopen global    &gt; option? Besides<br>
&gt; DNS lookup retries, what other operations are subject         &gt; to this<br>
&gt; timeout? Finally, the default (3.7) OSE documentation indicates the<br>
&gt; time-reopen default is 60s (not 10s like I&#39;m seeing).         &gt;       &gt;<br>
&gt; Thanks,       &gt;       -David  &gt;       &gt;<br>
&gt; __________________________________________________________ ____________<br>
&gt;       &gt; __ ______     Member info:    &gt;<br>
&gt; <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a> Documentation:    &gt;<br>
&gt; <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a> FAQ:  &gt;<br>
&gt; <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a>     &gt;       &gt;<br>
&gt;<br>
&gt; __________________________________________________________<br>
&gt; ______________ ______         Member info:<br>
&gt; <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a>   Documentation:<br>
&gt; <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a>       FAQ:<br>
&gt; <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
&gt;<br>
&gt;<br>
______________________________________________________________________________<br>
Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
FAQ: <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
<br>
</div></div></blockquote></div><br></div>