Skip to content
Snippets Groups Projects
Commit 03fb239c authored by Sören Henning's avatar Sören Henning
Browse files

Add basic support for floating point values

parent 689573aa
Branches
Tags
1 merge request!286Support floating point values in SLO evaluation
Pipeline #8637 failed
......@@ -37,7 +37,7 @@ def aggr_query(values: dict, warmup: int, aggr_func):
df = pd.DataFrame.from_dict(values)
df.columns = ['timestamp', 'value']
filtered = df[df['timestamp'] >= (df['timestamp'][0] + warmup)]
filtered['value'] = filtered['value'].astype(float).astype(int)
filtered['value'] = filtered['value'].astype(float)
return filtered['value'].aggregate(aggr_func)
def check_result(result, operator: str, threshold):
......@@ -63,7 +63,7 @@ async def check_slo(request: Request):
query_aggregation = get_aggr_func(data['metadata']['queryAggregation'])
rep_aggregation = get_aggr_func(data['metadata']['repetitionAggregation'])
operator = data['metadata']['operator']
threshold = int(data['metadata']['threshold'])
threshold = float(data['metadata']['threshold'])
query_results = [aggr_query(r[0]["values"], warmup, query_aggregation) for r in data["results"]]
result = pd.DataFrame(query_results).aggregate(rep_aggregation).at[0]
......
......@@ -27,7 +27,7 @@ def calculate_slope_trend(results, warmup):
group = result['metric'].get('consumergroup', "default")
for value in result['values']:
d.append({'group': group, 'timestamp': int(
value[0]), 'value': int(value[1]) if value[1] != 'NaN' else 0})
value[0]), 'value': float(value[1]) if value[1] != 'NaN' else 0})
df = pd.DataFrame(d)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment