Sponsored Content
Top Forums Shell Programming and Scripting using Perl with rrdtool to create and update graphs Post 302425737 by jeffersno1 on Saturday 29th of May 2010 01:42:56 PM
Old 05-29-2010
using Perl with rrdtool to create and update graphs

Hi guys,

im having real difficulty getting my head around perl and rrdtool and was hoping someone could help

I want to run a perl script from cron which retrieves the data every 5 mins, creates .rrd's if not already created, and updates the DS from the reultsHash or $key, then creates the graphs

Because the OID i use are dynamic i have to snmpwalk a table which is fine.


To obtain the data i use:
Code:
use RRDs;

@get_snmp=`snmptable -v 2c -c public 10.123.123.1:1337 STATS-MIB::statsTable`;

to prove it works i print out the data.

Code:
foreach $key (sort keys %resultsHash) { 
print "$key $resultsHash{$key}\n"; 

output is printed as: 
Pass30d 156 
pass1d 52 
pass7d 388 
freepromd 17

i want to create an .RRD for each pass so im trying to put this into a for loop:

so in princible i should be able to do the following, but the .rrd's dont get created ????
Am i doing something fundamentially wrong here ?

Code:
foreach $key ($key) { 
  
  # if rrdtool database doesn't exist, create it 
LINE 52        if (! -e "$rrd/$key.rrd") 
        { 
                print "creating rrd database for $key ...\n"; 
                RRDs::create "$rrd/$key.rrd", 
                        "-s 300", 
                        "DS:pass:DERIVE:600:U:U", 
                        "RRA:AVERAGE:0.5:1:576", 
                        "RRA:AVERAGE:0.5:6:672", 
                        "RRA:AVERAGE:0.5:24:732", 
                        "RRA:AVERAGE:0.5:144:1460"; 
        }

I would expect the creation of rrd's to have worked. I get the error

Use of uninitialized value in concatenation (.) or string at ./st.pl line 52.

Can anyone advise me on what this means??

Many thanks in advance

Jeffers

Last edited by pludi; 05-30-2010 at 07:51 AM.. Reason: Disabled smiles in code for readability
 

9 More Discussions You Might Find Interesting

1. UNIX and Linux Applications

how to create a logfile in unix after insert/update/delete from informix

I am running a Informix-4GL program to insert/update/delete on a particular table (say xxx). Now I want to create a logfile in unix which will store the affected data(say xxx.*) along with user information (say uname,IP address etc.) what command I should use from Informix-4GL ? I have tried the... (0 Replies)
Discussion started by: subhamukh
0 Replies

2. UNIX for Dummies Questions & Answers

linux rrdtool help create graph

I need some help with creating graphs using the rrdtool. I have never used it before. I installed by yum install rrdtool. Basically I have a txt file with these values 432 542 234 531 1004 Does anyone know the syntax of rrdtool to automatically take the values from the txt file and... (1 Reply)
Discussion started by: borderblaster
1 Replies

3. Shell Programming and Scripting

Command to create and update csv file

Hi, I need to create a csv file to store oracle query output. This report need to be created on hourly basis. The csv file report format as "Report_22_Sep_09_13IST.csv". I have the oracle query. Now i need to create and move the oracle query output to the report row by row starting from 3rd row.... (6 Replies)
Discussion started by: Sekar1
6 Replies

4. Shell Programming and Scripting

Perl module script to draw speedometer/gauge graphs

Hi, Has anyone used any perl modules to draw dashboard/gauge graphs similar to a speedometer? I am looking to create some graphs in perl. Please share your thoughts if there are any modules and an example script. Thanks (0 Replies)
Discussion started by: devtakh
0 Replies

5. Red Hat

Create driver update disc for redhat

Hi, I am trying to install redhat into one of my machine, but during boot up from Redhat Dvd, it mention not able to detect my HDD and it need another driver to install into it. Because the machine only have one driver update disc source which is my CD/DVD rom, so i would like to know... (9 Replies)
Discussion started by: cbtang
9 Replies

6. UNIX for Advanced & Expert Users

perl and HP-UX : instmodsh in combination with software depot : update inventory for installed Perl

we create a HP-UX software depot with a new perl-modul. after installation of the software depot, the perl module i can't find with instmodsh in the inventory for installed Perl modules. - i have learned of using instmodsh command : i find out what modules are already installed on my system. ... (0 Replies)
Discussion started by: bora99
0 Replies

7. Shell Programming and Scripting

Can't get While loop working with rrdtool update

I have data in a CSV file that looks like; 1353557880:1.111:123.3 1353557940:1.113:123.3 1353558000:1.118:123.3 1353558060:1.123:123.3 1353558120:1.218:123.3 I'm running the following; while IFS=":" read d a b; do rrdtool update temp.rrd $d:$a:$b; done <temp6 It gives me the following... (2 Replies)
Discussion started by: ottsm
2 Replies

8. Shell Programming and Scripting

Create a specific bash to increase the automatic update on my pi

hi everyone, I just began to be interested about the bash access. I buy a time ago a Raspberry pi, I installed raspbmc and now I would like build a bash to copy everyday all new files inside my server directly on the hard drive in my Pi. So my HDD is directly plug on my pi with usb connect,... (4 Replies)
Discussion started by: nagito34
4 Replies

9. Shell Programming and Scripting

Python-rrdtool try except rrdtool.error module object has no attribute error

I have this code that gives this error on Linux and will be grateful if you can help import rrdtool try: ret_asd = rrdtool.update(myfile.rrd,'N:%s:%s' %(metric1, metric2)); except rrdtool.error, e: print e When i run the above i get the below error except... (1 Reply)
Discussion started by: kaf3773
1 Replies
RRDDUMP(1)							      rrdtool								RRDDUMP(1)

NAME
rrddump - dump the contents of an RRD to XML format SYNOPSIS
rrdtool dump filename.rrd [filename.xml] [--header|-h {none,xsd,dtd}] [--no-header] [--daemon address] > filename.xml DESCRIPTION
The dump function writes the contents of an RRD in human readable (?) XML format to a file or to stdout. This format can be read by rrdrestore. Together they allow you to transfer your files from one computer architecture to another as well to manipulate the contents of an RRD file in a somewhat more convenient manner. filename.rrd The name of the RRD you want to dump. filename.xml The (optional) filename that you want to write the XML output to. If not specified, the XML will be printed to stdout. --header|-h {none,xsd,dtd} By default RRDtool will add a dtd header to the xml file. Here you can customize this to and xsd header or no header at all. --no-header A shortcut for --header=none. If you want to restore the dump with RRDtool 1.2 you should use the --no-header option since 1.2 can not deal with xml headers. --daemon address Address of the rrdcached daemon. If specified, a "flush" command is sent to the server before reading the RRD files. This allows rrdtool to return fresh data even if the daemon is configured to cache values for a long time. For a list of accepted formats, see the -l option in the rrdcached manual. rrdtool dump --daemon unix:/var/run/rrdcached.sock /var/lib/rrd/foo.rrd EXAMPLES
To transfer an RRD between architectures, follow these steps: 1. On the same system where the RRD was created, use rrdtool dump to export the data to XML format. 2. Transfer the XML dump to the target system. 3. Run rrdtool restore to create a new RRD from the XML dump. See rrdrestore for details. ENVIRONMENT VARIABLES
The following environment variables may be used to change the behavior of "rrdtool dump": RRDCACHED_ADDRESS If this environment variable is set it will have the same effect as specifying the "--daemon" option on the command line. If both are present, the command line argument takes precedence. AUTHOR
Tobias Oetiker <tobi@oetiker.ch> 1.4.8 2013-05-23 RRDDUMP(1)
All times are GMT -4. The time now is 12:23 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy