diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorAdministrationClient.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorAdministrationClient.cs
index 8fa0c92f1bf56..903aef785de64 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorAdministrationClient.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorAdministrationClient.cs
@@ -472,12 +472,14 @@ public virtual Response DeleteDataFeed(string dataFeedId, CancellationToken canc
}
}
- // TODODOCS
///
+ /// Gets the ingestion progress for data being ingested to a given data feed.
///
- ///
- ///
- ///
+ /// The unique identifier of the .
+ /// A controlling the request lifetime.
+ ///
+ /// A containing the result of the operation. The result is a instance.
+ ///
public virtual async Task> GetDataFeedIngestionProgressAsync(string dataFeedId, CancellationToken cancellationToken = default)
{
Guid dataFeedGuid = ClientCommon.ValidateGuid(dataFeedId, nameof(dataFeedId));
@@ -495,12 +497,14 @@ public virtual async Task> GetDataFeedIngest
}
}
- // TODODOCS.
///
+ /// Gets the ingestion progress for data being ingested to a given data feed.
///
- ///
- ///
- ///
+ /// The unique identifier of the .
+ /// A controlling the request lifetime.
+ ///
+ /// A containing the result of the operation. The result is a instance.
+ ///
public virtual Response GetDataFeedIngestionProgress(string dataFeedId, CancellationToken cancellationToken = default)
{
Guid dataFeedGuid = ClientCommon.ValidateGuid(dataFeedId, nameof(dataFeedId));
@@ -518,14 +522,17 @@ public virtual Response GetDataFeedIngestionProgress(
}
}
- // TODODOCS.
///
+ /// Resets the data ingestion status for a given data feed to back-fill data. This can be useful to fix a failed ingestion or override the existing data.
+ /// Anomaly detection is re-triggered on selected range only.
///
- ///
- ///
- ///
- ///
- ///
+ /// The unique identifier of the .
+ /// The inclusive data back-fill time range.
+ /// The exclusive data back-fill time range.
+ /// A controlling the request lifetime.
+ ///
+ /// A containing the result of the operation.
+ ///
public virtual async Task RefreshDataFeedIngestionAsync(string dataFeedId, DateTimeOffset startTime, DateTimeOffset endTime, CancellationToken cancellationToken = default)
{
Guid dataFeedGuid = ClientCommon.ValidateGuid(dataFeedId, nameof(dataFeedId));
@@ -545,14 +552,17 @@ public virtual async Task RefreshDataFeedIngestionAsync(string dataFee
}
}
- // TODODOCS.
///
+ /// Resets the data ingestion status for a given data feed to back-fill data. This can be useful to fix a failed ingestion or override the existing data.
+ /// Anomaly detection is re-triggered on selected range only.
///
- ///
- ///
- ///
- ///
- ///
+ /// The unique identifier of the .
+ /// The inclusive data back-fill time range.
+ /// The exclusive data back-fill time range.
+ /// A controlling the request lifetime.
+ ///
+ /// A containing the result of the operation.
+ ///
public virtual Response RefreshDataFeedIngestion(string dataFeedId, DateTimeOffset startTime, DateTimeOffset endTime, CancellationToken cancellationToken = default)
{
Guid dataFeedGuid = ClientCommon.ValidateGuid(dataFeedId, nameof(dataFeedId));
@@ -572,9 +582,13 @@ public virtual Response RefreshDataFeedIngestion(string dataFeedId, DateTimeOffs
}
}
- // TODODOCS.
///
+ /// Gets the ingestion status for data being ingested to a given data feed.
///
+ /// The unique identifier of the .
+ /// An optional set of options used to configure the request's behavior.
+ /// A controlling the request lifetime.
+ /// An containing the collection of .
public virtual AsyncPageable GetDataFeedIngestionStatusesAsync(string dataFeedId, GetDataFeedIngestionStatusesOptions options, CancellationToken cancellationToken = default)
{
Guid dataFeedGuid = ClientCommon.ValidateGuid(dataFeedId, nameof(dataFeedId));
@@ -621,9 +635,13 @@ async Task> NextPageFunc(string nextLink, int? pag
return PageableHelpers.CreateAsyncEnumerable(FirstPageFunc, NextPageFunc);
}
- // TODODOCS.
///
+ /// Gets the ingestion status for data being ingested to a given data feed.
///
+ /// The unique identifier of the .
+ /// An optional set of options used to configure the request's behavior.
+ /// A controlling the request lifetime.
+ /// An containing the collection of .
public virtual Pageable GetDataFeedIngestionStatuses(string dataFeedId, GetDataFeedIngestionStatusesOptions options, CancellationToken cancellationToken = default)
{
Guid dataFeedGuid = ClientCommon.ValidateGuid(dataFeedId, nameof(dataFeedId));
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorClient.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorClient.cs
index c072c85d14bff..4106b7fee2f46 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorClient.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/MetricsAdvisorClient.cs
@@ -1013,9 +1013,15 @@ Page NextPageFunc(string nextLink, int? pageSizeHint)
return PageableHelpers.CreateEnumerable(FirstPageFunc, NextPageFunc);
}
- // TODODOCS.
///
+ /// Gets the automatic suggestions for likely root causes of an incident.
///
+ /// The unique identifier of the .
+ /// The unique identifier of the .
+ /// A controlling the request lifetime.
+ /// A collection of s for the specified alert configuration and incident.
+ /// or is null.
+ /// or is empty; or is not a valid GUID.
public virtual async Task>> GetIncidentRootCausesAsync(string detectionConfigurationId, string incidentId, CancellationToken cancellationToken = default)
{
Argument.AssertNotNullOrEmpty(detectionConfigurationId, nameof(detectionConfigurationId));
@@ -1039,7 +1045,14 @@ public virtual async Task>> GetInciden
}
///
+ /// Gets the automatic suggestions for likely root causes of an incident.
///
+ /// The unique identifier of the .
+ /// The unique identifier of the .
+ /// A controlling the request lifetime.
+ /// A collection of s for the specified alert configuration and incident.
+ /// or is null.
+ /// or is empty; or is not a valid GUID.
public virtual Response> GetIncidentRootCauses(string detectionConfigurationId, string incidentId, CancellationToken cancellationToken = default)
{
Argument.AssertNotNullOrEmpty(detectionConfigurationId, nameof(detectionConfigurationId));
@@ -1188,15 +1201,14 @@ Page NextPageFunc(string nextLink, int? pageSizeHint)
// TODODOCS.
///
- /// Gets data about the data points present in the specified set of time series.
- /// .
+ /// Query series enriched by anomaly detection.
///
- /// The name of the dimension.
+ /// The detection series keys.
/// The unique identifier of the .
- /// Filters the result. Only data points ingested after this point in time, in UTC, will be returned.
- /// Filters the result. Only data points ingested after this point in time, in UTC, will be returned.
+ /// Filters the result. Only data points after this point in time, in UTC, will be returned.
+ /// Filters the result. Only data points after this point in time, in UTC, will be returned.
/// A controlling the request lifetime.
- /// A collection containing the values the specified dimension assumed for anomalous data points. Items are unique.
+ /// A collection of .
/// or is null.
/// or is empty; or is not a valid GUID.
public virtual async Task>> GetMetricEnrichedSeriesDataAsync(IEnumerable seriesKeys, string detectionConfigurationId, DateTimeOffset startTime, DateTimeOffset endTime, CancellationToken cancellationToken = default)
@@ -1224,7 +1236,16 @@ public virtual async Task>> Get
}
///
+ /// Query series enriched by anomaly detection.
///
+ /// The deection series keys.
+ /// The unique identifier of the .
+ /// Filters the result. Only data points after this point in time, in UTC, will be returned.
+ /// Filters the result. Only data points after this point in time, in UTC, will be returned.
+ /// A controlling the request lifetime.
+ /// A collection of .
+ /// or is null.
+ /// or is empty; or is not a valid GUID.
public virtual Response> GetMetricEnrichedSeriesData(IEnumerable seriesKeys, string detectionConfigurationId, DateTimeOffset startTime, DateTimeOffset endTime, CancellationToken cancellationToken = default)
{
Argument.AssertNotNullOrEmpty(seriesKeys, nameof(seriesKeys)); // TODO: add validation for seriesKeys.Dimension?
@@ -1479,7 +1500,6 @@ Page NextPageFunc(string nextLink, int? pageSizeHint)
return PageableHelpers.CreateEnumerable(FirstPageFunc, NextPageFunc);
}
- // TODODOCS: double check if reasoning is right. Alert configurations do not generate incidents.
///
/// Given an alert, gets the incidents associated with the anomalies that triggered it. The associated
/// must also be specified.
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScope.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScope.cs
index 0bc5cff30ca63..9f26666eaf953 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScope.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScope.cs
@@ -25,14 +25,16 @@ internal MetricAnomalyAlertScope(MetricAnomalyAlertScopeType scopeType, Dimensio
public MetricAnomalyAlertScopeType ScopeType { get; }
///
- /// The key that identifies the group of fixed time series that constitutes this scope. A subset of the possible
- /// dimensions of the associated data feed must be set. This property is set when
- /// is .
+ /// Alerts will only be triggered for anomalies in specific dimensions of the series group.
+ /// The number of specified dimensions should be smaller than the total number dimensions.
+ /// This property is set when is .
///
public DimensionKey SeriesGroupInScope { get; }
- // TODODOCS.
///
+ /// Alerts will only be triggered for anomalies in the top N series.
+ /// Specify the number of timestamps to take into account, and how many anomalies must be in them to send the alert.
+ /// This property is set when is .
///
public TopNGroupScope TopNGroupInScope { get; }
@@ -47,7 +49,8 @@ public static MetricAnomalyAlertScope GetScopeForWholeSeries() =>
///
/// Creates a instance that has a fixed group of time series as the scope.
///
- /// The key that identifies the group of fixed time series that constitutes the scope. A subset of the possible dimensions of the associated data feed must be set.
+ /// The key that identifies the group of fixed time series that constitutes the scope.
+ /// A subset of the possible dimensions of the associated data feed must be set.
/// A new instance.
/// is null.
public static MetricAnomalyAlertScope GetScopeForSeriesGroup(DimensionKey seriesGroupKey)
@@ -57,9 +60,10 @@ public static MetricAnomalyAlertScope GetScopeForSeriesGroup(DimensionKey series
return new MetricAnomalyAlertScope(MetricAnomalyAlertScopeType.SeriesGroup, seriesGroupKey, topNGroupInScope: default);
}
- // TODODOCS.
///
+ /// Creates a instance in which alerts will only be triggered for anomalies in the top N series.
///
+ /// Specify the number of timestamps to take into account, and how many anomalies must be in them to send the alert.
/// is null.
public static MetricAnomalyAlertScope GetScopeForTopNGroup(TopNGroupScope topNGroup)
{
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScopeType.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScopeType.cs
index 2a3925e275bca..11504f6c8dd73 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScopeType.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/MetricAnomalyAlertScopeType.cs
@@ -12,19 +12,20 @@ namespace Azure.AI.MetricsAdvisor.Models
public readonly partial struct MetricAnomalyAlertScopeType
{
///
- /// The scope is all time series within the associated metric.
+ /// Alerts will be triggered for anomalies in all series within the metric.
///
[CodeGenMember("All")]
public static MetricAnomalyAlertScopeType WholeSeries { get; } = new MetricAnomalyAlertScopeType(WholeSeriesValue);
///
- /// The scope is a fixed group of time series.
+ /// Alerts will only be triggered for anomalies in specific dimensions of the series group.
///
[CodeGenMember("Dimension")]
public static MetricAnomalyAlertScopeType SeriesGroup { get; } = new MetricAnomalyAlertScopeType(SeriesGroupValue);
- // TODODOCS.
///
+ /// Alerts will only be triggered for anomalies in the top N series.
+ /// You can set parameters to specify the number of timestamps to take into account, and how many anomalies must be in them to send the alert.
///
public static MetricAnomalyAlertScopeType TopN { get; } = new MetricAnomalyAlertScopeType(TopNValue);
}
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/TopNGroupScope.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/TopNGroupScope.cs
index aaeb088a61c06..71a2b359e1d6d 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/TopNGroupScope.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyAlert/TopNGroupScope.cs
@@ -5,8 +5,10 @@
namespace Azure.AI.MetricsAdvisor.Models
{
- // TODODOCS: this whole class needs clarification.
///
+ /// Alerts will only be triggered for anomalies in the top N series.
+ /// Use to specify the number of timestamps to take into account, and
+ /// to specify how many anomalies must be in them to send the alert.
///
public partial class TopNGroupScope
{
@@ -27,14 +29,17 @@ public TopNGroupScope(int top, int period, int minimumTopCount)
}
///
+ /// The number of timestamps to take into account.
///
public int Top { get; }
///
+ /// The number of items a period contains.
///
public int Period { get; }
///
+ /// The number of anomalies that must be in the specified number of timestamps to send an alert.
///
[CodeGenMember("MinTopCount")]
public int MinimumTopCount { get; }
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/ChangeThresholdCondition.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/ChangeThresholdCondition.cs
index 8c1da734af5dc..637b4c9e197f2 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/ChangeThresholdCondition.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/ChangeThresholdCondition.cs
@@ -6,8 +6,6 @@
namespace Azure.AI.MetricsAdvisor.Models
{
- // TODODOCS: whole class is hard to explain.
-
///
/// A condition used for anomaly detection. Using the value of a previously ingested data
/// point as reference, sets bounds to specify the range in which data points are expected
@@ -19,10 +17,10 @@ public partial class ChangeThresholdCondition
///
/// Initializes a new instance of the class.
///
- /// The relative change.
+ /// Compared to the previous point, the current point is an anomaly if the percentage of change is more than this value.
/// When set to N, sets as reference the data point that's N positions before the current point. Value must be at least 1.
- ///
- ///
+ /// Sets whether to detect data within the range or outside the range.
+ /// A point is considered an anomaly only when the deviation occurs in the specified direction.
/// The to be applied to every unexpected data point.
/// is null.
public ChangeThresholdCondition(double changePercentage, int shiftPoint, bool isWithinRange, AnomalyDetectorDirection anomalyDetectorDirection, SuppressCondition suppressCondition)
@@ -43,15 +41,19 @@ public ChangeThresholdCondition(double changePercentage, int shiftPoint, bool is
public int ShiftPoint { get; }
///
+ /// Compared to the previous point, the current point is an anomaly if the percentage of change is more than this value.
///
public double ChangePercentage { get; }
///
+ /// Sets whether to detect data within the range or outside the range. If you want to detect fluctuations, select false.
+ /// If you want to detect flat lines in your data, select true.
///
[CodeGenMember("WithinRange")]
public bool IsWithinRange { get; }
///
+ /// A point is considered an anomaly only when the deviation occurs in the specified direction.
///
public AnomalyDetectorDirection AnomalyDetectorDirection { get; }
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/DataAnomaly.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/DataAnomaly.cs
index d6e4c262f3261..7d76ad4c2b41f 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/DataAnomaly.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/DataAnomaly.cs
@@ -55,7 +55,6 @@ internal DataAnomaly(string metricId, string anomalyDetectionConfigurationId, Da
///
public AnomalySeverity Severity { get; }
- // TODO: how can the service tell when an anomaly has been resolved? What criteria is used?
///
/// The status of the issue that caused this . This property is only populated
/// when calling or
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/MetricWholeSeriesDetectionCondition.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/MetricWholeSeriesDetectionCondition.cs
index 6e5a6e407570a..a6aca15e3b19b 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/MetricWholeSeriesDetectionCondition.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/MetricWholeSeriesDetectionCondition.cs
@@ -25,13 +25,14 @@ public MetricWholeSeriesDetectionCondition()
[CodeGenMember("ConditionOperator")]
public DetectionConditionsOperator? CrossConditionsOperator { get; set; }
- // TODODOCS.
///
+ /// Configures anomaly detection using multiple machine learning algorithms.
///
public SmartDetectionCondition SmartDetectionCondition { get; set; }
///
/// Sets fixed upper and/or lower bounds to specify the range in which data points are expected to be.
+ /// Values outside of upper or lower bounds are anomalies.
///
public HardThresholdCondition HardThresholdCondition { get; set; }
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/SmartDetectionCondition.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/SmartDetectionCondition.cs
index 3914a340d4a49..2c3810488c62d 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/SmartDetectionCondition.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/AnomalyDetection/SmartDetectionCondition.cs
@@ -6,15 +6,18 @@
namespace Azure.AI.MetricsAdvisor.Models
{
- // TODODOCS: properties need clarification.
///
+ /// Anomaly detection using multiple machine learning algorithms.
///
public partial class SmartDetectionCondition
{
///
/// Initializes a new instance of the class.
///
- /// sensitivity, value range : (0, 100].
+ ///
+ /// A numerical value to adjust the tolerance of the anomaly detection with a range of (0, 100].
+ /// Visually, the higher the value, the narrower the upper and lower boundaries around the time series.
+ ///
/// detection direction.
/// The to be applied to every unexpected data point.
/// is null.
@@ -28,10 +31,13 @@ public SmartDetectionCondition(double sensitivity, AnomalyDetectorDirection anom
}
///
+ /// A numerical value to adjust the tolerance of the anomaly detection with a range of (0, 100].
+ /// Visually, the higher the value, the narrower the upper and lower boundaries around the time series.
///
public double Sensitivity { get; }
///
+ /// A point is an anomaly only when the deviation occurs in the specified direction.
///
public AnomalyDetectorDirection AnomalyDetectorDirection { get; }
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureApplicationInsightsDataFeedSource.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureApplicationInsightsDataFeedSource.cs
index 48d51ab32da21..c090ce96e94f8 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureApplicationInsightsDataFeedSource.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureApplicationInsightsDataFeedSource.cs
@@ -11,14 +11,13 @@ namespace Azure.AI.MetricsAdvisor.Models
///
public class AzureApplicationInsightsDataFeedSource : DataFeedSource
{
- // TODODOCS.
///
/// Initializes a new instance of the class.
///
/// The Application ID.
/// The API key.
- ///
- ///
+ /// The Azure cloud environment.
+ /// The query used to filter the data to be ingested.
/// , , , or is null.
/// , , , or is empty.
public AzureApplicationInsightsDataFeedSource(string applicationId, string apiKey, string azureCloud, string query)
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureBlobDataFeedSource.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureBlobDataFeedSource.cs
index f7bfa561d8669..1fb692f094c14 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureBlobDataFeedSource.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureBlobDataFeedSource.cs
@@ -11,13 +11,36 @@ namespace Azure.AI.MetricsAdvisor.Models
///
public class AzureBlobDataFeedSource : DataFeedSource
{
- // TODODOCS.
///
/// Initializes a new instance of the class.
///
/// The connection string for authenticating to the Azure Storage Account.
/// The name of the blob container.
- ///
+ ///
+ /// This is the template of the Blob file names. For example: /%Y/%m/X_%Y-%m-%d-%h-%M.json. The following parameters are supported:
+ ///
+ /// -
+ /// %Y
+ /// The year formatted as yyyy
+ ///
+ /// -
+ /// %m
+ /// The month formatted as MM
+ ///
+ /// -
+ /// %d
+ /// The day formatted as dd
+ ///
+ /// -
+ /// %h
+ /// The hour formatted as HH
+ ///
+ /// -
+ /// %M
+ /// The minute formatted as mm
+ ///
+ ///
+ ///
/// , , or is null.
/// , , or is empty.
public AzureBlobDataFeedSource(string connectionString, string container, string blobTemplate)
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureDataLakeStorageGen2DataFeedSource.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureDataLakeStorageGen2DataFeedSource.cs
index bc29c32e8ca62..4583d1b0a26f9 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureDataLakeStorageGen2DataFeedSource.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/AzureDataLakeStorageGen2DataFeedSource.cs
@@ -11,7 +11,6 @@ namespace Azure.AI.MetricsAdvisor.Models
///
public class AzureDataLakeStorageGen2DataFeedSource : DataFeedSource
{
- // TODODOCS.
///
/// Initializes a new instance of the class.
///
@@ -19,7 +18,31 @@ public class AzureDataLakeStorageGen2DataFeedSource : DataFeedSource
/// The Storage Account key.
/// The name of the file system.
/// The directory template.
- ///
+ ///
+ /// This is the file template of the Blob file. For example: X_%Y-%m-%d-%h-%M.json. The following parameters are supported:
+ ///
+ /// -
+ /// %Y
+ /// The year formatted as yyyy
+ ///
+ /// -
+ /// %m
+ /// The month formatted as MM
+ ///
+ /// -
+ /// %d
+ /// The day formatted as dd
+ ///
+ /// -
+ /// %h
+ /// The hour formatted as HH
+ ///
+ /// -
+ /// %M
+ /// The minute formatted as mm
+ ///
+ ///
+ ///
/// , , , , or is null.
/// , , , , or is empty.
public AzureDataLakeStorageGen2DataFeedSource(string accountName, string accountKey, string fileSystemName, string directoryTemplate, string fileTemplate)
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeed.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeed.cs
index 9d5c9f1e3de3c..c7677ecd1cf59 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeed.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeed.cs
@@ -45,8 +45,8 @@ internal DataFeed(DataFeedDetail dataFeedDetail)
///
public DateTimeOffset? CreatedTime { get; }
- // TODODOCS.
///
+ /// The e-mail address of creator of this .
///
public string Creator { get; }
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAccessMode.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAccessMode.cs
index e3b8d91b0227b..c0cc20bccc4a1 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAccessMode.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAccessMode.cs
@@ -5,17 +5,19 @@
namespace Azure.AI.MetricsAdvisor.Models
{
- // TODODOCS.
///
+ /// The view mode of the .
///
[CodeGenModel("ViewMode")]
public readonly partial struct DataFeedAccessMode
{
///
+ /// Indicates that the data feed is private.
///
public static DataFeedAccessMode Private { get; } = new DataFeedAccessMode(PrivateValue);
///
+ /// Indicates that the data feed is public.
///
public static DataFeedAccessMode Public { get; } = new DataFeedAccessMode(PublicValue);
}
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAutoRollupMethod.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAutoRollupMethod.cs
index 7a81c82c2588f..51ed84f3dddb2 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAutoRollupMethod.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedAutoRollupMethod.cs
@@ -6,13 +6,14 @@
namespace Azure.AI.MetricsAdvisor.Models
{
///
- /// The roll-up method the service should apply to the ingested data for anomaly detection.
+ /// The roll-up method performs an aggregation (for example SUM, MAX, MIN) on each dimension during ingestion. Used to
+ /// build a hierarchy which will be used in root case analysis and other diagnostic features.
///
[CodeGenModel("DataFeedDetailRollUpMethod")]
public readonly partial struct DataFeedAutoRollupMethod
{
- // TODODOCS: when is this used for?
///
+ /// This option means Metrics Advisor doesn't need to roll up the data because, for example, the rows are already summed.
///
public static DataFeedAutoRollupMethod None { get; } = new DataFeedAutoRollupMethod(NoneValue);
@@ -33,7 +34,6 @@ public readonly partial struct DataFeedAutoRollupMethod
[CodeGenMember("Min")]
public static DataFeedAutoRollupMethod Minimum { get; } = new DataFeedAutoRollupMethod(MinimumValue);
- // TODODOCS: double check if it's in fact an arithmetic mean.
///
/// The rolled-up column should contain the arithmetic mean of the ingested values.
///
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedIngestionSettings.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedIngestionSettings.cs
index ac6e0bfc49c9e..9cb28797bbfab 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedIngestionSettings.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedIngestionSettings.cs
@@ -46,11 +46,10 @@ internal DataFeedIngestionSettings(DataFeedDetail dataFeedDetail)
///
public int? DataSourceRequestConcurrency { get; set; }
- // TODO: provide link to documentation in IngestionRetryDelay.
-
///
/// The minimum delay between two consecutive retry attempts, in case data ingestion
/// fails. If not specified, the service's behavior depends on the data feed's granularity.
+ /// See the documentation> for details.
///
public TimeSpan? IngestionRetryDelay { get; set; }
@@ -61,8 +60,8 @@ internal DataFeedIngestionSettings(DataFeedDetail dataFeedDetail)
///
public TimeSpan? IngestionStartOffset { get; set; }
- // TODODOCS.
///
+ /// Specifies the maximum amount of time in which to attempt a retry if ingestion fails.
///
public TimeSpan? StopRetryAfter { get; set; }
}
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedOptions.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedOptions.cs
index 29b3a40b2e42e..80064f044f007 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedOptions.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedOptions.cs
@@ -42,13 +42,15 @@ internal DataFeedOptions(DataFeedDetail dataFeedDetail)
///
public string Description { get; set; }
- // TODODOCS.
///
+ /// Defines actionable HTTP URLs, which consist of the placeholders %datafeed, %metric, %timestamp, %detect_config, and %tagset.
+ /// You can use the template to redirect from an anomaly or an incident to a specific URL to drill down.
+ /// See the documentation for details.
///
public string ActionLinkTemplate { get; set; }
- // TODODOCS.
///
+ /// The access mode for the .
///
public DataFeedAccessMode? AccessMode { get; set; }
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedRollupSettings.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedRollupSettings.cs
index 83de344f446de..a0cecfc017b20 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedRollupSettings.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedRollupSettings.cs
@@ -42,16 +42,14 @@ internal DataFeedRollupSettings(DataFeedDetail dataFeedDetail)
///
public DataFeedRollupType? RollupType { get; set; }
- // TODO: double check if RollupMethod is really required for NeedRollup.
-
///
/// The roll-up method the service should apply to the ingested data for anomaly detection. This property
/// must be set if is .
///
public DataFeedAutoRollupMethod? RollupMethod { get; set; }
- // TODODOCS: what is this used for?
///
+ /// Defines the column names to which these will apply.
///
/// is null.
public IList AutoRollupGroupByColumnNames
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedStatus.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedStatus.cs
index 42af23a7cbf63..096ae4829520a 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedStatus.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/DataFeedStatus.cs
@@ -11,8 +11,6 @@ namespace Azure.AI.MetricsAdvisor.Models
[CodeGenModel("DataFeedDetailStatus")]
public readonly partial struct DataFeedStatus
{
- // TODO: what is actually paused in a paused data feed? Ingestion? Anomaly detection? Both?
-
///
/// The is active.
///
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/GetDataFeedIngestionStatusesOptions.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/GetDataFeedIngestionStatusesOptions.cs
index 5ce91f1002198..ae7fe98629502 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/GetDataFeedIngestionStatusesOptions.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeed/GetDataFeedIngestionStatusesOptions.cs
@@ -2,15 +2,19 @@
// Licensed under the MIT License.
using System;
+using Azure.AI.MetricsAdvisor.Administration;
namespace Azure.AI.MetricsAdvisor.Models
{
///
+ /// The set of options that can be specified when calling or
+ /// to configure the behavior of the request.
///
public class GetDataFeedIngestionStatusesOptions
{
- ///
- ///
+ /// Initializes a new instance of the class.
+ /// The start point of time range to query data ingestion status.
+ /// The end point of time range to query data ingestion status.
public GetDataFeedIngestionStatusesOptions(DateTimeOffset startTime, DateTimeOffset endTime)
{
StartTime = startTime;
@@ -18,18 +22,24 @@ public GetDataFeedIngestionStatusesOptions(DateTimeOffset startTime, DateTimeOff
}
///
+ /// Filters the result. Only status of data being ingested from this point in time, in UTC, will be returned.
///
public DateTimeOffset StartTime { get; }
///
+ /// Filters the result. Only status of data being ingested up to this point in time, in UTC, will be returned.
///
public DateTimeOffset EndTime { get; }
///
+ /// If set, skips the first set of items returned. This property specifies the count of items to be skipped.
///
public int? SkipCount { get; set; }
///
+ /// If set, specifies the maximum limit of items returned in each page of results. Note:
+ /// unless the number of pages enumerated from the service is limited, the service will
+ /// return an unlimited number of total items.
///
public int? TopCount { get; set; }
}
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeedMetric.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeedMetric.cs
index 641e29525933e..db754926d153d 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeedMetric.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/DataFeedMetric.cs
@@ -6,8 +6,10 @@
namespace Azure.AI.MetricsAdvisor.Models
{
- // TODODOCS: hard to explain.
///
+ /// A is a quantifiable measure that is used to monitor and assess the status of a specific business process.
+ /// It can be a combination of multiple time series values divided into dimensions.
+ /// For example, a web health metric might contain dimensions for user count in a specific market.
///
[CodeGenModel("Metric")]
public partial class DataFeedMetric
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/MetricDimension.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/MetricDimension.cs
index d72a096e4126b..8ec1551747b1d 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/MetricDimension.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/MetricDimension.cs
@@ -6,8 +6,9 @@
namespace Azure.AI.MetricsAdvisor.Models
{
- // TODODOCS: hard to explain.
///
+ /// A is one or more categorical values. The combination of those values identify a particular univariate time series.
+ /// For example: country, language, tenant, and so on.
///
[CodeGenModel("Dimension")]
public partial class MetricDimension
diff --git a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/Metrics/GetMetricDimensionValuesOptions.cs b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/Metrics/GetMetricDimensionValuesOptions.cs
index 31c1024b52e35..251e55a961783 100644
--- a/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/Metrics/GetMetricDimensionValuesOptions.cs
+++ b/sdk/metricsadvisor/Azure.AI.MetricsAdvisor/src/Models/Metrics/GetMetricDimensionValuesOptions.cs
@@ -16,8 +16,8 @@ public GetMetricDimensionValuesOptions()
{
}
- // TODODOCS.
///
+ /// The dimension value to be filtered.
///
public string DimensionValueToFilter { get; set; }