It is relatively simple to supply data to rrdtool.  I have an example here 
extracted from my netflow data processing perl code.

Of course you have to define the RRD...
# stuff it into rrd tcp, udp, icmp, etc. protocol data file

$protorrd = "$rrddir/$ip/proto-dist.rrd";  # <--- The rrd

# the template gives the order I am going to put the values into the rrd
$template = "--template 
inicmppkts:intcppkts:inudppkts:ingrepkts:inigmppkts:inipmppkts:inipinippkts:inipv6pkts:inotherpkts:"
 . 
                        
"inicmpbytes:intcpbytes:inudpbytes:ingrebytes:inigmpbytes:inipmpbytes:inipinipbytes:inipv6bytes:inotherbytes:"
 . 
                        
"inicmpflows:intcpflows:inudpflows:ingreflows:inigmpflows:inipmpflows:inipinipflows:inipv6flows:inotherflows:"
 .
                        
"outicmppkts:outtcppkts:outudppkts:outgrepkts:outigmppkts:outipmppkts:outipinippkts:outipv6pkts:outotherpkts:"
 . 
                        
"outicmpbytes:outtcpbytes:outudpbytes:outgrebytes:outigmpbytes:outipmpbytes:outipinipbytes:outipv6bytes:outotherbytes:"
 .
                        
"outicmpflows:outtcpflows:outudpflows:outgreflows:outigmpflows:outipmpflows:outipinipflows:outipv6flows:outotherflows:"
 .
                        
"intotpkts:intotbytes:outtotpkts:outtotbytes:totrecords:totflows:missed";

# This is the "data" with the epoch seconds...                     
$datastream = 
"$epoch:$inicmppkts:$intcppkts:$inudppkts:$ingrepkts:$inigmppkts:$inipmppkts:$inipinippkts:$inipv6pkts:$inotherpkts:"
 . 
              
"$inicmpbytes:$intcpbytes:$inudpbytes:$ingrebytes:$inigmpbytes:$inipmpbytes:$inipinipbytes:$inipv6bytes:$inotherbytes:"
 .
              
"$inicmpflows:$intcpflows:$inudpflows:$ingreflows:$inigmpflows:$inipmpflows:$inipinipflows:$inipv6flows:$inotherflows:"
 . 
              
"$outicmppkts:$outtcppkts:$outudppkts:$outgrepkts:$outigmppkts:$outipmppkts:$outipinippkts:$outipv6pkts:$outotherpkts:"
 . 
              
"$outicmpbytes:$outtcpbytes:$outudpbytes:$outgrebytes:$outigmpbytes:$outipmpbytes:$outipinipbytes:$outipv6bytes:$outotherbytes:"
 .
              
"$outicmpflows:$outtcpflows:$outudpflows:$outgreflows:$outigmpflows:$outipmpflows:$outipinipflows:$outipv6flows:$outotherflows:"
 . 
              
"$intotalpkts:$intotalbytes:$outtotalpkts:$outtotalbytes:$records:$flows:$missed";

$status = RRDp::cmd qq{update $protorrd $template $datastream};

$ans = RRDp::read;


$err = RRD::end;

#######################

I hope this helps..

Connie Logg - Network Analyst - 650-926-2879
Stanford Linear Accelerator Center
MS 97; 2575 SandHill Road; Menlo Park CA 94025
"Happiness is found along the way, not at the end of the road"

-----Original Message-----
From: Venkatesh Ramachandran [mailto:[EMAIL PROTECTED]
Sent: Thursday, September 06, 2001 4:33 AM
To: [email protected]; [EMAIL PROTECTED]; Venkatesh
Ramachandran
Subject: [rrd-users] Regarding Integration with MRTG/RRD


Hello everyone,
   I work on a Network Management tool called Internetwork Performance
Monitor, one of Cisco's set of Troubleshooting and
Monitoring applications. I was trying to integrate our application with
MRTG.
   I was interested in understanding the following points:

   * From the MRTG website and other web resources, i understand that
     MRTG always need an SNMP agent to get the     information. Is my
     understanding correct?
   * Can an application integrate with MRTG ? For example, can another
     application, that collects data  from the routers/switches etc..,
     supply data from its Database, in a specific format, so that MRTG
     can plot the graphs?
   * Is it possible somehow to supply data to the RRD tool from another
     Database, instead of data being collected from the device itself?
   * The RRD website talks about Frontends being developed for RRD -
     which poll network devices and put a friendly user     interface on
     it.But, i wanted to know, if we can fill the RRD tool, incase MRTG
     cannot accept data from a Database.

  It would be of great help, if you could clear my doubts.

Thanks in advance,
Venkatesh.


--
Unsubscribe mailto:[EMAIL PROTECTED]
Help        mailto:[EMAIL PROTECTED]
Archive     http://www.ee.ethz.ch/~slist/rrd-users
WebAdmin    http://www.ee.ethz.ch/~slist/lsg2.cgi

--
Unsubscribe mailto:[EMAIL PROTECTED]
Help        mailto:[EMAIL PROTECTED]
Archive     http://www.ee.ethz.ch/~slist/rrd-users
WebAdmin    http://www.ee.ethz.ch/~slist/lsg2.cgi

Reply via email to