|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.opennms.netmgt.rrd.jrobin.JRobinRrdStrategy
public class JRobinRrdStrategy
Provides a JRobin based implementation of RrdStrategy. It uses JRobin 1.4 in FILE mode (NIO is too memory consuming for the large number of files that we open)
| Constructor Summary | |
|---|---|
JRobinRrdStrategy()
Initialized the RrdDb to use the FILE factory because the NIO factory uses too much memory for our implementation. |
|
| Method Summary | |
|---|---|
protected void |
addVdefDs(org.jrobin.graph.RrdGraphDef graphDef,
String sourceName,
String[] rhs,
double start,
double end,
Map<String,List<String>> defs)
|
void |
closeFile(org.jrobin.core.RrdDb rrdFile)
Closes the JRobin RrdDb. |
org.jrobin.core.RrdDef |
createDefinition(String creator,
String directory,
String rrdName,
int step,
List<RrdDataSource> dataSources,
List<String> rraList)
Create a round robin database definition from the supplied parameters. |
void |
createFile(org.jrobin.core.RrdDef rrdDef)
Creates the JRobin RrdDb from the def by opening the file and then closing. |
InputStream |
createGraph(String command,
File workDir)
Creates an InputStream representing the bytes of a graph created from round robin data. |
protected org.jrobin.graph.RrdGraphDef |
createGraphDef(File workDir,
String[] inputArray)
createGraphDef |
RrdGraphDetails |
createGraphReturnDetails(String command,
File workDir)
Creates an RrdGraphDetails object representing the graph created from round robin data. |
static char[] |
escapeIfNotPathSepInDEF(char encountered,
char escaped,
StringBuffer currToken)
escapeIfNotPathSepInDEF |
Double |
fetchLastValue(String fileName,
String ds,
int interval)
Fetches the last value from the round robin database with the given name. |
Double |
fetchLastValue(String fileName,
String ds,
String consolidationFunction,
int interval)
Fetches the last value from the round robin database with the given name. |
Double |
fetchLastValueInRange(String fileName,
String ds,
int interval,
int range)
Fetches the last value from the round robin database with the given name within a time range. |
Properties |
getConfigurationProperties()
getConfigurationProperties |
String |
getDefaultFileExtension()
getDefaultFileExtension |
int |
getGraphLeftOffset()
getGraphLeftOffset |
int |
getGraphRightOffset()
getGraphRightOffset |
int |
getGraphTopOffsetWithText()
getGraphTopOffsetWithText |
String |
getStats()
This implementation does not track any stats. |
org.jrobin.core.RrdDb |
openFile(String fileName)
Opens the round robin database with the supplied name. |
void |
promoteEnqueuedFiles(Collection<String> rrdFiles)
In the event that this is a queuing implementation of the RrdStrategy. |
void |
setConfigurationProperties(Properties configurationParameters)
setConfigurationProperties |
static String[] |
tokenizeWithQuotingAndEscapes(String line,
String delims,
boolean processQuoted)
tokenizeWithQuotingAndEscapes |
static String[] |
tokenizeWithQuotingAndEscapes(String line,
String delims,
boolean processQuoted,
String tokens)
Tokenize a String into an array of Strings. |
void |
updateFile(org.jrobin.core.RrdDb rrdFile,
String owner,
String data)
Updates the supplied round robin database with the given timestamp:value point |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public JRobinRrdStrategy()
throws Exception
Exception - if any.| Method Detail |
|---|
public Properties getConfigurationProperties()
getConfigurationProperties
Properties object.public void setConfigurationProperties(Properties configurationParameters)
setConfigurationProperties
setConfigurationProperties in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>configurationParameters - a Properties object.
public void closeFile(org.jrobin.core.RrdDb rrdFile)
throws Exception
closeFile in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>rrdFile - a RrdDb object.
Exception - if any.
public org.jrobin.core.RrdDef createDefinition(String creator,
String directory,
String rrdName,
int step,
List<RrdDataSource> dataSources,
List<String> rraList)
throws Exception
createDefinition in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>creator - -
A string representing who is creating this file for use in log
msgsdirectory - -
The directory to create the file inrrdName - -
The name to use for the round robin databasestep - -
the step for the databasedataSources - -
the data sources to use for round robin databaserraList - -
a List of the round robin archives to create in the database
Exception - If an error occurs while creating the definition
public void createFile(org.jrobin.core.RrdDef rrdDef)
throws Exception
createFile in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>rrdDef - a RrdDef object.
Exception - if any.
public org.jrobin.core.RrdDb openFile(String fileName)
throws Exception
openFile in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>fileName - the name of the associated rrd file
Exception - if an error occurs opening the file
public void updateFile(org.jrobin.core.RrdDb rrdFile,
String owner,
String data)
throws Exception
updateFile in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>rrdFile - an rrd object created using openFileowner - the owner of the rrddata - a string of the form Exception - if an error occurs updating the file
public Double fetchLastValue(String fileName,
String ds,
int interval)
throws NumberFormatException,
RrdException
fetchLastValue in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>fileName - a name the represents a round robin databaseds - a name the represents a data source to be usedinterval - a step interval of the round robin database
NumberFormatException - if any.
RrdException - if any.
public Double fetchLastValue(String fileName,
String ds,
String consolidationFunction,
int interval)
throws RrdException
fetchLastValue in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>fileName - a name the represents a round robin databaseds - a name the represents a data source to be usedconsolidationFunction - a String object.interval - a step interval of the round robin database
RrdException - if any.
public Double fetchLastValueInRange(String fileName,
String ds,
int interval,
int range)
throws NumberFormatException,
RrdException
fetchLastValueInRange in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>fileName - a name the represents a round robin databaseds - a name the represents a data source to be usedinterval - a step interval of the round robin databaserange - an acceptable range for which the last value will be returned
NumberFormatException - if any.
RrdException - if any.
public InputStream createGraph(String command,
File workDir)
throws IOException,
RrdException
createGraph in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>command - the command needed to create the graphworkDir - the directory that all referenced files are relative to
IOException - if an IOError occurs
RrdException - if an RRD error occurs
public RrdGraphDetails createGraphReturnDetails(String command,
File workDir)
throws IOException,
RrdException
createGraphReturnDetails in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>command - the command needed to create the graphworkDir - the directory that all referenced files are relative to
IOException - if an IOError occurs
RrdException - if an RRD error occurspublic void promoteEnqueuedFiles(Collection<String> rrdFiles)
promoteEnqueuedFiles in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>rrdFiles - a Collection object.
protected org.jrobin.graph.RrdGraphDef createGraphDef(File workDir,
String[] inputArray)
throws org.jrobin.core.RrdException
createGraphDef
workDir - a File object.commandArray - an array of String objects.
RrdGraphDef object.
org.jrobin.core.RrdException - if any.public String getStats()
getStats in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>String object.public int getGraphLeftOffset()
getGraphLeftOffset
getGraphLeftOffset in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>public int getGraphRightOffset()
getGraphRightOffset
getGraphRightOffset in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>public int getGraphTopOffsetWithText()
getGraphTopOffsetWithText
getGraphTopOffsetWithText in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>public String getDefaultFileExtension()
getDefaultFileExtension
getDefaultFileExtension in interface RrdStrategy<org.jrobin.core.RrdDef,org.jrobin.core.RrdDb>String object.
public static String[] tokenizeWithQuotingAndEscapes(String line,
String delims,
boolean processQuoted)
tokenizeWithQuotingAndEscapes
line - a String object.delims - a String object.processQuoted - a boolean.
String objects.
public static String[] tokenizeWithQuotingAndEscapes(String line,
String delims,
boolean processQuoted,
String tokens)
String into an array of Strings.
line - the string to tokenizedelims - a string containing zero or more characters to treat as a delimiterprocessQuoted - whether or not to process escaped values inside quotestokens - custom escaped tokens to pass through, escaped. For example, if tokens contains "lsg", then \l, \s, and \g
will be passed through unescaped.
String objects.
public static char[] escapeIfNotPathSepInDEF(char encountered,
char escaped,
StringBuffer currToken)
escapeIfNotPathSepInDEF
encountered - a char.escaped - a char.currToken - a StringBuffer object.
protected void addVdefDs(org.jrobin.graph.RrdGraphDef graphDef,
String sourceName,
String[] rhs,
double start,
double end,
Map<String,List<String>> defs)
throws org.jrobin.core.RrdException
org.jrobin.core.RrdException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||