Skip to content

Commit d080d6a

Browse files
authored
Metrics advisor rename changes (Azure#18769)
1 parent 4ed026f commit d080d6a

19 files changed

+174
-109
lines changed

sdk/metricsadvisor/azure-ai-metricsadvisor/CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
## 1.0.0-beta.3 (Unreleased)
44
- Support Azure Active Directory (AAD) authentication for Metrics Advisor clients.
5+
- Renamed method `listDimensionValuesWithAnomalies` and `ListDimensionValuesWithAnomaliesOptions`
6+
to `listAnomalyDimensionValues` and `ListAnomalyDimensionValuesOptions` respectively.
7+
- Updated `DataFeed.metricIds` to return a `Map<metricName, metricId>`
58

69
## 1.0.0-beta.2 (2020-11-10)
710

sdk/metricsadvisor/azure-ai-metricsadvisor/README.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ A notification hook is the entry point that allows the users to subscribe to rea
121121

122122
#### Add a data feed from a sample or data source
123123
This example ingests the user specified `SQLServerDataFeedSource` data feed source data to the service.
124-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L85-L121 -->
124+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L85-L122 -->
125125
```java
126126
DataFeed dataFeed = new DataFeed()
127127
.setName("dataFeedName")
@@ -153,7 +153,8 @@ System.out.printf("Data feed granularity type : %s%n",
153153
System.out.printf("Data feed granularity value : %d%n",
154154
createdSqlDataFeed.getGranularity().getCustomGranularityValue());
155155
System.out.println("Data feed related metric Ids:");
156-
createdSqlDataFeed.getMetricIds().forEach(System.out::println);
156+
dataFeed.getMetricIds().forEach((metricId, metricName)
157+
-> System.out.printf("Metric Id : %s, Metric Name: %s%n", metricId, metricName));
157158
System.out.printf("Data feed source type: %s%n", createdSqlDataFeed.getSourceType());
158159

159160
if (SQL_SERVER_DB == createdSqlDataFeed.getSourceType()) {
@@ -164,7 +165,7 @@ if (SQL_SERVER_DB == createdSqlDataFeed.getSourceType()) {
164165
#### Check ingestion status
165166
This example checks the ingestion status of a previously provided data feed source.
166167

167-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L128-L139 -->
168+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L129-L140 -->
168169
```java
169170
String dataFeedId = "3d48er30-6e6e-4391-b78f-b00dfee1e6f5";
170171

@@ -183,7 +184,7 @@ metricsAdvisorAdminClient.listDataFeedIngestionStatus(
183184
#### Configure anomaly detection configuration
184185
This example demonstrates how a user can configure an anomaly detection configuration for their data.
185186

186-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L146-L176 -->
187+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L147-L177 -->
187188
```java
188189
String metricId = "3d48er30-6e6e-4391-b78f-b00dfee1e6f5";
189190

@@ -220,7 +221,7 @@ final AnomalyDetectionConfiguration anomalyDetectionConfiguration =
220221

221222
### Add hooks for receiving anomaly alerts
222223
This example creates an email hook that receives anomaly incident alerts.
223-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L183-L195 -->
224+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L184-L196 -->
224225
```java
225226
NotificationHook emailNotificationHook = new EmailNotificationHook("email Hook")
226227
.setDescription("my email Hook")
@@ -240,7 +241,7 @@ System.out.printf("Email Hook emails to alert: %s%n",
240241
#### Configure an anomaly alert configuration
241242
This example demonstrates how a user can configure an alerting configuration for detected anomalies in their data.
242243

243-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L202-L222 -->
244+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L203-L223 -->
244245
```java
245246
String detectionConfigurationId1 = "9ol48er30-6e6e-4391-b78f-b00dfee1e6f5";
246247
String detectionConfigurationId2 = "3e58er30-6e6e-4391-b78f-b00dfee1e6f5";
@@ -298,7 +299,7 @@ Metrics Advisor clients raises `HttpResponseException` [exceptions][http_respons
298299
to provide a non existing feedback Id an `HttpResponseException` would be raised with an error indicating the failure cause.
299300
In the following code snippet, the error is handled
300301
gracefully by catching the exception and display the additional information about the error.
301-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L256-L260 -->
302+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L257-L261 -->
302303
```java
303304
try {
304305
metricsAdvisorClient.getFeedback("non_existing_feedback_id");
@@ -323,7 +324,7 @@ For more details see the [samples README][samples_readme].
323324
#### Async APIs
324325
All the examples shown so far have been using synchronous APIs, but we provide full support for async APIs as well.
325326
You'll need to use `MetricsAdvisorAsyncClient`
326-
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L267-L271 -->
327+
<!-- embedme ./src/samples/java/com/azure/ai/metricsadvisor/ReadmeSamples.java#L268-L272 -->
327328
```java
328329
MetricsAdvisorKeyCredential credential = new MetricsAdvisorKeyCredential("subscription_key", "api_key");
329330
MetricsAdvisorAsyncClient metricsAdvisorAsyncClient = new MetricsAdvisorClientBuilder()

sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/MetricsAdvisorAsyncClient.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
import com.azure.ai.metricsadvisor.models.ListAlertOptions;
4747
import com.azure.ai.metricsadvisor.models.ListAnomaliesAlertedOptions;
4848
import com.azure.ai.metricsadvisor.models.ListAnomaliesDetectedOptions;
49-
import com.azure.ai.metricsadvisor.models.ListDimensionValuesWithAnomaliesOptions;
49+
import com.azure.ai.metricsadvisor.models.ListAnomalyDimensionValuesOptions;
5050
import com.azure.ai.metricsadvisor.models.ListIncidentsAlertedOptions;
5151
import com.azure.ai.metricsadvisor.models.ListIncidentsDetectedOptions;
5252
import com.azure.ai.metricsadvisor.models.ListMetricDimensionValuesOptions;
@@ -870,10 +870,10 @@ private Mono<PagedResponse<IncidentRootCause>> listIncidentRootCausesInternal(An
870870
}
871871

872872
/**
873-
* Fetch the values of a dimension that have anomalies.
873+
* Fetch dimension values that have anomalies.
874874
*
875875
* <p><strong>Code sample</strong></p>
876-
* {@codesnippet com.azure.ai.metricsadvisor.MetricsAdvisorAsyncClient.listDimensionValuesWithAnomalies#String-String-OffsetDateTime-OffsetDateTime-ListDimensionValuesWithAnomaliesOptions}
876+
* {@codesnippet com.azure.ai.metricsadvisor.MetricsAdvisorAsyncClient.listAnomalyDimensionValues#String-String-OffsetDateTime-OffsetDateTime-ListAnomalyDimensionValuesOptions}
877877
*
878878
* @param detectionConfigurationId Identifies the configuration used to detect the anomalies.
879879
* @param dimensionName The dimension name to retrieve the values for.
@@ -887,21 +887,21 @@ private Mono<PagedResponse<IncidentRootCause>> listIncidentRootCausesInternal(An
887887
* or {@code options} or {@code startTime} or {@code endTime} is null.
888888
*/
889889
@ServiceMethod(returns = ReturnType.COLLECTION)
890-
public PagedFlux<String> listDimensionValuesWithAnomalies(
890+
public PagedFlux<String> listAnomalyDimensionValues(
891891
String detectionConfigurationId,
892892
String dimensionName,
893-
OffsetDateTime startTime, OffsetDateTime endTime, ListDimensionValuesWithAnomaliesOptions options) {
893+
OffsetDateTime startTime, OffsetDateTime endTime, ListAnomalyDimensionValuesOptions options) {
894894
try {
895895
return new PagedFlux<>(() ->
896896
withContext(context ->
897-
listDimensionValuesWithAnomaliesSinglePageAsync(detectionConfigurationId,
897+
listAnomalyDimensionValuesSinglePageAsync(detectionConfigurationId,
898898
dimensionName,
899899
startTime,
900900
endTime,
901901
options,
902902
context)),
903903
continuationToken ->
904-
withContext(context -> listDimensionValuesWithAnomaliesNextPageAsync(continuationToken,
904+
withContext(context -> listAnomalyDimensionValuesNextPageAsync(continuationToken,
905905
dimensionName,
906906
startTime,
907907
endTime,
@@ -912,31 +912,31 @@ public PagedFlux<String> listDimensionValuesWithAnomalies(
912912
}
913913
}
914914

915-
PagedFlux<String> listDimensionValuesWithAnomalies(
915+
PagedFlux<String> listAnomalyDimensionValues(
916916
String detectionConfigurationId,
917917
String dimensionName,
918-
OffsetDateTime startTime, OffsetDateTime endTime, ListDimensionValuesWithAnomaliesOptions options,
918+
OffsetDateTime startTime, OffsetDateTime endTime, ListAnomalyDimensionValuesOptions options,
919919
Context context) {
920920
return new PagedFlux<>(() ->
921-
listDimensionValuesWithAnomaliesSinglePageAsync(detectionConfigurationId,
921+
listAnomalyDimensionValuesSinglePageAsync(detectionConfigurationId,
922922
dimensionName,
923923
startTime,
924924
endTime,
925925
options,
926926
context),
927927
continuationToken ->
928-
listDimensionValuesWithAnomaliesNextPageAsync(continuationToken,
928+
listAnomalyDimensionValuesNextPageAsync(continuationToken,
929929
dimensionName,
930930
startTime,
931931
endTime,
932932
options,
933933
context));
934934
}
935935

936-
private Mono<PagedResponse<String>> listDimensionValuesWithAnomaliesSinglePageAsync(
936+
private Mono<PagedResponse<String>> listAnomalyDimensionValuesSinglePageAsync(
937937
String detectionConfigurationId,
938938
String dimensionName,
939-
OffsetDateTime startTime, OffsetDateTime endTime, ListDimensionValuesWithAnomaliesOptions options,
939+
OffsetDateTime startTime, OffsetDateTime endTime, ListAnomalyDimensionValuesOptions options,
940940
Context context) {
941941
Objects.requireNonNull(detectionConfigurationId, "'detectionConfigurationId' is required.");
942942
Objects.requireNonNull(dimensionName, "'dimensionName' is required.");
@@ -948,7 +948,7 @@ private Mono<PagedResponse<String>> listDimensionValuesWithAnomaliesSinglePageAs
948948
query.setStartTime(startTime);
949949
query.setEndTime(endTime);
950950
if (options == null) {
951-
options = new ListDimensionValuesWithAnomaliesOptions();
951+
options = new ListAnomalyDimensionValuesOptions();
952952
}
953953
if (options.getDimensionToFilter() != null) {
954954
query.setDimensionFilter(new DimensionGroupIdentity()
@@ -967,10 +967,10 @@ private Mono<PagedResponse<String>> listDimensionValuesWithAnomaliesSinglePageAs
967967
.doOnError(error -> logger.warning("Failed to list the dimension values with anomalies", error));
968968
}
969969

970-
private Mono<PagedResponse<String>> listDimensionValuesWithAnomaliesNextPageAsync(
970+
private Mono<PagedResponse<String>> listAnomalyDimensionValuesNextPageAsync(
971971
String nextPageLink,
972972
String dimensionName,
973-
OffsetDateTime startTime, OffsetDateTime endTime, ListDimensionValuesWithAnomaliesOptions options,
973+
OffsetDateTime startTime, OffsetDateTime endTime, ListAnomalyDimensionValuesOptions options,
974974
Context context) {
975975
if (CoreUtils.isNullOrEmpty(nextPageLink)) {
976976
return Mono.empty();

sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/MetricsAdvisorClient.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import com.azure.ai.metricsadvisor.models.ListMetricEnrichmentStatusOptions;
2121
import com.azure.ai.metricsadvisor.models.ListMetricFeedbackOptions;
2222
import com.azure.ai.metricsadvisor.models.ListMetricSeriesDefinitionOptions;
23-
import com.azure.ai.metricsadvisor.models.ListDimensionValuesWithAnomaliesOptions;
23+
import com.azure.ai.metricsadvisor.models.ListAnomalyDimensionValuesOptions;
2424
import com.azure.ai.metricsadvisor.models.MetricEnrichedSeriesData;
2525
import com.azure.ai.metricsadvisor.models.MetricFeedback;
2626
import com.azure.ai.metricsadvisor.models.MetricSeriesData;
@@ -428,10 +428,10 @@ public PagedIterable<IncidentRootCause> listIncidentRootCauses(AnomalyIncident a
428428
}
429429

430430
/**
431-
* Fetch the values of a dimension that have anomalies.
431+
* Fetch dimension values that have anomalies.
432432
*
433433
* <p><strong>Code sample</strong></p>
434-
* {@codesnippet com.azure.ai.metricsadvisor.MetricsAdvisorClient.listDimensionValuesWithAnomalies#String-String-OffsetDateTime-OffsetDateTime}
434+
* {@codesnippet com.azure.ai.metricsadvisor.MetricsAdvisorClient.listAnomalyDimensionValues#String-String-OffsetDateTime-OffsetDateTime}
435435
*
436436
* @param detectionConfigurationId Identifies the configuration used to detect the anomalies.
437437
* @param dimensionName The dimension name to retrieve the values for.
@@ -444,18 +444,18 @@ public PagedIterable<IncidentRootCause> listIncidentRootCauses(AnomalyIncident a
444444
* or {@code startTime} or {@code endTime} is null.
445445
*/
446446
@ServiceMethod(returns = ReturnType.COLLECTION)
447-
public PagedIterable<String> listDimensionValuesWithAnomalies(
447+
public PagedIterable<String> listAnomalyDimensionValues(
448448
String detectionConfigurationId,
449449
String dimensionName, OffsetDateTime startTime, OffsetDateTime endTime) {
450-
return listDimensionValuesWithAnomalies(detectionConfigurationId,
450+
return listAnomalyDimensionValues(detectionConfigurationId,
451451
dimensionName, startTime, endTime, null, Context.NONE);
452452
}
453453

454454
/**
455-
* Fetch the values of a dimension that have anomalies.
455+
* Fetch dimension values that have anomalies.
456456
*
457457
* <p><strong>Code sample</strong></p>
458-
* {@codesnippet com.azure.ai.metricsadvisor.MetricsAdvisorClient.listDimensionValuesWithAnomalies#String-String-OffsetDateTime-OffsetDateTime-ListDimensionValuesWithAnomaliesOptions-Context}
458+
* {@codesnippet com.azure.ai.metricsadvisor.MetricsAdvisorClient.listAnomalyDimensionValues#String-String-OffsetDateTime-OffsetDateTime-ListAnomalyDimensionValuesOptions-Context}
459459
*
460460
* @param detectionConfigurationId Identifies the configuration used to detect the anomalies.
461461
* @param dimensionName The dimension name to retrieve the values for.
@@ -471,12 +471,12 @@ public PagedIterable<String> listDimensionValuesWithAnomalies(
471471
* or {@code startTime} or {@code endTime} is null.
472472
*/
473473
@ServiceMethod(returns = ReturnType.COLLECTION)
474-
public PagedIterable<String> listDimensionValuesWithAnomalies(
474+
public PagedIterable<String> listAnomalyDimensionValues(
475475
String detectionConfigurationId,
476476
String dimensionName,
477477
OffsetDateTime startTime, OffsetDateTime endTime,
478-
ListDimensionValuesWithAnomaliesOptions options, Context context) {
479-
return new PagedIterable<>(client.listDimensionValuesWithAnomalies(detectionConfigurationId,
478+
ListAnomalyDimensionValuesOptions options, Context context) {
479+
return new PagedIterable<>(client.listAnomalyDimensionValues(detectionConfigurationId,
480480
dimensionName, startTime, endTime, options, context == null ? Context.NONE : context));
481481
}
482482

sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/implementation/util/DataFeedHelper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import com.azure.ai.metricsadvisor.models.DataFeedStatus;
99

1010
import java.time.OffsetDateTime;
11-
import java.util.List;
11+
import java.util.Map;
1212

1313
/**
1414
* The helper class to set the non-public properties of an {@link DataFeed} instance.
@@ -23,7 +23,7 @@ private DataFeedHelper() { }
2323
*/
2424
public interface DataFeedAccessor {
2525
void setId(DataFeed feed, String id);
26-
void setMetricIds(DataFeed feed, List<String> metricIds);
26+
void setMetricIds(DataFeed feed, Map<String, String> metricIds);
2727
void setCreatedTime(DataFeed feed, OffsetDateTime createdTime);
2828
void setStatus(DataFeed feed, DataFeedStatus dataFeedStatus);
2929
void setSourceType(DataFeed feed, DataFeedSourceType dataFeedSourceType);
@@ -44,7 +44,7 @@ static void setId(DataFeed feed, String id) {
4444
accessor.setId(feed, id);
4545
}
4646

47-
static void setMetricIds(DataFeed feed, List<String> metricIds) {
47+
static void setMetricIds(DataFeed feed, Map<String, String> metricIds) {
4848
accessor.setMetricIds(feed, metricIds);
4949
}
5050

sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/implementation/util/DataFeedTransforms.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,8 @@ public static DataFeed fromInner(final DataFeedDetail dataFeedDetail) {
128128
DataFeedHelper.setCreator(dataFeed, dataFeedDetail.getCreator());
129129
DataFeedHelper.setStatus(dataFeed, DataFeedStatus.fromString(dataFeedDetail.getStatus().toString()));
130130
DataFeedHelper.setMetricIds(dataFeed,
131-
dataFeedDetail.getMetrics().stream().map(DataFeedMetric::getId).collect(Collectors.toList()));
131+
dataFeedDetail.getMetrics().stream()
132+
.collect(Collectors.toMap(DataFeedMetric::getId, DataFeedMetric::getName)));
132133
return dataFeed;
133134
}
134135

sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/models/DataFeed.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@
77
import com.azure.core.annotation.Fluent;
88

99
import java.time.OffsetDateTime;
10-
import java.util.List;
10+
import java.util.Map;
1111

1212
/**
1313
* The Data feed metadata model.
1414
*/
1515
@Fluent
1616
public final class DataFeed {
1717
private String id;
18-
private List<String> metricIds;
18+
private Map<String, String> metricIds;
1919
private OffsetDateTime createdTime;
2020
private DataFeedStatus dataFeedStatus;
2121
private DataFeedSourceType dataFeedSourceType;
@@ -36,7 +36,7 @@ public void setId(DataFeed feed, String id) {
3636
}
3737

3838
@Override
39-
public void setMetricIds(DataFeed feed, List<String> metricIds) {
39+
public void setMetricIds(DataFeed feed, Map<String, String> metricIds) {
4040
feed.setMetricIds(metricIds);
4141
}
4242

@@ -82,7 +82,7 @@ public String getId() {
8282
*
8383
* @return the metricIds value.
8484
*/
85-
public List<String> getMetricIds() {
85+
public Map<String, String> getMetricIds() {
8686
return this.metricIds;
8787
}
8888

@@ -263,7 +263,7 @@ void setId(String id) {
263263
this.id = id;
264264
}
265265

266-
void setMetricIds(List<String> metricIds) {
266+
void setMetricIds(Map<String, String> metricIds) {
267267
this.metricIds = metricIds;
268268
}
269269

sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/models/ListDimensionValuesWithAnomaliesOptions.java renamed to sdk/metricsadvisor/azure-ai-metricsadvisor/src/main/java/com/azure/ai/metricsadvisor/models/ListAnomalyDimensionValuesOptions.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/**
77
* Describes the additional parameters for the API to list values of a dimension that have anomalies.
88
*/
9-
public final class ListDimensionValuesWithAnomaliesOptions {
9+
public final class ListAnomalyDimensionValuesOptions {
1010
private Integer top;
1111
private Integer skip;
1212
private DimensionKey dimensionToFilter;
@@ -45,7 +45,7 @@ public DimensionKey getDimensionToFilter() {
4545
* @param top The top value.
4646
* @return The ListDimensionValuesWithAnomaliesOptions object itself.
4747
*/
48-
public ListDimensionValuesWithAnomaliesOptions setTop(int top) {
48+
public ListAnomalyDimensionValuesOptions setTop(int top) {
4949
this.top = top;
5050
return this;
5151
}
@@ -57,7 +57,7 @@ public ListDimensionValuesWithAnomaliesOptions setTop(int top) {
5757
* @param skip The skip value.
5858
* @return ListDimensionValuesWithAnomaliesOptions object itself.
5959
*/
60-
public ListDimensionValuesWithAnomaliesOptions setSkip(int skip) {
60+
public ListAnomalyDimensionValuesOptions setSkip(int skip) {
6161
this.skip = skip;
6262
return this;
6363
}
@@ -75,7 +75,7 @@ public ListDimensionValuesWithAnomaliesOptions setSkip(int skip) {
7575
*
7676
* @return ListDimensionValuesWithAnomaliesOptions object itself.
7777
*/
78-
public ListDimensionValuesWithAnomaliesOptions setDimensionToFilter(DimensionKey dimensionToFilter) {
78+
public ListAnomalyDimensionValuesOptions setDimensionToFilter(DimensionKey dimensionToFilter) {
7979
this.dimensionToFilter = dimensionToFilter;
8080
return this;
8181
}

0 commit comments

Comments
 (0)