From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [192.168.1.207] (c4C8F5BC1.dhcp.as2116.net. [193.91.143.76]) by mx.google.com with ESMTPSA id n15sm7408846laa.2.2013.08.09.15.19.54 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 09 Aug 2013 15:19:55 -0700 (PDT) Message-ID: <52056AD0.1070807@gaute.vetsj.com> Date: Sat, 10 Aug 2013 00:18:56 +0200 From: Gaute Hope User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 MIME-Version: 1.0 To: Sup developer discussion CC: Horacio Sanson Subject: Re: [sup-devel] How do I force flush the log file in sup? References: In-Reply-To: X-Enigmail-Version: 1.5.2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 30. juli 2013 15:18, Horacio Sanson wrote: > Is there a way to force sup to flush the log file after each write? It is > difficult to debug my gmail source as I cannot see real time what is going > on. Maybe set sup to always flush when SUP_LOG_LEVEL is set to debug? See below, you can add an check for log level as well if you want. - gaute diff --git a/lib/sup/logger.rb b/lib/sup/logger.rb index 7dd296a..283dfdb 100644 --- a/lib/sup/logger.rb +++ b/lib/sup/logger.rb @@ -60,7 +60,10 @@ private ## actually distribute the message def send_message m @mutex.synchronize do - @sinks.each { |sink| sink << m } + @sinks.each do |sink| + sink << m + sink.flush if sink.respond_to? :flush + end @buf << m end end