private RrdDbPool() { RrdBackendFactory factory = RrdBackendFactory.getDefaultFactory(); if (factory.GetType() != typeof(RrdFileBackendFactory)) { throw new ApplicationException("Cannot create instance of " + factory.GetType().ToString() + " with " + "a default backend factory not derived from RrdFileBackendFactory"); } }
/** * <p>Constructor used to create RRD files from external file sources. * Supported external file sources are:</p> * <p/> * <ul> * <li>RRDTool/Rrd4n XML file dumps (i.e files created with <code>rrdtool dump</code> command). * <li>RRDTool binary files. * </ul> * <p/> * <p>Newly created RRD will be backed with a default storage (backend) type * (file on the disk).</p> * <p/> * <p>Rrd4n and RRDTool use the same format for XML dump and this constructor should be used to * (re)create Rrd4n RRD files from XML dumps. First, dump the content of a RRDTool * RRD file (use command line):</p> * <p/> * <pre> * rrdtool dump original.rrd > original.xml * </pre> * <p/> * <p>Than, use the file <code>original.xml</code> to create Rrd4n RRD file named * <code>copy.rrd</code>:</p> * <p/> * <pre> * RrdDb rrd = new RrdDb("copy.rrd", "original.xml"); * </pre> * <p/> * <p>or:</p> * <p/> * <pre> * RrdDb rrd = new RrdDb("copy.rrd", "xml:/original.xml"); * </pre> * <p/> * <p>See documentation for {@link #dumpXml(String) dumpXml()} method * to see how to convert Rrd4n files to RRDTool's format.</p> * <p/> * <p>To read RRDTool files directly, specify <code>rrdtool:/</code> prefix in the * <code>externalPath</code> argument. For example, to create Rrd4n compatible file named * <code>copy.rrd</code> from the file <code>original.rrd</code> created with RRDTool, use * the following code:</p> * <p/> * <pre> * RrdDb rrd = new RrdDb("copy.rrd", "rrdtool:/original.rrd"); * </pre> * <p/> * <p>Note that the prefix <code>xml:/</code> or <code>rrdtool:/</code> is necessary to distinguish * between XML and RRDTool's binary sources. If no prefix is supplied, XML format is assumed</p> * * @param rrdPath Path to a RRD file which will be created * @param externalPath Path to an external file which should be imported, with an optional * <code>xml:/</code> or <code>rrdtool:/</code> prefix. * @Thrown in case of I/O error */ public RrdDb(String rrdPath, String externalPath) : this(rrdPath, externalPath, RrdBackendFactory.getDefaultFactory()) { }
/** * Constructor used to open already existing RRD. This RRD object will be backed * with a storage (backend) of the default type (file on the disk). Constructor * obtains read or read/write access to this RRD. * * @param path Path to existing RRD. * @param readOnly Should be set to <code>false</code> if you want to update * the underlying RRD. If you want just to fetch data from the RRD file * (read-only access), specify <code>true</code>. If you try to update RRD file * open in read-only mode (<code>readOnly</code> set to <code>true</code>), * <code>IOException</code> will be thrown. * @Thrown in case of I/O error. */ public RrdDb(String path, bool readOnly) : this(path, readOnly, RrdBackendFactory.getDefaultFactory()) { }