HOME | Library | JRobin API | Utilities | Support | About Us | Forum

JRobin API
JRobin and RRDTool, compared
Quick reference
Tutorial
Working example
Core API
Graphing API
Templates API
Standalone graphing engine
Backends
Javadoc

# JRobin API

RRDTool is just a set of command line utilities. Even if you use some JNI wrapper to perform RRDTool operations faster (by eliminating slow Runtime.exec() calls), you'll find out that RRDTool always opens and closes a RRD file whenever an update is performed. RRDTool scripts well but it always performs RRD operations in the same way.

JRobin is just an API. With this API you are free to optimize your code so that RRD files are open or closed only when necessary. This could lead to huge performance benefits.

JRobin is also written in pure Java: your RRD-based applications can be easily ported from one platform to another. RRD files created with JRobin are also portable - start your application on Solaris, than move everything (application and RRD files together) to Windows or Linux and simply start your application again. With RRDTool you are forced to recompile your code, and (strange but true) RRD files created by RRDTool cannot be (easily) moved between different platforms.

If you are an experienced RRDTool user, you'll discover that JRobin API follows exactly the same logic. Chances are that you will be able to start using JRobin in almost no time.

And what about JRobin scripting? RRDTool is widely accepted because of its scripting capabilities. Just put your RRDTool command in an exteral file, put some placeholders in it, than read the command line during runtime, replace placeholders with real values and call Runtime.exec().

JRobin cannot be scripted that easily but it is possible to put RRD file and graph definitions in external XML templates. Templates may contain placeholders which should be replaced with real values during runtime. An alternative way to script JRobin is to use some decent scripting engine (like BeanShell or Groovy). We also plan to add an important feature to JRobin: automatic runtime conversions of RRDTool commands to JRobin API calls. Since JRobin supports (almost) all features from RRDTool, this should not be a complicated issue (appart from creating a parser for date strings formatted in a unix at-command style; willing to help?).

Back to the top

Copyright © 2003, 2004 Sasa Markovic & Arne Vandamme. All Rights Reserved.