# Constants for Column and Field Names ALERT_VALUE = 'alert_value' PART_OR_WHOLE = 'part_or_whole' DRIFT_TYPE = 'drift_type' PERCENT_DRIFT = 'percent_drift' START_TIME = 'start_time' END_TIME = 'end_time' THRESHOLD_TIME = 'threshold_time' KPI_ID = 'itsi_kpi_id' SERVICE_ID = 'itsi_service_id' DRIFT_DETECTION_RESULTS_COLLECTION = 'drift_detection_results' DRIFT_TIME_WINDOWS = 'drift_time_windows' IS_DRIFT_DETECTED = 'is_drift_detected' END_TIMESTAMP = "end_timestamp" LAST_DRIFT_AT = "last_drift_at" # HTTP error messages MISSING_KPI_ID = "Missing kpi_id." METHOD_NOT_ALLOWED = "Method not allowed." PATH_INFO = "path_info" USER = "_user" KVSTORE_KEY = "_key" START_TIME_MISSING_MSG = f"{START_TIME} is missing from the query parameters" START_TIME_INVALID_FORMAT_MSG = f"{START_TIME} is not in a valid epoch format" END_TIME_INVALID_FORMAT_MSG = f"{END_TIME} is not in a valid epoch format" START_TIME_GREATER_THAN_END_TIME_MSG = f"{START_TIME} can't be greater than {END_TIME}" # ITSI Base Endpoint URI ITSI_APP_NAME = 'SA-ITOA' ITSI_APP_OWNER = 'nobody' ITSI_BASE_URI = "itoa_interface" # Specific ITSI Endpoint URIs ITSI_DRIFT_DETECTION_KPIS_URI = f"{ITSI_BASE_URI}/get_drift_kpis" ITSI_DRIFT_DETECTION_TEMPLATE_URI = f"{ITSI_BASE_URI}/drift_detection_template" # Template Info Keys LOOKBACK_PERIOD = "lookback_period" AGGREGATION_SPAN = "aggregation_span" AGGREGATION_FUNCTION = "aggregation_function" TOLERANCE_IN_PERCENT = "tolerance_in_percent" THRESHOLD_DIRECTION = "threshold_direction" DRIFT_DETECTION_TEMPLATE_ID = "drift_detection_template_id"