Skip to content

Commit f87d8f2

Browse files
authored
Merge pull request #182 from intel/printgranularity
fix bug where higher granularity metrics are not properly printed
2 parents 7951652 + 9e198dd commit f87d8f2

File tree

1 file changed

+15
-16
lines changed

1 file changed

+15
-16
lines changed

cmd/metrics/print.go

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@ import (
1313
"time"
1414
)
1515

16-
func printMetricsJSON(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (filename string, err error) {
16+
func printMetricsJSON(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (outputFilename string, err error) {
1717
if !printToStdout && !printToFile {
1818
return
1919
}
20+
filename := outputDir + "/" + targetName + "_" + "metrics.json"
2021
for _, metricFrame := range metricFrames {
2122
// can't Marshal NaN or Inf values in JSON, so no need to set them to a specific value
2223
filteredMetricFrame := metricFrame
@@ -38,7 +39,7 @@ func printMetricsJSON(metricFrames []MetricFrame, targetName string, printToStdo
3839
}
3940
if printToFile {
4041
var file *os.File
41-
file, err = os.OpenFile(outputDir+"/"+targetName+"_"+"metrics.json", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
42+
file, err = os.OpenFile(filename, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
4243
if err != nil {
4344
return
4445
}
@@ -47,21 +48,21 @@ func printMetricsJSON(metricFrames []MetricFrame, targetName string, printToStdo
4748
if err != nil {
4849
return
4950
}
50-
filename = file.Name()
51-
return // success
5251
}
5352
}
53+
outputFilename = filename
5454
return
5555
}
5656

57-
func printMetricsCSV(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (filename string, err error) {
57+
func printMetricsCSV(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (outputFilename string, err error) {
5858
if !printToStdout && !printToFile {
5959
return
6060
}
61+
filename := outputDir + "/" + targetName + "_" + "metrics.csv"
6162
var file *os.File
6263
if printToFile {
6364
// open file for writing/appending
64-
file, err = os.OpenFile(outputDir+"/"+targetName+"_"+"metrics.csv", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
65+
file, err = os.OpenFile(filename, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
6566
if err != nil {
6667
return
6768
}
@@ -108,21 +109,21 @@ func printMetricsCSV(metricFrames []MetricFrame, targetName string, printToStdou
108109
if err != nil {
109110
return
110111
}
111-
filename = file.Name()
112-
return // success
113112
}
114113
}
115-
return "", nil
114+
outputFilename = filename
115+
return
116116
}
117117

118-
func printMetricsWide(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (filename string, err error) {
118+
func printMetricsWide(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (outputFilename string, err error) {
119119
if !printToStdout && !printToFile {
120120
return
121121
}
122+
filename := outputDir + "/" + targetName + "_" + "metrics_wide.txt"
122123
var file *os.File
123124
if printToFile {
124125
// open file for writing/appending
125-
file, err = os.OpenFile(outputDir+"/"+targetName+"_"+"metrics_wide.txt", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
126+
file, err = os.OpenFile(filename, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
126127
if err != nil {
127128
return
128129
}
@@ -207,14 +208,13 @@ func printMetricsWide(metricFrames []MetricFrame, targetName string, printToStdo
207208
if err != nil {
208209
return
209210
}
210-
filename = file.Name()
211-
return // success
212211
}
213212
}
213+
outputFilename = filename
214214
return
215215
}
216216

217-
func printMetricsTxt(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (filename string, err error) {
217+
func printMetricsTxt(metricFrames []MetricFrame, targetName string, printToStdout bool, printToFile bool, outputDir string) (outputFilename string, err error) {
218218
if !printToStdout && !printToFile {
219219
return
220220
}
@@ -278,8 +278,7 @@ func printMetricsTxt(metricFrames []MetricFrame, targetName string, printToStdou
278278
if err != nil {
279279
return
280280
}
281-
filename = file.Name()
282-
return // success
281+
outputFilename = file.Name()
283282
}
284283
return
285284
}

0 commit comments

Comments
 (0)