RRDPYTHON(1)                        rrdtool                       RRDPYTHON(1)



NNAAMMEE
       rrdpython - About the RRD Python bindings

SSYYNNOOPPSSIISS
        import rrdtool
        rrdtool.create('/tmp/test.rrd', 'DS:foo:GAUGE:20:0:U')

DDEESSCCRRIIPPTTIIOONN
       The rrrrddttooooll functions are directly callable via the Python programming
       language. This wrapper implementation has been written from the scratch
       (without  SWIG)

       The API expects strings and/or a list of strings as parameters to the
       functions.  Please refer to the other rrrrddttooooll documentation for
       functions and valid arguments.

EEXXAAMMPPLLEESS
   EExxaammppllee 11
        import sys
        sys.path.append('/path/to/rrdtool/lib/python2.6/site-packages/')
        import rrdtool, tempfile

        DAY = 86400
        YEAR = 365 * DAY
        fd,path = tempfile.mkstemp('.png')

        rrdtool.graph(path,
                     '--imgformat', 'PNG',
                     '--width', '540',
                     '--height', '100',
                     '--start', "-%i" % YEAR,
                     '--end', "-1",
                     '--vertical-label', 'Downloads/Day',
                     '--title', 'Annual downloads',
                     '--lower-limit', '0',
                     'DEF:downloads=downloads.rrd:downloads:AVERAGE',
                     'AREA:downloads#990033:Downloads')

        info = rrdtool.info('downloads.rrd')
        print info['last_update']
        print info['ds[downloads].minimal_heartbeat']

   EExxaammppllee 22
        import sys
        sys.path.append('/path/to/rrdtool/lib/python2.6/site-packages/')
        import rrdtool

        # in real life data_sources would be populated in loop or something similar
        data_sources=[ 'DS:speed1:COUNTER:600:U:U',
                       'DS:speed2:COUNTER:600:U:U',
                       'DS:speed3:COUNTER:600:U:U' ]

        rrdtool.create( 'speed.rrd',
                        '--start', '920804400',
                        data_sources,
                        'RRA:AVERAGE:0.5:1:24',
                        'RRA:AVERAGE:0.5:6:10' )

       If you use the ssiittee--ppyytthhoonn--iinnssttaallll make target you can drop to first
       sys.path.append line since the RRDtool module will be available
       everywhere.

       If RRDtool runs into trouble, it will throw an exception which you
       might want to catch.

SSEEEE AALLSSOO
       rrdcreate, rrdupdate, rrdgraph, rrddump, rrdfetch, rrdtune, rrdlast,
       rrdxport, rrdinfo

AAUUTTHHOORR
       Hye-Shik Chang <perky@i18n.org>

       Alan Milligan <alan.milligan@last-bastion.net>



1.9.0                             2024-07-29                      RRDPYTHON(1)
