summaryrefslogtreecommitdiffstats
path: root/plugins/impstats/statslog-splitter.py
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/impstats/statslog-splitter.py')
-rwxr-xr-xplugins/impstats/statslog-splitter.py40
1 files changed, 31 insertions, 9 deletions
diff --git a/plugins/impstats/statslog-splitter.py b/plugins/impstats/statslog-splitter.py
index 3452e3b3..dce71a39 100755
--- a/plugins/impstats/statslog-splitter.py
+++ b/plugins/impstats/statslog-splitter.py
@@ -20,13 +20,16 @@ bSingleObjectOutput = True
bHelpOutput = False
bEnableCharts = False
bLogarithmicChart = False
+bLineChart = True
+bBarChart = False
bFilledLineChart = False
+bChartCalcDelta = False
szChartsFormat = "svg"
# Helper variables
nLogLineNum = 0
nLogFileCount = 0
-szChartOptionalArgs = ""
+szChartAddArgs = ""
# Create regex for loglines
loglineregexes = []
@@ -49,7 +52,7 @@ outputFiles = {}
errorlog = open("statslog-splitter.corrupted.log", 'w')
# Process Arguments
-for arg in sys.argv[-4:]:
+for arg in sys.argv: # [-4:]:
if arg.find("--input=") != -1:
szInput = arg[8:]
elif arg.find("--outputdir=") != -1:
@@ -62,8 +65,16 @@ for arg in sys.argv[-4:]:
szChartsFormat = arg[15:]
elif arg.find("--logarithmic") != -1:
bLogarithmicChart = True
+ elif arg.find("--linechart") != -1:
+ bLineChart = True
+ bBarChart = False
+ elif arg.find("--barchart") != -1:
+ bLineChart = False
+ bBarChart = True
elif arg.find("--filledlinechart") != -1:
bFilledLineChart = True
+ elif arg.find("--chartscalcdelta") != -1:
+ bChartCalcDelta = True
elif arg.find("--h") != -1 or arg.find("-h") != -1 or arg.find("--help") != -1:
bHelpOutput = True
@@ -81,8 +92,11 @@ if bHelpOutput:
print " Default is disabled."
print " --chartsformat=<svg|png> Format which should be used for Charts."
print " Default is svg format"
- print " --logarithmic Uses Logarithmic to scale the Y Axis, maybe useful in some cases. Default is OFF"
- print " --filledlinechart Use filled lines on Linechart, maybe useful in some cases. Default is OFF"
+ print " --logarithmic Uses Logarithmic to scale the Y Axis, maybe useful in some cases. Default is OFF."
+ print " --linechart If set, line charts will be generated (Default)."
+ print " --barchart If set, bar charts will be generated."
+ print " --filledlinechart Use filled lines on Linechart, maybe useful in some cases. Default is OFF."
+ print " --chartscalcdelta If set, charts will use calculated delta values instead of cumulative values."
print "\n Sampleline: ./statslog-splitter.py singlefile --input=rsyslog-stats.log --outputdir=/home/user/csvlogs/ --enablecharts --chartsformat=png"
elif bSingleObjectOutput:
inputfile = open(szInput, 'r')
@@ -184,23 +198,31 @@ elif bSingleObjectOutput:
if bEnableCharts:
# Open HTML Code
szHtmlCode = "<!DOCTYPE html><html><head></head><body><center>"
-
+
+ # Add mandetory args
+ if bLineChart:
+ szChartAddArgs += " --linechart"
+ elif bBarChart:
+ szChartAddArgs += " --barchart"
+
# Add optional args
if bLogarithmicChart:
- szChartOptionalArgs += " --logarithmic"
+ szChartAddArgs += " --logarithmic"
if bFilledLineChart:
- szChartOptionalArgs += " --filledlinechart"
+ szChartAddArgs += " --filledlinechart"
+ if bChartCalcDelta:
+ szChartAddArgs += " --chartscalcdelta"
# Default SVG Format!
if szChartsFormat.find("svg") != -1:
for outFileName in outputFiles:
- iReturn = os.system("./statslog-graph.py " + szChartOptionalArgs + " --input=" + szOutputDir + "/" + outFileName + "")
+ iReturn = os.system("./statslog-graph.py " + szChartAddArgs + " --input=" + szOutputDir + "/" + outFileName + "")
print "Chart SVG generated for '" + outFileName + "': " + str(iReturn)
szHtmlCode += "<figure><embed type=\"image/svg+xml\" src=\"" + outFileName[:-4] + ".svg" + "\" />" + "</figure><br/><br/>"
# Otherwise PNG Output!
else:
for outFileName in outputFiles:
- iReturn = os.system("./statslog-graph.py " + szChartOptionalArgs + " --input=" + szOutputDir + "/" + outFileName + " --convertpng")
+ iReturn = os.system("./statslog-graph.py " + szChartAddArgs + " --input=" + szOutputDir + "/" + outFileName + " --convertpng")
print "Chart PNG generated for '" + outFileName + "': " + str(iReturn)
szHtmlCode += "<img src=\"" + outFileName[:-4] + ".png" + "\" width=\"800\" height=\"600\"/>" + "<br/><br/>"