<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Arial; font-size: 12pt; color: #000000'><span>Ahhh yes.&nbsp; Well, I am not that intelligent when it comes to MRTG, it's more of a convenience for me to have everything in one place than a necessity.&nbsp; Being a n00b for MRTG, I assumed that it could only accept integers for its graphing purposes and wasn't quite sure if it would grab that select group of numbers out of all the other stuff that SNMP spews forth.&nbsp; That's why I went in to the script mode.&nbsp; I've been doing ALOT of bash scripting lately and look at every opportunity to do so as a challenge/learning opportunity, which it was.&nbsp; Not to mention I had to create some scripts to do RAM and hard drive usage stats for my Windows 7 machine that doesn't like to play nice with MRTG.<br><br>If using SNMP directly works, awesome, I'll do that.&nbsp; I've tried it before without luck, but that was most likely the wet behind my ears.&nbsp; It still populates without a second value, but the logs fill up quickly :-(<br><br>I actually created two scripts per device that I'm monitoring uptime for.&nbsp; One that does days, and one that does hours...again, probably more for my anal retentive quest to complicate things, but they do show up properly.<br><br><br></span><br>----- Original Message -----<br>From: "Steve Shipway" &lt;s.shipway@auckland.ac.nz&gt;<br>To: "Matt Baer" &lt;matt@baerconsult.com&gt;, "mrtg" &lt;mrtg@lists.oetiker.ch&gt;<br>Sent: Thursday, February 11, 2010 6:35:15 PM<br>Subject: RE: [mrtg] MRTG not populating graphs from script that works on all but&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CentOS<br><br>




<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @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:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:595.3pt 841.9pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
        {page:Section1;}
-->
</style>



<div class="Section1">

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">I promise I’m not laughing here, but what’s
wrong with just using SNMP directly – IE,</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">Target[whatever]:
hrSystemUptime.0&amp;pseudoZero:public@10.0.0.1: / 100</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">ShortLegend[whatever]: s</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">Options[whatever]: noo</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">… if you want it in seconds (since ticks
are 1/100 sec), and</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">Target[whatever]:
hrSystemUptime.0&amp;pseudoZero:public@10.0.0.1: / 8640000</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">ShortLegend[whatever]: days</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">Options[whatever]: noo</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">… if you want it in days like your script
produces (you’ll need to set kMG[] or routers.cgi*Options[]:fixunit to prevent
it from showing milli-days though)</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">Your script doesn’t work as it doesn’t return
the data in the correct format.&nbsp; A MRTG data collection plugin MUST return 4
lines of text (first two containing the In and Out numberical values, then next
two contain optional text for description and uptime) and have a zero exit
status.</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">This would work:</span></font></p>

<p class="MsoNormal"><font size="3" color="black" face="Arial"><span style="font-size: 12pt; font-family: Arial; color: black;">#!/bin/bash<br>
ticks=$(snmpwalk -v 1 -c public 10.0.0.1 hrSystemUptime.0 | awk '{ print $5 }'
)<br>
echo "$ticks"<br>
echo "$ticks"<br>
echo ""<br>
echo ""</span></font></p>

<p class="MsoNormal"><font size="3" color="black" face="Arial"><span style="font-size: 12pt; font-family: Arial; color: black;">exit 0<br>
<br>
</span></font><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;"></span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">However, it would have problems when the
uptime is &lt;1day as it just pulls out the 5<sup>th</sup> field which in this
case would not be in days.&nbsp; The SNMP method above would avoid this problem.</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">Steve</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size: 10pt; font-family: Arial; color: navy;">&nbsp;</span></font></p>

<div style="border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color blue; border-width: medium medium medium 1.5pt; padding: 0cm 0cm 0cm 4pt;">

<div>

<div class="MsoNormal" style="text-align: center;" align="center"><font size="3" face="Times New Roman"><span style="font-size: 12pt;" lang="EN-US">

<hr align="center" size="2" width="100%">

</span></font></div>

<p class="MsoNormal"><b><font size="2" face="Tahoma"><span style="font-size: 10pt; font-family: Tahoma; font-weight: bold;" lang="EN-US">From:</span></font></b><font size="2" face="Tahoma"><span style="font-size: 10pt; font-family: Tahoma;" lang="EN-US">
mrtg-bounces@lists.oetiker.ch [mailto:mrtg-bounces@lists.oetiker.ch] <b><strong>On Behalf Of </strong></b>Matt Baer<br>
<b><span style="font-weight: bold;">Sent:</span></b> Friday, 12 February 2010
1:09 p.m.<br>
<b><span style="font-weight: bold;">To:</span></b> mrtg<br>
<b><span style="font-weight: bold;">Subject:</span></b> [mrtg] MRTG not
populating graphs from script that works on all but CentOS</span></font><span lang="EN-US"></span></p>

</div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size: 12pt;">&nbsp;</span></font></p>

<div>

<p class="MsoNormal"><font size="3" color="black" face="Arial"><span style="font-size: 12pt; font-family: Arial; color: black;">I created a script to monitor uptime on a
number of machines.&nbsp; It's rough, ugly, inefficient, and I will get laughed
at, but it works.&nbsp; Here it is:<br>
<br>
#!/bin/bash<br>
ticks=$(snmpwalk -v 1 -c public 10.0.0.1 hrSystemUptime.0 | awk '{ print $5 }'
)<br>
echo "$ticks"<br>
<br>
Now, this script works and populates data for Windows 7, Ubuntu, FreeBSD,
etc.&nbsp; However, MRTG <u>WILL NOT</u> populate the data returned from this
script from a CentOS machine.&nbsp; I have gone through and verified everything
I can possibly think of.&nbsp; When run, the script itself returns the proper
data.&nbsp; The config files match perfectly with the other working machine
with the exception of the host data of course.&nbsp; To my knowledge, all it
needs is a number to graph.&nbsp; The script returns a number, why won't it graph?!</span></font></p>

</div>

</div>

</div>

</div></body></html>