<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Zenoss Blog &#187; Tips</title>
	<atom:link href="http://blog.zenoss.com/category/zenoss-software/tips/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.zenoss.com</link>
	<description>No Node Left Behind</description>
	<pubDate>Tue, 18 Nov 2008 15:24:20 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
	<language>en</language>
			<item>
		<title>Zenoss IRC session Thursday November 20 at 11am EST</title>
		<link>http://blog.zenoss.com/2008/11/18/zenoss-irc-session-thursday-november-20-at-11am-est/</link>
		<comments>http://blog.zenoss.com/2008/11/18/zenoss-irc-session-thursday-november-20-at-11am-est/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 15:24:20 +0000</pubDate>
		<dc:creator>Matt Ray</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Events]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[Zen of Open Source]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[irc]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=600</guid>
		<description><![CDATA[Zenoss developers will be available for questions on Thursday, November 20 at 11am EST (UTC -05:00) in the #zenoss IRC channel on irc.freenode.net (port 6667). Please drop in and bring your questions, answers, suggestions and feedback.  We can discuss the recent 2.3 release and recent events in the Zenoss community.
We’ll log the session and [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>Zenoss developers will be available for questions on Thursday, November 20 at 11am EST (UTC -05:00) in the #zenoss IRC channel on <a href="irc://irc.freenode.net:6667" onclick="javascript:pageTracker._trackPageview('/outbound/article/irc://irc.freenode.net:6667');">irc.freenode.net</a> (port 6667). Please drop in and bring your questions, answers, suggestions and feedback.  We can discuss the recent 2.3 release and recent events in the Zenoss community.</p>
<p>We’ll log the session and repost them <a href="http://www.zenoss.com/community/discuss/irc" >here</a> if you can’t make it.</p>
<p>Don’t forget you can search for answers to common questions by visiting the <a href="http://forums.zenoss.com/" >Zenoss forums</a>.</p>
<p>Here is a reoccurring calendar event reminder:  <a href='http://www.zenoss.com/community/discuss/irc/archives/Zenoss IRC Session.ics'>Zenoss IRC Session (iCal/Outlook)</a></p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/11/18/zenoss-irc-session-thursday-november-20-at-11am-est/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/11/18/zenoss-irc-session-thursday-november-20-at-11am-est/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/11/18/zenoss-irc-session-thursday-november-20-at-11am-est/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/development' rel='tag' target='_self'>development</a>, <a class='technorati-link' href='http://technorati.com/tag/irc' rel='tag' target='_self'>irc</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/11/18/zenoss-irc-session-thursday-november-20-at-11am-est/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zenoss IRC session Friday November 7 at 11am EST</title>
		<link>http://blog.zenoss.com/2008/11/04/zenoss-irc-session-friday-november-7-at-11am-edt/</link>
		<comments>http://blog.zenoss.com/2008/11/04/zenoss-irc-session-friday-november-7-at-11am-edt/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 20:30:20 +0000</pubDate>
		<dc:creator>Matt Ray</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Systems Management]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[Zen of Open Source]]></category>

		<category><![CDATA[developers]]></category>

		<category><![CDATA[irc]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=583</guid>
		<description><![CDATA[Zenoss developers will be available for questions on Friday, November 7 at 11am EST (UTC -05:00) in the #zenoss IRC channel on irc.freenode.net (port 6667). Please drop in and bring your questions, answers, suggestions and feedback.  We can discuss the 2.3 beta and recent changes in the Zenoss community.  Also please note that [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>Zenoss developers will be available for questions on <strong>Friday</strong>, November 7 at 11am EST (UTC -05:00) in the #zenoss IRC channel on <a href="irc://irc.freenode.net:6667" onclick="javascript:pageTracker._trackPageview('/outbound/article/irc://irc.freenode.net:6667');">irc.freenode.net</a> (port 6667). Please drop in and bring your questions, answers, suggestions and feedback.  We can discuss the 2.3 beta and recent changes in the Zenoss community.  Also please note that we have moved it to <strong>Friday</strong> this week because of an internal scheduling conflict.</p>
<p>We’ll log the session and repost them <a href="http://www.zenoss.com/community/discuss/irc" >here</a> if you can’t make it.</p>
<p>Don’t forget you can search for answers to common questions by visiting the <a href="http://forums.zenoss.com" >Zenoss forums</a>.</p>
<p>UPDATE:<br />
Here’s Friday&#8217;s IRC log<br />
<a href="http://www.zenoss.com/community/discuss/irc/archives/dev-chat-11-07-2008"><br />
http://www.zenoss.com/community/discuss/irc/archives/dev-chat-11-07-2008</a><br />
other logs are available here:<br />
<a href="http://www.zenoss.com/community/discuss/irc"><br />
http://www.zenoss.com/community/discuss/irc</a></p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/11/04/zenoss-irc-session-friday-november-7-at-11am-edt/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/11/04/zenoss-irc-session-friday-november-7-at-11am-edt/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/11/04/zenoss-irc-session-friday-november-7-at-11am-edt/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/Community' rel='tag' target='_self'>Community</a>, <a class='technorati-link' href='http://technorati.com/tag/developers' rel='tag' target='_self'>developers</a>, <a class='technorati-link' href='http://technorati.com/tag/irc' rel='tag' target='_self'>irc</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/11/04/zenoss-irc-session-friday-november-7-at-11am-edt/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip of the Month: Per Filesystem Thresholds</title>
		<link>http://blog.zenoss.com/2008/10/22/tip-of-the-month-per-filesystem-thresholds/</link>
		<comments>http://blog.zenoss.com/2008/10/22/tip-of-the-month-per-filesystem-thresholds/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 21:16:14 +0000</pubDate>
		<dc:creator>Matt Ray</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[Systems Management]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[event transform]]></category>

		<category><![CDATA[tip]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=548</guid>
		<description><![CDATA[In a recent forum post, user ccole shared a event transform to create unique thresholds per filesystem monitored.  He reported that
My management is very interested in Zenoss, but we&#8217;ve got a few challenges. The first challenge is that we have a number of Windows machines that have large shadow copy volumes. Those are intended [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>In a recent <a href="http://forums.zenoss.com/viewtopic.php?p=25527" >forum post</a>, user <strong>ccole</strong> shared a event transform to create unique thresholds per filesystem monitored.  He reported that</p>
<blockquote><p>My management is very interested in Zenoss, but we&#8217;ve got a few challenges. The first challenge is that we have a number of Windows machines that have large shadow copy volumes. Those are intended to fill up, and alerting for those isn&#8217;t particularly useful. The second challenge is that a one-size-fits-all threshold doesn&#8217;t actually fit all.</p>
<p>The solution we&#8217;ve fixed upon is to put a custom threshold into the volume name and work off that. Here&#8217;s the code used in the /Perf/Filesystem event transform (based off another user&#8217;s change that made for more understandable messages)</p></blockquote>
<p>Zenoss guru <a href="http://www.zenoss.com/Members/cluther" >Chet Luther</a> added a couple of minor fixes and here&#8217;s the result:</p>
<pre>
import re

fs_id = device.prepId(evt.component)
for f in device.os.filesystems():
    if f.id != fs_id: continue

    # Extract the percent and free from the summary
    m = re.search("threshold of [^:]+: current value ([\d\.]+)", evt.summary)
    if not m: continue
    usedBlocks = float(m.groups()[0])
    p = (usedBlocks / f.totalBlocks) * 100
    freeAmtGB = ((f.totalBlocks - usedBlocks) * f.blockSize) / 1073741824

    # Make a nicer summary
    evt.summary = "Disk space low: %3.1f%% used (%3.2f GB free)" %  (p,freeAmtGB)

    # This is where we change to a per device threshold
    perDeviceThreshold = 95.0
    m = re.search("zz(\d{3})", f.id)
    perDeviceThreshold = m and float(m.groups()[0]) or 95.0
    if p >= perDeviceThreshold: evt.severity = 5
    break
</pre>
<p>UPDATE: fixed the indentation</p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/10/22/tip-of-the-month-per-filesystem-thresholds/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/10/22/tip-of-the-month-per-filesystem-thresholds/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/10/22/tip-of-the-month-per-filesystem-thresholds/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/event+transform' rel='tag' target='_self'>event transform</a>, <a class='technorati-link' href='http://technorati.com/tag/tip' rel='tag' target='_self'>tip</a>, <a class='technorati-link' href='http://technorati.com/tag/Tips' rel='tag' target='_self'>Tips</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/10/22/tip-of-the-month-per-filesystem-thresholds/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zenoss Book Reviews in the Wild</title>
		<link>http://blog.zenoss.com/2008/09/23/book-reviews-in-the-wild/</link>
		<comments>http://blog.zenoss.com/2008/09/23/book-reviews-in-the-wild/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 20:19:57 +0000</pubDate>
		<dc:creator>Matt Ray</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Product Info]]></category>

		<category><![CDATA[Systems Management]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[Zenoss Reviews]]></category>

		<category><![CDATA[book]]></category>

		<category><![CDATA[reviews]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=496</guid>
		<description><![CDATA[
Packt Publishing&#8217;s recently published book Zenoss Core Network and Systems Monitoring has started picking up reviews recently.  We think it&#8217;s a great new guide for expanding your understanding and becoming more familiar with configuring, using, and adapting Zenoss Core.  

Roberto Galoppini&#8217;s Open Source Books: Zenoss Core
James Pulver&#8217;s Reviewing the Zenoss Book from PACKT [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p><a href="http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa');"><img align="right" src="http://images.packtpub.com/images/100x123/1847194281.png"/></a></p>
<p><a href="http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa');">Packt Publishing</a>&#8217;s recently published book <a href="http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa');">Zenoss Core Network and Systems Monitoring</a> has started picking up reviews recently.  We think it&#8217;s a great new guide for expanding your understanding and becoming more familiar with configuring, using, and adapting Zenoss Core.  </p>
<ul>
<li><a href="http://robertogaloppini.net/2008/09/06/open-source-books-zenoss-core/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://robertogaloppini.net/2008/09/06/open-source-books-zenoss-core/');">Roberto Galoppini&#8217;s Open Source Books: Zenoss Core</a></li>
<li><a href="http://my.opera.com/jp10558/blog/2008/09/05/reviewing-the-zenoss-book-from-packt-publishing" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://my.opera.com/jp10558/blog/2008/09/05/reviewing-the-zenoss-book-from-packt-publishing');">James Pulver&#8217;s Reviewing the Zenoss Book from PACKT Publishing</a></li>
<li><a href="http://davehope.co.uk/Blog/zenoss-book-review/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://davehope.co.uk/Blog/zenoss-book-review/');">Dave Hope&#8217;s Book Review of Zenoss Core, Network and System Monitoring</a></li>
<li><a href="http://www.thetechchef.com/book-review-zenoss-core-network-and-system-monitoring/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.thetechchef.com/book-review-zenoss-core-network-and-system-monitoring/');">Scott Haskell&#8217;s Zenoss Core Network and System Monitoring Review</a></li>
</ul>
<p>The book was written by Zenoss community member <a href="http://badgerfiles.com/blog/zenoss-book/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://badgerfiles.com/blog/zenoss-book/');">Michael Badger</a> who was passionate about our software and took it upon himself to share his knowledge.  Packt Publishing has also added a nice excerpt on their site:<br />
<a href="http://www.packtpub.com/article/user-management-in-zenoss" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.packtpub.com/article/user-management-in-zenoss');">User Management in Zenoss</a>.</p>
<p>Read the reviews and check out the software, we&#8217;re  very proud that our software generates that kind of enthusiasm and hope that our efforts and the efforts of our community of users are evident as you use Zenoss Core.  It&#8217;s available in hardcopy and as a PDF from <a href="http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.packtpub.com/zenoss-core-network-and-system-monitoring/book/mid/070708q0vhaa');">Packt Publishing</a></p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/09/23/book-reviews-in-the-wild/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/09/23/book-reviews-in-the-wild/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/09/23/book-reviews-in-the-wild/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/book' rel='tag' target='_self'>book</a>, <a class='technorati-link' href='http://technorati.com/tag/Community' rel='tag' target='_self'>Community</a>, <a class='technorati-link' href='http://technorati.com/tag/reviews' rel='tag' target='_self'>reviews</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/09/23/book-reviews-in-the-wild/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip of the Month: Improving LDAP Performance</title>
		<link>http://blog.zenoss.com/2008/09/19/tip-of-the-month-improving-ldap-performance/</link>
		<comments>http://blog.zenoss.com/2008/09/19/tip-of-the-month-improving-ldap-performance/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 17:57:10 +0000</pubDate>
		<dc:creator>Matt Ray</dc:creator>
		
		<category><![CDATA[Best Practices]]></category>

		<category><![CDATA[Community]]></category>

		<category><![CDATA[Systems Management]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[Zope]]></category>

		<category><![CDATA[ldap]]></category>

		<category><![CDATA[tip]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=474</guid>
		<description><![CDATA[Community member Nathaniel McCallum&#8217;s provided instructions for making Zenoss use LDAP or ActiveDirectory for Authentication and Authorization recently had a very important update from Scott Haskell.  Users were reporting very slow UI response times and Scott narrowed it down to those installations using LDAP.  He tracked down the Zope RAM Cache Manager and [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>Community member Nathaniel McCallum&#8217;s provided instructions for making Zenoss use <a href="http://www.zenoss.com/community/docs/howtos/how-to-authenticate-via-ldap" >LDAP or ActiveDirectory for Authentication and Authorization</a> recently had a very important update from <a href="http://www.zenoss.com/Members/shaskell/" >Scott Haskell</a>.  Users were reporting very slow UI response times and Scott narrowed it down to those installations using LDAP.  He tracked down the Zope RAM Cache Manager and updated the documentation on how to greatly improve performance:</p>
<p>
<strong>Enabling Caching</strong></p>
<p>LDAPMultiPlugins has the ability to cache expensive LDAP look-ups and other operations. This ability, however, is not enabled by default. To enable caching:</p>
<ul>
<li>Login to the ZMI (Zope Management Interface) at http://servername:8080/zport/manage</li>
<li>Click on &#8216;acl_users(PAS)&#8217; from the center pane or the top-level &#8216;acl_users&#8217; from the left navigation pane</li>
<li>From the drop-down list in the upper right, select &#8216;RAM Cache Manager&#8217; and click add.</li>
<li>Give the RAM Cache Object a name; e.g. - LDAP Cache</li>
<li>Click on the newly created object to configure it</li>
<li>Tweak the properties as needed</li>
<li>Click on the &#8216;Associate&#8217; tab</li>
<li>Click &#8216;Locate&#8217;</li>
<li>Your LDAPMultiPlugins object (whatever you named it) and userManager will appear as objects that you can associate with the RAM Cache.</li>
<li>Check your LDAPMultiPlugin object and select &#8216;Save Changes&#8217;.</li>
</ul>
<p>
 Caching is now enabled for LDAP.
</p>
<p>Scott went even further and documented his <a href="http://www.zenoss.com/Members/shaskell/enabling-caching-for-ldap-authentication" >debugging and troubleshooting of the problem</a>. Thanks again to Scott for this great tip!</p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/09/19/tip-of-the-month-improving-ldap-performance/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/09/19/tip-of-the-month-improving-ldap-performance/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/09/19/tip-of-the-month-improving-ldap-performance/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/Community' rel='tag' target='_self'>Community</a>, <a class='technorati-link' href='http://technorati.com/tag/ldap' rel='tag' target='_self'>ldap</a>, <a class='technorati-link' href='http://technorati.com/tag/tip' rel='tag' target='_self'>tip</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a>, <a class='technorati-link' href='http://technorati.com/tag/Zope' rel='tag' target='_self'>Zope</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/09/19/tip-of-the-month-improving-ldap-performance/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip of the Month: Layer 3 Dependency Checker</title>
		<link>http://blog.zenoss.com/2008/08/26/tip-of-the-month-layer-3-dependency-checker/</link>
		<comments>http://blog.zenoss.com/2008/08/26/tip-of-the-month-layer-3-dependency-checker/#comments</comments>
		<pubDate>Tue, 26 Aug 2008 16:31:19 +0000</pubDate>
		<dc:creator>Mark Hinkle</dc:creator>
		
		<category><![CDATA[Tips]]></category>

		<category><![CDATA[Zenoss Software]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=444</guid>
		<description><![CDATA[This tip has been adapted from Wouter &#8216;netdata&#8217; D&#8217;Haeseleer&#8217;s post on Zenoss-Users:
http://community.zenoss.com/forums/viewtopic.php?p=23030
Download this file and put it in $ZENHOME/bin
http://www.zenoss.com/Members/netdata/tracepath.py
or if your Zenoss server has direct access to the internet you could do this:
wget http://www.zenoss.com/Members/netdata/tracepath.py -O $ZENHOME/bin/tracepath.py
or
curl -O http://www.zenoss.com/Members/netdata/tracepath.py -o $ZENHOME/bin/tracepath.py
Set the permissions:
chmod +x tracepath.py
You can now run it against any device you want to see [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>This tip has been adapted from Wouter &#8216;netdata&#8217; D&#8217;Haeseleer&#8217;s post on Zenoss-Users:<br />
<a href="http://community.zenoss.com/forums/viewtopic.php?p=23030" >http://community.zenoss.com/forums/viewtopic.php?p=23030</a></p>
<p>Download this file and put it in $ZENHOME/bin<br />
<a href="http://www.zenoss.com/Members/netdata/tracepath.py" >http://www.zenoss.com/Members/netdata/tracepath.py</a></p>
<p>or if your Zenoss server has direct access to the internet you could do this:<br />
<tt>wget http://www.zenoss.com/Members/netdata/tracepath.py -O $ZENHOME/bin/tracepath.py</tt><br />
or<br />
<tt>curl -O http://www.zenoss.com/Members/netdata/tracepath.py -o $ZENHOME/bin/tracepath.py</tt></p>
<p>Set the permissions:<br />
<tt>chmod +x tracepath.py</tt></p>
<p>You can now run it against any device you want to see if Zenoss is able to build layer 3 dependencies for.</p>
<pre>tracepath.py swiss11
Getting path from zenoss0101 to swiss11...
zenoss -&gt; VGB-DC01-SW01 -&gt; VG_Turnhout -&gt; pbru223.controlnet.equant.net -&gt; pkt47.controlnet.equant.net -&gt; CHEL-ZO01-SW01 -&gt; swiss11</pre>
<p>This reveals the path from the Zenoss server to the device passed in.</p>
<p>When Zenoss is unable to trace the path it will throw an error:</p>
<pre>tracepath.py pkt1401
Getting path from zenoss0101 to pkt1401...
Traceback (most recent call last):
  File "/opt/zenoss/bin/tracepath.py", line 30, in ?
    path = source.os.traceRoute(destination, [])
  File "/opt/zenoss/Products/ZenModel/OperatingSystem.py", line 121, in traceRoute
    return nextdev.traceRoute(target, ippath)
  File "/opt/zenoss/Products/ZenModel/Device.py", line 507, in traceRoute
    return self.os.traceRoute(target, ippath)
  File "/opt/zenoss/Products/ZenModel/OperatingSystem.py", line 121, in traceRoute
    return nextdev.traceRoute(target, ippath)
  File "/opt/zenoss/Products/ZenModel/Device.py", line 507, in traceRoute
    return self.os.traceRoute(target, ippath)
  File "/opt/zenoss/Products/ZenModel/OperatingSystem.py", line 121, in traceRoute
    return nextdev.traceRoute(target, ippath)
  File "/opt/zenoss/Products/ZenModel/Device.py", line 507, in traceRoute
    return self.os.traceRoute(target, ippath)
  File "/opt/zenoss/Products/ZenModel/OperatingSystem.py", line 122, in traceRoute
    raise TraceRouteGap("unable to trace to %s, gap at %s" % (target.id,
Products.ZenModel.Exceptions.TraceRouteGap: unable to trace to pkt1401, gap at pbr213.controlnet.equant.net</pre>
<p>Zenoss throws an error that there is a gap at pbr213.controlnet.equant.net. This means the Zenoss server is unable to see the routes that will lead to pkt1401.</p>
<p>When you use this script without a correct device it will lead to this:</p>
<pre>tracepath.py foobar
Getting path from zenoss0101 to foobar...
Invalid destination.</pre>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/08/26/tip-of-the-month-layer-3-dependency-checker/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/08/26/tip-of-the-month-layer-3-dependency-checker/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/08/26/tip-of-the-month-layer-3-dependency-checker/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/08/26/tip-of-the-month-layer-3-dependency-checker/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zenoss Development on IRC Thursday, August 14</title>
		<link>http://blog.zenoss.com/2008/08/07/zenoss-development-on-irc-thursday-august-14/</link>
		<comments>http://blog.zenoss.com/2008/08/07/zenoss-development-on-irc-thursday-august-14/#comments</comments>
		<pubDate>Thu, 07 Aug 2008 17:21:26 +0000</pubDate>
		<dc:creator>Matt Ray</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Events]]></category>

		<category><![CDATA[Product Info]]></category>

		<category><![CDATA[Tips]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[irc]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=405</guid>
		<description><![CDATA[Zenoss developers will be available for questions on Tuesday, August 14 at 11am EST in the #zenoss IRC channel on irc.freenode.net (port 6667). Please drop in and bring your questions, answers, suggestions and feedback.  See you there!
We&#8217;ll log the session and repost them here if you can&#8217;t make it.  
Don’t forget you can [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>Zenoss developers will be available for questions on Tuesday, August 14 at 11am EST in the <strong>#zenoss</strong> IRC channel on <a href="irc://irc.freenode.net:6667" onclick="javascript:pageTracker._trackPageview('/outbound/article/irc://irc.freenode.net:6667');">irc.freenode.net</a> (port 6667). Please drop in and bring your questions, answers, suggestions and feedback.  See you there!</p>
<p>We&#8217;ll log the session and repost them <a href="http://www.zenoss.com/community/discuss/irc" >here</a> if you can&#8217;t make it.  </p>
<p>Don’t forget you can search for answers to common questions by visiting the <a href="http://community.zenoss.com/forums/" >Zenoss forums</a>.</p>
<p>UPDATE:<br />
Here’s last Thursday&#8217;s IRC log<br />
http://www.zenoss.com/community/discuss/irc/archives/dev-chat-08-14-2008<br />
other logs are available here:<br />
http://www.zenoss.com/community/discuss/irc</p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/08/07/zenoss-development-on-irc-thursday-august-14/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/08/07/zenoss-development-on-irc-thursday-august-14/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/08/07/zenoss-development-on-irc-thursday-august-14/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/Community' rel='tag' target='_self'>Community</a>, <a class='technorati-link' href='http://technorati.com/tag/development' rel='tag' target='_self'>development</a>, <a class='technorati-link' href='http://technorati.com/tag/irc' rel='tag' target='_self'>irc</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/08/07/zenoss-development-on-irc-thursday-august-14/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip of the Month: How Zenoss Chooses Templates</title>
		<link>http://blog.zenoss.com/2008/07/03/tip-of-the-month-how-zenoss-chooses-templates/</link>
		<comments>http://blog.zenoss.com/2008/07/03/tip-of-the-month-how-zenoss-chooses-templates/#comments</comments>
		<pubDate>Thu, 03 Jul 2008 19:32:10 +0000</pubDate>
		<dc:creator>Mark Hinkle</dc:creator>
		
		<category><![CDATA[Tips]]></category>

		<category><![CDATA[Zenoss Software]]></category>

		<category><![CDATA[Bindings]]></category>

		<category><![CDATA[Templates]]></category>

		<category><![CDATA[Zenoss]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/?p=355</guid>
		<description><![CDATA[Does the way that Zenoss chooses what templates to apply have you confused?
Explanation of Template Binding
Zenoss applies templates in many different and therefore confusing ways. The following is an explanation of the different ways templates get bound and hopefully a logically explanation of why it is done. It is important to remember that the name [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>Does the way that Zenoss chooses what templates to apply have you confused?</p>
<h2>Explanation of Template Binding</h2>
<p>Zenoss applies templates in many different and therefore confusing ways. The following is an explanation of the different ways templates get bound and hopefully a logically explanation of why it is done. It is important to remember that the name of each template is very important and is case sensitive.</p>
<p><span id="more-355"></span></p>
<h3>Device Templates</h3>
<p>Device templates are applied to devices, and only once per device. Device templates get bound to devices according to a single rule, what the zDeviceTemplates property contains. For most device classes within the system this is set to &#8220;Device&#8221;. For a hypothetical <em>/Server/Linux/MySQL</em> device class the zDeviceTemplates property would likely contain Device and MySQL so that normal CPU &amp; Memory information would be collected using the Device template and MySQL specific metrics using the MySQL template.</p>
<p>Common device templates:</p>
<ul>
<li>Device</li>
<li>MySQL, Apache</li>
<li>Active Directory, MSExchangeIS, MSSQLServer, IIS</li>
</ul>
<h3>Component Templates</h3>
<p>Component templates are a bit more mysterious than device templates. The biggest difference in how they&#8217;re applied is that they can be applied many times per device depending on how many components the device contains that match the template. Another big difference is that there are no zProperties that control which template is applied. They follow more rigid rules.</p>
<p>Common component templates:</p>
<ul>
<li>FileSystem, HardDisk, IpService, OSProcess, WinService</li>
<li>Fan, PowerSupply, TemperatureSensor</li>
<li>LTMVirtualServer, VPNTunnel</li>
</ul>
<p>These component templates are named EXACTLY according to the name of the underlying class that represents the component. This is the case for all component templates except for what you might expect to be called IpInterface. As you might have already noticed, there is no template called IpInterface.</p>
<h4>Interface Templates</h4>
<p>Templates get applied to network interfaces using a special kind of binding. Instead of using the name of the underlying class, Zenoss will look for a template that has the same name as the &#8220;type&#8221; of the interface. You can find this type by clicking into the details for any network interface from the OS tab of its containing device.</p>
<p>If a template matching the name of the interface&#8217;s type can&#8217;t be found, the &#8220;ethernetCsmacd&#8221; template will be used as the fallback. Most interfaces you&#8217;ll find are this type.</p>
<h3>Conclusion</h3>
<p>Hopefully this helps you better understand how templates are bound to devices and components.</p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/07/03/tip-of-the-month-how-zenoss-chooses-templates/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/07/03/tip-of-the-month-how-zenoss-chooses-templates/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/07/03/tip-of-the-month-how-zenoss-chooses-templates/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Tags: <a class='technorati-link' href='http://technorati.com/tag/Bindings' rel='tag' target='_self'>Bindings</a>, <a class='technorati-link' href='http://technorati.com/tag/Templates' rel='tag' target='_self'>Templates</a>, <a class='technorati-link' href='http://technorati.com/tag/Zenoss' rel='tag' target='_self'>Zenoss</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/07/03/tip-of-the-month-how-zenoss-chooses-templates/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip of the Month: Getting XML Formatted Device Details</title>
		<link>http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/</link>
		<comments>http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/#comments</comments>
		<pubDate>Wed, 21 May 2008 13:05:09 +0000</pubDate>
		<dc:creator>Chet</dc:creator>
		
		<category><![CDATA[News Items]]></category>

		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/</guid>
		<description><![CDATA[Zenoss provides a variety of tools to help you integrate it into other tools. Commonly used are the REST, XML-RPC and Python APIs. Another less-used option is XML. This can be very useful as a read-only integration point because you can get all of the data you need in a single simple transaction and good [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>Zenoss provides a variety of tools to help you integrate it into other tools. Commonly used are the REST, XML-RPC and Python APIs. Another less-used option is XML. This can be very useful as a read-only integration point because you can get all of the data you need in a single simple transaction and good XML parsing libraries exist for all languages.</p>
<p>In this example, we&#8217;ll be creating a page template that replicates the data that is available on a device&#8217;s status tab. The only difference is that the data will be easily-consumable XML.</p>
<p><strong>Create the Page Template</strong></p>
<ol>
<li>Go to http://yourzenoss:8080/zport/portal_skins/custom/manage</li>
<li>Choose &#8220;Page Template&#8221; from the drop-down box in the top-right and click Add.</li>
<li>Set the Id to &#8220;deviceStatusXml&#8221; then click Add and Edit.</li>
<li>Replace the default contents with the XML template below.</li>
<li>Click Save Changes.</li>
</ol>
<p><strong>XML Template</strong></p>
<pre>&lt;?xml version="1.0"?&gt;
&lt;tal:block tal:define="
status python:here.getPingStatus()&lt;1 and 'Up' or 'Down';
productionState python:here.convertProdState(here.productionState);
priority python:here.convertPriority(here.priority);
"&gt;

&lt;device tal:attributes="id here/id"&gt;
&lt;manageIp tal:content="here/manageIp"/&gt;
&lt;status tal:content="status"/&gt;

&lt;availability tal:content="here/availability"/&gt;
&lt;uptime tal:content="here/uptimeStr"/&gt;
&lt;productionState tal:content="productionState"/&gt;
&lt;priority tal:content="priority"/&gt;
&lt;lastChange tal:content="here/getLastChangeString"/&gt;
&lt;lastCollection tal:content="here/getSnmpLastCollectionString"/&gt;
&lt;firstSeen tal:content="here/getCreatedTimeString"/&gt;

&lt;deviceClass tal:content="here/getDeviceClassName"/&gt;
&lt;location tal:content="here/getLocationName"/&gt;
&lt;groups tal:repeat="group here/groups/objectValuesAll"&gt;
&lt;group tal:attributes="id group/id; name group/getOrganizerName"/&gt;
&lt;/groups&gt;
&lt;systems tal:repeat="system here/systems/objectValuesAll"&gt;
&lt;system tal:attributes="id system/id; name system/getOrganizerName"/&gt;
&lt;/systems&gt;

&lt;tag tal:content="here/hw/tag"/&gt;
&lt;serialNumber tal:content="here/hw/serialNumber"/&gt;
&lt;hardwareMake tal:content="here/hw/getManufacturerName"/&gt;
&lt;hardwareModel tal:content="here/hw/getModelName"/&gt;
&lt;osMake tal:content="here/os/getManufacturerName"/&gt;
&lt;osVersion tal:content="here/os/getModelName"/&gt;
&lt;rackSlot tal:content="here/rackSlot"/&gt;
&lt;snmpSysName tal:content="here/snmpSysName"/&gt;
&lt;snmpLocation tal:content="here/snmpLocation"/&gt;
&lt;snmpContact tal:content="here/snmpContact"/&gt;

&lt;snmpDescr tal:content="here/snmpDescr"/&gt;
&lt;comments tal:content="here/comments"/&gt;
&lt;/device&gt;

&lt;/tal:block&gt;</pre>
<p><strong>Viewing the XML</strong></p>
<ol>
<li>Navigate to any device in your Zenoss web interface.</li>
<li>Click on the Status tab. Note that the URL ends with /deviceStatus</li>
<li>Change the URL to end with /deviceStatusXml instead.</li>
<li>View the source of the page that comes up. Device status in XML!</li>
</ol>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/05/21/tip-of-the-month-getting-xml-formatted-device-details/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zenoss Submit a Tip Contest</title>
		<link>http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/</link>
		<comments>http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/#comments</comments>
		<pubDate>Fri, 25 Apr 2008 16:32:50 +0000</pubDate>
		<dc:creator>Mark Hinkle</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[News Items]]></category>

		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/</guid>
		<description><![CDATA[The Zenoss Submit a Tip Contest has ended and I would like to thank everyone who submitted tips close to 30 and posted multiple blog entries pointing to Zenoss tips.
The winner was Torben Bøgede Sørensen whose tip was  &#8220;How to Setup a Kiosk or Zenoss Overview monitor.&#8221; This tip was selected randomly from all entriess.
I [...]]]></description>
			<content:encoded><![CDATA[<!-- sphereit start --><p>The <a href="http://blog.zenoss.com/2008/02/27/submit-a-tip-win-fabulous-prizes-asuseee/" >Zenoss Submit a Tip Contest</a> has ended and I would like to thank everyone who submitted tips <a href="http://www.zenoss.com/community/wiki/tips-and-tricks/" >close to 30</a> and posted multiple blog entries pointing to Zenoss tips.<br />
The winner was Torben Bøgede Sørensen whose tip was  &#8220;<a href="http://www.zenoss.com/community/wiki/tips-and-tricks/HowToSetupAZenossKioskOrOverviewMonitor/" >How to Setup a Kiosk or Zenoss Overview monitor.</a>&#8221; This tip was selected randomly from all entriess.</p>
<p>I also wanted to recognize two exceptional community members who submitted many tips for the contest and to help out their fellow Zenoss users Wouter D&#8217;Haeseleer and Arthur Penn. In recognition for their exceptional efforts I am awarding them each a limited edition Zenoss jacket that we use to recognize our employees during their first year of service. This signifies their exceptional effort and that we consider them a part of the Zenoss Project team.<br />
Thanks to everyone who participated and who helped share their Zenoss knowledge.</p>
<!-- sphereit end --><span style="margin-bottom:40px; border-bottom:none;"><a class="iconsphere" title="Sphere: Related Content" onclick="return Sphere.Widget.search('http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/')" href="http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/" onclick="javascript:pageTracker._trackPageview('/outbound/article/http://www.sphere.com/search?q=sphereit:http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/');">Sphere: Related Content</a></span><br/><br/>
<!-- start wp-tags-to-technorati 1.01 -->

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://blog.zenoss.com/2008/04/25/zenoss-submit-a-tip-contest/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
