Skip to content

Commit a53ea42

Browse files
authored
Merge pull request #306 from Sanketika-Obsrv/dataset-metrics-fix
fix: #OBS-I354 dataset level alert metric caching issue fix
2 parents ad844b9 + 2f68441 commit a53ea42

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

api-service/src/configs/IngestionConfig.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,12 @@ export const rawIngestionSpecDefaults = {
8484
"flattenSpec": [
8585
{
8686
"type": "path",
87-
"expr": "$.obsrv_meta.source.connector",
87+
"expr": "$.obsrv_meta.source.entry_source",
8888
"name": "obsrv.meta.source.connector"
8989
},
9090
{
9191
"type": "path",
92-
"expr": "$.obsrv_meta.source.connectorInstance",
92+
"expr": "$.obsrv_meta.source.id",
9393
"name": "obsrv.meta.source.id"
9494
}
9595
],

api-service/src/services/TableGenerator.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ class BaseTableGenerator {
6666
}
6767
if (!_.isEmpty(transformations_config)) {
6868
const transformationFields = _.map(transformations_config, (tf) => ({
69-
expr: "$." + `['${tf.field_key}']`,
69+
expr: "$." + tf.field_key.split('.').map((fieldpart: string) => `['${fieldpart}']`).join('.'),
7070
name: tf.field_key,
7171
data_type: tf.transformation_function.datatype,
7272
arrival_format: tf.transformation_function.datatype,

command-service/src/command/alert_manager_command.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from model.data_models import Action, ActionResponse, CommandPayload
66
from service.db_service import DatabaseService
77
from service.http_service import HttpService
8-
8+
from copy import deepcopy
99

1010
class AlertManagerService(ICommand):
1111

@@ -95,17 +95,18 @@ def get_dataset_source_config(self, dataset_id: str) -> str:
9595
def get_modified_metric(
9696
self, service: str, metric: dict, payload: CommandPayload
9797
) -> dict:
98+
metric_data = deepcopy(metric)
9899
if service == "flink":
99100
substring = f"{payload.dataset_id}"
100101
modified_substring = substring.replace("-", "_")
101-
modified_metric = metric["metric"].replace("dataset_id", modified_substring)
102-
metric["metric"] = modified_metric
103-
return metric
102+
modified_metric = metric_data["metric"].replace("dataset_id", modified_substring)
103+
metric_data["metric"] = modified_metric
104+
return metric_data
104105
else:
105-
metric["metric"] = metric["metric"].replace(
106+
metric_data["metric"] = metric_data["metric"].replace(
106107
"dataset_id", payload.dataset_id
107108
)
108-
return metric
109+
return metric_data
109110

110111
def create_alert_metric(
111112
self, payload: CommandPayload, service: str, metric: dict, dataset_name: str

0 commit comments

Comments
 (0)