diff --git a/analyze/threesigma.go b/analyze/threesigma.go index fde4b6f..bf438cd 100644 --- a/analyze/threesigma.go +++ b/analyze/threesigma.go @@ -46,6 +46,7 @@ func (t *ThreeSigma) Run() { MetricName: fmt.Sprintf("anode.threesig.%s.anomalous", d.MetricName), Timestamp: d.Timestamp, Value: ma, + IsAnamoly: true, } } @@ -54,6 +55,7 @@ func (t *ThreeSigma) Run() { MetricName: fmt.Sprintf("anode.threesig.%s.mean", d.MetricName), Timestamp: d.Timestamp, Value: mean, + IsAnamoly: false, } // Output mean +/- 3 standard deviations. @@ -61,11 +63,13 @@ func (t *ThreeSigma) Run() { MetricName: fmt.Sprintf("anode.threesig.%s.upper", d.MetricName), Timestamp: d.Timestamp, Value: t.stats.Mean() + 3*stddev, + IsAnamoly: false, } t.output <- data.Datapoint{ MetricName: fmt.Sprintf("anode.threesig.%s.lower", d.MetricName), Timestamp: d.Timestamp, Value: t.stats.Mean() - 3*stddev, + IsAnamoly: false, } } } diff --git a/data/data.go b/data/data.go index d19915e..ef8f8d0 100644 --- a/data/data.go +++ b/data/data.go @@ -4,4 +4,5 @@ type Datapoint struct { MetricName string Timestamp int64 Value float64 + IsAnomaly bool }