<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Logger Level Confession</title>
	<atom:link href="http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/feed/" rel="self" type="application/rss+xml" />
	<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/</link>
	<description>Technology and Geek Stuff by Eric Burke</description>
	<lastBuildDate>Sat, 27 Feb 2010 14:52:46 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Smitty</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-8429</link>
		<dc:creator>Smitty</dc:creator>
		<pubDate>Mon, 31 Mar 2008 16:05:36 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-8429</guid>
		<description>@Eric:  Maybe it&#039;s time for a comic of how Apple, Google, and your company does logging 8^).

I&#039;m a bit embarrassed but here goes:
DEBUG:  Kitchen sink logging level.  Everything including variable values, return values, HTTP Response, stack traces, Hi, Mom&#039;s, etc.

INFO:  Program execution trace.  Like we don&#039;t know how to use a debugger, but meant more for our test servers running our web applications in a QA environment (where yeah, we don&#039;t have debuggers).

WARNING:  An error occurs, we&#039;re not sure of the impact, it&#039;s probably bad, we better log it.
ERROR:  A bad error occurs, we&#039;re not sure of the impact, we figure prod logs might need it.
FATAL:  I&#039;ve never seen one explicitly declared, but that&#039;s what we have PROD set to (see the ERROR level where the developers think PROD is set to).  

We don&#039;t see to many production errors logged.  Wonder why.... 8^P</description>
		<content:encoded><![CDATA[<p>@Eric:  Maybe it&#8217;s time for a comic of how Apple, Google, and your company does logging 8^).</p>
<p>I&#8217;m a bit embarrassed but here goes:<br />
DEBUG:  Kitchen sink logging level.  Everything including variable values, return values, HTTP Response, stack traces, Hi, Mom&#8217;s, etc.</p>
<p>INFO:  Program execution trace.  Like we don&#8217;t know how to use a debugger, but meant more for our test servers running our web applications in a QA environment (where yeah, we don&#8217;t have debuggers).</p>
<p>WARNING:  An error occurs, we&#8217;re not sure of the impact, it&#8217;s probably bad, we better log it.<br />
ERROR:  A bad error occurs, we&#8217;re not sure of the impact, we figure prod logs might need it.<br />
FATAL:  I&#8217;ve never seen one explicitly declared, but that&#8217;s what we have PROD set to (see the ERROR level where the developers think PROD is set to).  </p>
<p>We don&#8217;t see to many production errors logged.  Wonder why&#8230;. 8^P</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: superfoo</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-8098</link>
		<dc:creator>superfoo</dc:creator>
		<pubDate>Fri, 28 Mar 2008 13:45:32 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-8098</guid>
		<description>I stick to Debug, Info, Warning and Severe. I add debug to help with program flow when troubleshooting bugs and slowdowns.</description>
		<content:encoded><![CDATA[<p>I stick to Debug, Info, Warning and Severe. I add debug to help with program flow when troubleshooting bugs and slowdowns.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Aronson</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7987</link>
		<dc:creator>Dave Aronson</dc:creator>
		<pubDate>Wed, 26 Mar 2008 13:47:11 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7987</guid>
		<description>My usual set is NFEWID: None (don&#039;t even bother opening the log file), Fatal (log fatal errors only), Error (only log if there was something actually wrong with the data or ops), Warning (odd but usable), Info (normal operations), and Debug (excruciating detail, sometimes with specific flags for what chunks of code I want to spew like that, everything else being in Info mode).</description>
		<content:encoded><![CDATA[<p>My usual set is NFEWID: None (don&#8217;t even bother opening the log file), Fatal (log fatal errors only), Error (only log if there was something actually wrong with the data or ops), Warning (odd but usable), Info (normal operations), and Debug (excruciating detail, sometimes with specific flags for what chunks of code I want to spew like that, everything else being in Info mode).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Neil Weber</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7970</link>
		<dc:creator>Neil Weber</dc:creator>
		<pubDate>Wed, 26 Mar 2008 05:11:25 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7970</guid>
		<description>So, on a production system, you&#039;ll set the threshold to WARN?  But then if there is a problem, the logs are pretty much empty.  I prefer to set the threshold to INFO and log user actions at the INFO (e.g. &quot; deleted Contract&quot; or &quot; listed Documents matching &quot;A%&quot;).  That way when there is a problem there is some context.  Then I log information useful for debugging problems at FINE (or DEBUG if using log4j).</description>
		<content:encoded><![CDATA[<p>So, on a production system, you&#8217;ll set the threshold to WARN?  But then if there is a problem, the logs are pretty much empty.  I prefer to set the threshold to INFO and log user actions at the INFO (e.g. &#8221; deleted Contract&#8221; or &#8221; listed Documents matching &#8220;A%&#8221;).  That way when there is a problem there is some context.  Then I log information useful for debugging problems at FINE (or DEBUG if using log4j).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Charlie</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7969</link>
		<dc:creator>Charlie</dc:creator>
		<pubDate>Wed, 26 Mar 2008 04:47:52 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7969</guid>
		<description>The others are only useful to programmers when they&#039;re building or debugging it. We do this because we&#039;re not supposed to use print statements.</description>
		<content:encoded><![CDATA[<p>The others are only useful to programmers when they&#8217;re building or debugging it. We do this because we&#8217;re not supposed to use print statements.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesse</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7965</link>
		<dc:creator>Jesse</dc:creator>
		<pubDate>Wed, 26 Mar 2008 02:25:40 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7965</guid>
		<description>Fine choice.</description>
		<content:encoded><![CDATA[<p>Fine choice.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Volkmann</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7964</link>
		<dc:creator>Mark Volkmann</dc:creator>
		<pubDate>Wed, 26 Mar 2008 01:46:56 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7964</guid>
		<description>I agree with your three choices, but you might also use CONFIG. I&#039;m guessing that&#039;s for logging of application configuration settings that were in effect, if any.</description>
		<content:encoded><![CDATA[<p>I agree with your three choices, but you might also use CONFIG. I&#8217;m guessing that&#8217;s for logging of application configuration settings that were in effect, if any.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adrian Smith</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7962</link>
		<dc:creator>Adrian Smith</dc:creator>
		<pubDate>Wed, 26 Mar 2008 01:41:39 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7962</guid>
		<description>I agree. There should be a standard policy and everyone should stick to it. 

But because that&#039;s not the case, recently I thought long and hard about which log levels to use when and this was what I came up with:

http://www.databasesandlife.com/which-log-levels-to-use-when/</description>
		<content:encoded><![CDATA[<p>I agree. There should be a standard policy and everyone should stick to it. </p>
<p>But because that&#8217;s not the case, recently I thought long and hard about which log levels to use when and this was what I came up with:</p>
<p><a href="http://www.databasesandlife.com/which-log-levels-to-use-when/" rel="nofollow">http://www.databasesandlife.com/which-log-levels-to-use-when/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mario Aquino</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7958</link>
		<dc:creator>Mario Aquino</dc:creator>
		<pubDate>Wed, 26 Mar 2008 00:20:29 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7958</guid>
		<description>I use the fine level when I want to communicate something that is interesting but not necessarily important, like finding out that there was water on Mars a million years ago.  Finer is useful when the code is entering a state of mild interest, like gossip you might read regarding the French president and his mistress or Britney&#039;s latest court date; I guess it&#039;s news but my day would be the same without knowing it.  Finest logging level is reserved for things that are the least amount of useful knowledge but might be interesting to someone out there, like how much of the national anthem would fit if written on a grain of rice or the number of balls that the world-record holder of juggling can keep in the air at the same time.  This strategy has helped me make the most out of all the logger API levels.</description>
		<content:encoded><![CDATA[<p>I use the fine level when I want to communicate something that is interesting but not necessarily important, like finding out that there was water on Mars a million years ago.  Finer is useful when the code is entering a state of mild interest, like gossip you might read regarding the French president and his mistress or Britney&#8217;s latest court date; I guess it&#8217;s news but my day would be the same without knowing it.  Finest logging level is reserved for things that are the least amount of useful knowledge but might be interesting to someone out there, like how much of the national anthem would fit if written on a grain of rice or the number of balls that the world-record holder of juggling can keep in the air at the same time.  This strategy has helped me make the most out of all the logger API levels.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rusty Wright</title>
		<link>http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/comment-page-1/#comment-7956</link>
		<dc:creator>Rusty Wright</dc:creator>
		<pubDate>Tue, 25 Mar 2008 23:29:53 +0000</pubDate>
		<guid isPermaLink="false">http://stuffthathappens.com/blog/2008/03/25/logger-level-confession/#comment-7956</guid>
		<description>You can create your own log level; in your case I suggest making one called WHATEVER.</description>
		<content:encoded><![CDATA[<p>You can create your own log level; in your case I suggest making one called WHATEVER.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.268 seconds -->
