blob: 125da345e6c28456aa23531231cb5f1444c578ce [file] [log] [blame]
package org.apache.ambari.metrics.adservice.subsystem.trend
import org.apache.ambari.metrics.adservice.common.{Season, TimeRange}
import org.apache.ambari.metrics.adservice.metadata.MetricKey
import org.apache.ambari.metrics.adservice.model.AnomalyDetectionMethod.AnomalyDetectionMethod
import org.apache.ambari.metrics.adservice.model.AnomalyType.AnomalyType
import org.apache.ambari.metrics.adservice.model.{AnomalyType, SingleMetricAnomalyInstance}
case class TrendAnomalyInstance (metricKey: MetricKey,
anomalousPeriod: TimeRange,
referencePeriod: TimeRange,
methodType: AnomalyDetectionMethod,
anomalyScore: Double,
seasonInfo: Season,
modelParameters: String) extends SingleMetricAnomalyInstance {
override val anomalyType: AnomalyType = AnomalyType.POINT_IN_TIME
private def anomalyToString : String = {
"Method=" + methodType + ", AnomalyScore=" + anomalyScore + ", Season=" + anomalousPeriod.toString +
", Model Parameters=" + modelParameters
}
@Override
override def toString: String = {
"Metric : [" + metricKey.toString + ", AnomalousPeriod=" + anomalousPeriod + ", ReferencePeriod=" + referencePeriod +
"], Anomaly : [" + anomalyToString + "]"
}
}