mudradimohan | 15 May 2013 08:09
Picon

drill down charts using rrdtools

My name is Mohan and this is my first entry to this forum. As of now I am
familiar with creating a chart using rrdtool. I just wanted to know whether
there is any option in rrdtool to draw a drill down chart, i.e., if I select
some region between 2 hour values, then the selected region should zoom and
show the chart dividing the selected region into minutes, further if I
select 2 minute values then it should show the graph divided into seconds
between the 2 minutes. Is this possible to achieve this in rrdtool? If so
can you please give me some idea?

Thanks and regards,
Mohan Rao Mudradi

--
View this message in context: http://rrd-mailinglists.937164.n2.nabble.com/drill-down-charts-using-rrdtools-tp7581010.html
Sent from the RRDtool Developers Mailinglist mailing list archive at Nabble.com.
Alex van den Bogaerdt | 21 Feb 2013 22:30
Picon
Favicon

vnames

A user got bitten by using a vname which could not be used in RPN.

The manual pages warn for this, but apparently nobody noticed the problem 
when the user asked for help.  I admit that I did not immediately spot it 
and needed to do some debugging before being able to solve the problem.
(see the rrd-users mailing list)

Maybe rrdtool should refuse to use, or at least warn about, vnames which are 
also existing operators in RPN?

cheers,
Alex
P.S.
No, I cannot send a patch due to circumstances.
nirmoy | 8 Jan 2013 13:27
Picon

cassandra support

Hey friends,

I have added cassandra support to rrd like lidbi. Is there anyone interested
?Please suggest  me to add some more features. i just added basic cassandra
data model support one columnfamily one row support , so this modification
can support millions of data point to be stored. 

--
View this message in context: http://rrd-mailinglists.937164.n2.nabble.com/cassandra-support-tp7580708.html
Sent from the RRDtool Developers Mailinglist mailing list archive at Nabble.com.
Olivier Doucet | 7 Jan 2013 17:52
Gravatar

rrdtool + libdbi / mysql speed test

Hello everyone,

Happy new year 2013 !

I spent the last few weeks testing libdbi support in rrdtool. Some
people already reported that using libdbi is not very efficient, but I
couldn't find any numbers on this (just "it's slow").

I've done some investigation, to track where performance was hit and
on which criteria. This is of course when you want rrdtool graph, as
data creation / updates are handled outside rrdtool.
When using rrdtool file for storing data, it took the same time to
graph 1 hour of data or 200 hours. Retrieving data from 1 DS or 5 DS
(inside the very same rrd file) took approximately the same time.
When using libdbi (with mysql backend), time needed to render the
graph is skyrocketing, based on how many hours of data you want, and
how many DS you have.
The following chart is very straightforward :
http://www.olivierdoucet.info/blog/wp-content/uploads/2012/12/graph.png

What is interesting here is that time is not spent on the query itself
(took less than a second, even for 1 year of data).
I used oprofile tool to see that the process heavily used function
'mysql_data_seek' (inside libmysqlclient).

Good news is that using rrdtool with a mysql database can be much
faster (we can be very close to rrd file graphing). I hope
modifications are compatible with libdbi (and that we do not need
specific code for MySQL). If I read source code right, modifications
need to be made near
(Continue reading)

Kiss Gabor (Bitman | 30 Nov 2012 13:33
Picon

rrdcached: path sanitizer

I've just installed rrdcached and I'm checking its performance.

I found that daemon does not sanitize file paths.
Two different cliens may want to refer the same unix file
with different names but rrdcached does not recognizes this
but uses given filenames literally.

E.g. Unix system calls "know" that the following files are the same
/var/lib/cricket/subdir/foo.rrd and /var/lib/cricket//subdir/foo.rrd,
/var/lib/cricket/subdir/bar.rrd and /var/lib/cricket/./subdir/bar.rrd 
etc.
Meanwhile rrdcache thinks they are different.
This may be problem when one program updates RRD file and an other
one tries to flush cache before graphing.

Checking the source code I found that severeal request handlers
call get_abs_path(&file, file_tmp), but then no one uses
the content of file_tmp.
Maybe this function could be replaced with an other that
canonifies file paths. I.e. multiple slashes should be replaced
with single one and "./" should be omitted.

Regards

Gabor

--

-- 
Wenn ist das Nunstück git und Slotermeyer?
Ja! ... Beiherhund das Oder die Flipperwaldt gersput.
(Continue reading)

Ana Oprea | 5 Nov 2012 21:09
Picon

[contrib] python binding rrdtool 1.4.7 Python 2.7 win32

Hello

First of all, thank you for developing such a useful tool.

I recently needed a Python binding for rrdtool on Windows and I was 
surprised not to find something new. When trying to compile it myself, I 
have hit a few small problems that were a bit time consuming.

I have uploaded at [1] the binary files and the sources I used to obtain 
them from. Feel free to add the archives to the download page of rrdtool 
and let me know if I could help with modifying something else.

[1] http://swarm.cs.pub.ro/~anao/rrdtool_python_binding_win32/

Kind regards,

--

-- 
Ana Oprea
Ing, MSc EURECOM / Télécom ParisTech
ioanaanamaria.oprea <at> gmail.com
Juha Mustonen | 2 Nov 2012 09:22
Picon

Internal error while talking to rrdcached

Hi,


I'm getting following error from Zenoss monitoring setup, but the root cause is unclear. 
Possibly you could give some insight or tips where to look at? Already tried via Zenoss community forum (http://community.zenoss.org/thread/18663) but no luck there so far.

[Error]
2012-11-02 10:20:32,411 ERROR zen.ThresholdInstance: Unable to read RRD file for usedBlocks_usedBlocks
Traceback (most recent call last):
  File "/opt/zenoss/Products/ZenModel/ThresholdInstance.py", line 150, in checkRaw
    cycleTime, rrdType = self._getRRDType(dataPoint)
  File "/opt/zenoss/Products/ZenModel/ThresholdInstance.py", line 173, in _getRRDType
    data = rrdtool_fn()
  File "/opt/zenoss/Products/ZenUtils/Utils.py", line 1739, in _inner
    return fn(*args,**kwargs)
  File "/opt/zenoss/Products/ZenModel/ThresholdInstance.py", line 172, in rrdtool_fn
    return rrdtool.info(self.context().path(dp), *rrd_daemon_args())
error: request: internal error while talking to rrdcached

[Process] 
zenoss   12303  0.0  0.0 114288  1156 ?        Ssl  10:06   0:00 /usr/bin/rrdcached -b /opt/zenoss/perf -p /opt/zenoss/var/rrdcached.pid -l /opt/zenoss/var/rrdcached.sock -j /opt/zenoss/var/rrd_journals


Is there any (rrdcached?) command that I could run/tryout test whether the problem really is in rrdtool/rrdcached ?

Br,
Juha
_______________________________________________
rrd-developers mailing list
rrd-developers <at> lists.oetiker.ch
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers
Tobias Oetiker | 26 Oct 2012 10:54
Picon
Gravatar

rrdjig is now in github

RRDjig, the tool for transfering data from one rrd file to another
allowing for different stepping and structure between the two is
now on github ...

 https://github.com/oetiker/rrdtool-rrdjig

cheers
tobi

--

-- 
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch tobi <at> oetiker.ch ++41 62 775 9902 / sb: -9900
Tobias Oetiker | 11 Sep 2012 11:22
Picon
Gravatar

rrdtool is now on github

RRDtool repository moved from Subversion to Git
-----------------------------------------------

Over the last few weeks I have been experimenting with
moving rrdtool over to github. Finally it is done. The
rrdtool source repository along with the trac issue
database reside on github now.

  https://github.com/oetiker/rrdtool-1.x

cheers
tobi

--

-- 
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch tobi <at> oetiker.ch ++41 62 775 9902 / sb: -9900
Dustin Fisch | 8 Sep 2012 22:44

RRD PostgreSQL extension

Hi,

I am currently thinking about building an RRD extension for PostgreSQL.

The extension will provide a RRD data type which represents a
complete database and functions for all the existing functions of the
RRD tool, like create, update, first and graph...

PostgreSQL has a nice API for LOB, which allows to store the whole RRD
database using the PostgreSQL file management.

I already have taken a look to the RRD code. As far as I can see, there
are functions like rrd_create_r(...) which provides the functionality I
need for such an extension.

The PostgreSQL LOB API currently provides a file descriptor for the
access to the data stored in the LOB.

Unfortunately, it looks like the RRD API only allows the usage of a
filename.

Is there any way to use a file descriptor instead of the filename? Or
is there any chance such a patch would be accepted?

thanks
Dustin Frisch

--

-- 
http://lab.sh
_______________________________________________
rrd-developers mailing list
rrd-developers <at> lists.oetiker.ch
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers
Thomas Mainka | 5 Sep 2012 22:32
Picon
Picon

PATCH: Fix for JSON output format

Hi everyone,

Recently I have experimented with dynamic graphing of RRDtool data on 
web pages (as JSON data queried by jQuery). While the JSON export and 
transport worked fine, after some testing I realized that starting with 
version 1.4 jQuery rejects JSON data which it thinks is malformed. When 
directly fed the output output of "rrdtool xport --json" jQuery barfs 
with an syntax error.

Of course there are workarounds, but the attached fix is pretty trivial: 
Only the double quotes were missing in most of the JSON output from 
RRDtool to pass the jQuery test. The JSON standard is pretty strict on 
strings and requires any string to be wrapped in double quotes: 
http://json.org/

Personally I have also tested the resulting output with 
http://jsonlint.org/ and http://www.jsoneditoronline.org/ which both 
worked for me. YMMV, though.

Regards,
Thomas
--- ../rrdtool-1.4.7.orig/src/rrd_tool.c	2012-01-24 11:08:48.000000000 +0100
+++ src/rrd_tool.c	2012-09-05 17:11:34.471626553 +0200
 <at>  <at>  -737,13 +737,13  <at>  <at> 
                 printf("  <%s>\n", META_TAG);
             }
             else {
-                printf("{ about: 'RRDtool xport JSON output',\n  meta: {\n");
+                printf("{ \"about\": \"RRDtool xport JSON output\",\n  \"meta\": {\n");
             }

 
 #define pXJV(indent,fmt,tag,value) \
             if (json) { \
-               printf(indent "%s: " fmt ",\n",tag,value); \
+               printf(indent "\"%s\": " fmt ",\n",tag,value); \
             } else { \
                printf(indent "<%s>" fmt "</%s>\n",tag,value,tag); \
             }
 <at>  <at>  -757,7 +757,7  <at>  <at> 
             }

             if (json){
-                printf("    %s: [\n", LEGEND_TAG);
+                printf("    \"%s\": [\n", LEGEND_TAG);
             }
             else {
                 printf("    <%s>\n", LEGEND_TAG);
 <at>  <at>  -766,7 +766,7  <at>  <at> 
                 char     *entry = NULL;
                 entry = legend_v[j];
                 if (json){
-                    printf("      '%s'", entry);
+                    printf("      \"%s\"", entry);
                     if (j < col_cnt -1){
                         printf(",");
                     }
 <at>  <at>  -788,7 +788,7  <at>  <at> 
             }

             if (json){
-                printf("  %s: [\n",DATA_TAG);
+                printf("  \"%s\": [\n",DATA_TAG);
             } else {
                 printf("  <%s>\n", DATA_TAG);
             }
_______________________________________________
rrd-developers mailing list
rrd-developers <at> lists.oetiker.ch
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers

Gmane