Skip to content

Commit dc03344

Browse files
[metrics advisor] Added mapping for metric name to metric id (Azure#13408)
* added mapping type for metric name to metric id * Mapping * update review file and test * update review file and test * recordings updated * include Jeremy's suggestions * added recordings * mapping metric * not undfined id * update review file * Update sdk/metricsadvisor/ai-metrics-advisor/recordings/node/aad_metricsadvisoradministrationclient_datafeed_datafeed/recording_creates_an_azure_blob_datafeed.js
1 parent f68f3fe commit dc03344

File tree

4 files changed

+11
-1
lines changed

4 files changed

+11
-1
lines changed

sdk/metricsadvisor/ai-metrics-advisor/review/ai-metrics-advisor.api.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,7 @@ export type DataFeed = {
204204
creator: string;
205205
source: DataFeedSource;
206206
schema: DataFeedSchema;
207+
metricIds: Map<string, string>;
207208
granularity: DataFeedGranularity;
208209
ingestionSettings: DataFeedIngestionSettings;
209210
} & DataFeedOptions;

sdk/metricsadvisor/ai-metrics-advisor/src/models.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -307,6 +307,10 @@ export type DataFeed = {
307307
* Schema of the data in the data feed, including names of metrics, dimensions, and timestamp columns.
308308
*/
309309
schema: DataFeedSchema;
310+
/**
311+
* Map of metric names to metric ids for quick lookup
312+
*/
313+
metricIds: Map<string, string>;
310314
/**
311315
* Granularity of the data feed.
312316
*/

sdk/metricsadvisor/ai-metrics-advisor/src/transforms.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -339,10 +339,11 @@ export function toServiceGranularity(
339339
}
340340

341341
export function fromServiceDataFeedDetailUnion(original: ServiceDataFeedDetailUnion): DataFeed {
342+
const metricMap = new Map(original.metrics.map((x) => [x.name, x.id!]));
342343
const common = {
343344
id: original.dataFeedId!,
344345
name: original.dataFeedName,
345-
metricIds: original.metrics.map((c) => c.id!),
346+
metricIds: metricMap,
346347
createdOn: original.createdTime!,
347348
status: original.status!,
348349
isAdmin: original.isAdmin!,

sdk/metricsadvisor/ai-metrics-advisor/test/public/datafeed.spec.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,10 @@ matrix([[true, false]] as const, async (useAad) => {
185185
dataFeedIngestion,
186186
"Ingesting settings mismatch!"
187187
);
188+
assert.equal(
189+
actual.metricIds.get(dataFeedSchema.metrics[0].name),
190+
actual.schema.metrics[0].id
191+
);
188192

189193
assert.equal(actual.description, options.description, "options.description mismatch");
190194
assert.equal(actual.accessMode, options.accessMode, "options.accessMode mismatch");

0 commit comments

Comments
 (0)