MetricsAdvisorClient class
用于与 Azure 指标顾问服务交互的客户端类,用于查询警报/事件/异常、诊断事件、提供指标反馈
构造函数
| Metrics |
创建 MetricsAdvisorClient 的实例。 示例用法:
|
属性
| endpoint |
指向服务终结点的 URL |
方法
| add |
创建指标反馈。 |
| get |
检索给定反馈 ID 的指标反馈。 |
| get |
获取事件的根本原因。 |
| get |
检索检测配置的扩充指标系列数据 |
| get |
获取指标的时序数据 |
| list |
返回异步可迭代迭代器以列出警报配置的警报。
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出与警报关联的 anamolies
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出检测配置的异常。
使用
使用
使用
|
| list |
返回异步可迭代迭代器,以列出检测配置检测到的异常的维度值。
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出指标的反馈。
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出与警报关联的事件
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出异常情况检测配置的事件。
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出指标维度的所有值。
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出异常情况检测配置的事件。
使用
使用
使用
|
| list |
返回异步可迭代迭代器以列出指标的系列定义(维度组合)。
使用
使用
使用
|
构造函数详细信息
MetricsAdvisorClient(string, TokenCredential | MetricsAdvisorKeyCredential, MetricsAdvisorClientOptions)
创建 MetricsAdvisorClient 的实例。
示例用法:
import { MetricsAdvisorClient, MetricsAdvisorKeyCredential } from "@azure/ai-metrics-advisor";
const client = new MetricsAdvisorClient(
"<service endpoint>",
new MetricsAdvisorKeyCredential("<subscription key>", "<api key>")
);
new MetricsAdvisorClient(endpointUrl: string, credential: TokenCredential | MetricsAdvisorKeyCredential, options?: MetricsAdvisorClientOptions)
参数
- endpointUrl
-
string
指向 Azure 指标顾问服务终结点的 URL
- credential
用于对服务的请求进行身份验证。
- options
- MetricsAdvisorClientOptions
用于配置指标顾问客户端。
属性详细信息
endpointUrl
指向服务终结点的 URL
endpointUrl: string
属性值
string
方法详细信息
addFeedback(MetricFeedbackUnion, OperationOptions)
创建指标反馈。
function addFeedback(feedback: MetricFeedbackUnion, options?: OperationOptions): Promise<MetricFeedbackUnion>
参数
- feedback
- MetricFeedbackUnion
反馈的内容
- options
- OperationOptions
options 参数
返回
Promise<MetricFeedbackUnion>
使用 Feedback 对象的响应
getFeedback(string, OperationOptions)
检索给定反馈 ID 的指标反馈。
function getFeedback(id: string, options?: OperationOptions): Promise<MetricFeedbackUnion>
参数
- id
-
string
要检索的反馈的 ID
- options
- OperationOptions
options 参数
返回
Promise<MetricFeedbackUnion>
getIncidentRootCauses(string, string, OperationOptions)
获取事件的根本原因。
function getIncidentRootCauses(detectionConfigId: string, incidentId: string, options?: OperationOptions): Promise<GetIncidentRootCauseResponse>
参数
- detectionConfigId
-
string
异常情况检测配置 ID
- incidentId
-
string
事件 ID
- options
- OperationOptions
options 参数
返回
Promise<GetIncidentRootCauseResponse>
getMetricEnrichedSeriesData(string, DimensionKey[], string | Date, string | Date, GetMetricEnrichedSeriesDataOptions)
检索检测配置的扩充指标系列数据
function getMetricEnrichedSeriesData(detectionConfigId: string, seriesKey: DimensionKey[], startTime: string | Date, endTime: string | Date, options?: GetMetricEnrichedSeriesDataOptions): Promise<GetMetricEnrichedSeriesDataResponse>
参数
- detectionConfigId
-
string
异常情况检测配置 ID
- seriesKey
用于检索其数据的序列
- startTime
-
string | Date
查询指标扩充序列数据的时间范围的开始
- endTime
-
string | Date
查询指标扩充序列数据的结束时间范围
options 参数。
返回
Promise<GetMetricEnrichedSeriesDataResponse>
getMetricSeriesData(string, DimensionKey[], string | Date, string | Date, GetMetricSeriesDataOptions)
获取指标的时序数据
function getMetricSeriesData(metricId: string, seriesKey: DimensionKey[], startTime: string | Date, endTime: string | Date, options?: GetMetricSeriesDataOptions): Promise<GetMetricSeriesDataResponse>
参数
- metricId
-
string
指标 ID
- seriesKey
用于检索其数据的时序列表
- startTime
-
string | Date
检索序列数据的时间范围的开始
- endTime
-
string | Date
检索序列数据的时间范围的结束
- options
- GetMetricSeriesDataOptions
options 参数
返回
Promise<GetMetricSeriesDataResponse>
listAlerts(string, string | Date, string | Date, AlertQueryTimeMode, ListAlertsOptions)
返回异步可迭代迭代器以列出警报配置的警报。
.byPage() 返回异步可迭代迭代器以列出页面中的警报。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey)
);
const alerts = client.listAlerts(alertConfigId,
startTime, endTime, timeMode
);
let i = 1;
for await (const alert of alerts) {
console.log(`alert ${i++}:`);
console.log(alert);
}
使用 iter.next()的示例:
let iter = client.listAlerts(alertConfigId, startTime, endTime, timeMode);
let result = await iter.next();
while (!result.done) {
console.log(` alert - ${result.value.id}`);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listAlerts(alertConfigId, startTime, endTime, timeMode)
.byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const alert of page.value) {
console.log(`${alert}`);
}
}
page = await pages.next();
}
function listAlerts(alertConfigId: string, startTime: string | Date, endTime: string | Date, timeMode: AlertQueryTimeMode, options?: ListAlertsOptions): PagedAsyncIterableIterator<AnomalyAlert, AlertsPageResponse, PageSettings>
参数
- alertConfigId
-
string
异常警报配置唯一 ID
- startTime
-
string | Date
查询警报项的警报配置的开始时间范围
- endTime
-
string | Date
查询警报项的警报配置的结束时间范围
- timeMode
- AlertQueryTimeMode
查询时间模式 - “AnomalyTime” |“CreatedTime” |“ModifiedTime”
- options
- ListAlertsOptions
options 参数。
返回
listAnomaliesForAlert(AnomalyAlert, ListAnomaliesForAlertConfigurationOptions)
返回异步可迭代迭代器以列出与警报关联的 anamolies
.byPage() 返回异步可迭代迭代器以列出页面中的异常。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const anamolyList = client.listAnomaliesForAlert({alertConfigId, id: alertId});
let i = 1;
for await (const anamoly of anamolyList){
console.log(`anamoly ${i++}:`);
console.log(anamoly);
}
使用 iter.next()的示例:
let iter = client.listAnomaliesForAlert({alertConfigId, id: alertId});
let result = await iter.next();
while (!result.done) {
console.log(` anamoly - ${result.value.metricId}, ${result.value.detectionConfigurationId} `);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listAnomaliesForAlert({alertConfigId, id: alertId}).byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const anomaly of page.value) {
console.log(`${anomaly}`);
}
}
page = await pages.next();
}
function listAnomaliesForAlert(alert: AnomalyAlert, options?: ListAnomaliesForAlertConfigurationOptions): PagedAsyncIterableIterator<DataPointAnomaly, AnomaliesPageResponse, PageSettings>
参数
- alert
- AnomalyAlert
包含 alertConfigId 和 id 的异常警报
options 参数。
返回
listAnomaliesForDetectionConfiguration(string, string | Date, string | Date, ListAnomaliesForDetectionConfigurationOptions)
返回异步可迭代迭代器以列出检测配置的异常。
.byPage() 返回异步可迭代迭代器以列出页面中的异常。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const anomalies = client.listAnomaliesForDetectionConfiguration(detectionConfigId, startTime, endTime);
let i = 1;
for await (const anomaly of anomalies) {
console.log(`anomaly ${i++}:`);
console.log(anomaly);
}
使用 iter.next()的示例:
let iter = client.listAnomaliesForDetectionConfiguration(detectionConfigId, startTime, endTime);
let result = await iter.next();
while (!result.done) {
console.log(` anomaly - ${result.value.severity} ${result.value.status}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listAnomaliesForDetectionConfiguration(detectionConfigId, startTime, endTime)
.byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const anomaly of page.value) {
console.dir(anomaly);
}
}
page = await pages.next();
}
function listAnomaliesForDetectionConfiguration(detectionConfigId: string, startTime: string | Date, endTime: string | Date, options?: ListAnomaliesForDetectionConfigurationOptions): PagedAsyncIterableIterator<DataPointAnomaly, AnomaliesPageResponse, PageSettings>
参数
- detectionConfigId
-
string
异常情况检测配置 ID
- startTime
-
string | Date
查询异常的时间范围的开始时间
- endTime
-
string | Date
查询异常的时间范围的结束时间
options 参数。
返回
listAnomalyDimensionValues(string, string | Date, string | Date, string, ListAnomalyDimensionValuesOptions)
返回异步可迭代迭代器,以列出检测配置检测到的异常的维度值。
.byPage() 返回异步可迭代迭代器以列出页面中的维度值。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const dimensionValues = client
.listAnomalyDimensionValues(detectionConfigId, startTime, endTime, dimensionName);
let i = 1;
for await (const dv of dimensionValues) {
console.log(`dimension value ${i++}: ${dv}`);
使用 iter.next()的示例:
let iter = client
.listAnomalyDimensionValues(detectionConfigId, startTime, endTime, dimensionName);
let result = await iter.next();
while (!result.done) {
console.log(` dimension value - '${result.value}'`);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client
.listAnomalyDimensionValues(
detectionConfigId,
startTime,
endTime,
dimensionName
)
.byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const dv of page.value) {
console.log(` dimension value - '${result.value}'`);
}
}
page = await pages.next();
}
function listAnomalyDimensionValues(detectionConfigId: string, startTime: string | Date, endTime: string | Date, dimensionName: string, options?: ListAnomalyDimensionValuesOptions): PagedAsyncIterableIterator<string, DimensionValuesPageResponse, PageSettings>
参数
- detectionConfigId
-
string
异常情况检测配置 ID
- startTime
-
string | Date
查询异常的时间范围的开始时间
- endTime
-
string | Date
查询异常的时间范围的结束时间
- dimensionName
-
string
异常情况检测配置的维度的名称
options 参数。
返回
listFeedback(string, ListFeedbackOptions)
返回异步可迭代迭代器以列出指标的反馈。
.byPage() 返回异步可迭代迭代器以列出页面中的反馈。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const feedbacks = client.listFeedback(metricId);
let i = 1;
for await (const f of feedbacks){
console.log(`feedback ${i++}:`);
console.log(f);
}
使用 iter.next()的示例:
let iter = client.listFeedback(metricId);
let result = await iter.next();
while (!result.done) {
console.log(` feedback - ${result.value.id}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listFeedback(metricId)
.byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const f of page.value) {
console.dir(f);
}
}
page = await pages.next();
}
function listFeedback(metricId: string, options?: ListFeedbackOptions): PagedAsyncIterableIterator<MetricFeedbackUnion, MetricFeedbackPageResponse, PageSettings>
参数
- metricId
-
string
指标 ID
- options
- ListFeedbackOptions
options 参数
返回
listIncidentsForAlert(AnomalyAlert, ListIncidentsForAlertOptions)
返回异步可迭代迭代器以列出与警报关联的事件
.byPage() 返回异步可迭代迭代器以在页面中列出事件。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const incidentList = client.listIncidentsForAlert(anomalyAlert);
let i = 1;
for await (const incident of incidentList){
console.log(`incident ${i++}:`);
console.log(incident);
}
使用 iter.next()的示例:
let iter = client.listIncidentsForAlert(anomalyAlert);
let result = await iter.next();
while (!result.done) {
console.log(` incident - ${result.value.id}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listIncidentsForAlert(anomalyAlert).byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const incident of page.value) {
console.dir(incident);
}
}
page = await pages.next();
}
function listIncidentsForAlert(alert: AnomalyAlert, options?: ListIncidentsForAlertOptions): PagedAsyncIterableIterator<AnomalyIncident, IncidentsPageResponse, PageSettings>
参数
- alert
- AnomalyAlert
包含 alertConfigId 和 id 的异常警报
- options
- ListIncidentsForAlertOptions
options 参数。
返回
listIncidentsForDetectionConfiguration(string, string | Date, string | Date, ListIncidentsForDetectionConfigurationOptions)
返回异步可迭代迭代器以列出异常情况检测配置的事件。
.byPage() 返回异步可迭代迭代器以在页面中列出事件。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const incidentList = client
.listIncidentsForDetectionConfiguration(detectionConfigId, startTime, endTime);
let i = 1;
for await (const incident of incidentList){
console.log(`incident ${i++}:`);
console.log(incident);
}
使用 iter.next()的示例:
let iter = client.listIncidentsForDetectionConfiguration(detectionConfigId, startTime, endTime);
let result = await iter.next();
while (!result.done) {
console.log(` incident - ${result.value.id}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listIncidentsForDetectionConfiguration(detectionConfigId, startTime, endTime)
.byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const incident of page.value) {
console.dir(incident);
}
}
page = await pages.next();
}
function listIncidentsForDetectionConfiguration(detectionConfigId: string, startTime: string | Date, endTime: string | Date, options?: ListIncidentsForDetectionConfigurationOptions): PagedAsyncIterableIterator<AnomalyIncident, IncidentsPageResponse, PageSettings>
参数
- detectionConfigId
-
string
异常情况检测配置 ID
- startTime
-
string | Date
查询事件的开始时间范围
- endTime
-
string | Date
查询事件的结束时间范围
options 参数。
返回
listMetricDimensionValues(string, string, ListMetricDimensionValuesOptions)
返回异步可迭代迭代器以列出指标维度的所有值。
.byPage() 返回异步可迭代迭代器以列出页面中的值。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const values = client.listMetricDimensionValues(metricId, dimensionName);
let i = 1;
for await (const v of values){
console.log(`dimension value ${i++}:`);
console.log(v);
}
使用 iter.next()的示例:
let iter = client.listMetricDimensionValues(metricId, dimensionName);
let result = await iter.next();
while (!result.done) {
console.log(` dimension value - ${result.value}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listMetricDimensionValues(metricId, dimensionName).byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const dv of page.value) {
console.dir(dv);
}
}
page = await pages.next();
}
function listMetricDimensionValues(metricId: string, dimensionName: string, options?: ListMetricDimensionValuesOptions): PagedAsyncIterableIterator<string, DimensionValuesPageResponse, PageSettings>
参数
- metricId
-
string
异常情况检测配置 ID
- dimensionName
-
string
要列出值的维度的名称
- options
- ListMetricDimensionValuesOptions
options 参数。
返回
listMetricEnrichmentStatus(string, string | Date, string | Date, ListMetricEnrichmentStatusOptions)
返回异步可迭代迭代器以列出异常情况检测配置的事件。
.byPage() 返回异步可迭代迭代器以在页面中列出事件。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const statusList = client.listMetricEnrichmentStatus(metricId, startTime, endTime);
let i = 1;
for await (const status of statusList){
console.log(`enrichment status ${i++}:`);
console.log(status);
}
使用 iter.next()的示例:
let iter = client.listMetricEnrichmentStatus(metricId, startTime, endTime);
let result = await iter.next();
while (!result.done) {
console.log(` enrichment status - ${result.value.status} ${result.value.message}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listMetricEnrichmentStatus(metricId, startTime, endTime)
.byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const status of page.value) {
console.dir(status);
}
}
page = await pages.next();
}
function listMetricEnrichmentStatus(metricId: string, startTime: string | Date, endTime: string | Date, options?: ListMetricEnrichmentStatusOptions): PagedAsyncIterableIterator<EnrichmentStatus, MetricEnrichmentStatusPageResponse, PageSettings>
参数
- metricId
-
string
指标 ID
- startTime
-
string | Date
查询扩充状态的时间范围的开始时间
- endTime
-
string | Date
查询扩充状态的时间范围的结束时间
options 参数。
返回
listMetricSeriesDefinitions(string, string | Date, ListMetricSeriesDefinitionsOptions)
返回异步可迭代迭代器以列出指标的系列定义(维度组合)。
.byPage() 返回异步可迭代迭代器以列出页面中的系列定义。
使用 for await 语法的示例:
const client = new MetricsAdvisorClient(endpoint,
new MetricsAdvisorKeyCredential(subscriptionKey, apiKey));
const definitions = client.listMetricSeriesDefinitions(metricId, activeSince);
let i = 1;
for await (const definition of definitions){
console.log(`definition ${i++}:`);
console.log(definition);
}
使用 iter.next()的示例:
let iter = client.listMetricSeriesDefinitions(metricId, activeSince);
let result = await iter.next();
while (!result.done) {
console.log(` definition - ${result.value.metricId} ${result.value.dimension}`);
console.dir(result.value);
result = await iter.next();
}
使用 byPage()的示例:
const pages = client.listMetricSeriesDefinitions(metricId, activeSince).byPage({ maxPageSize: 10 });
let page = await pages.next();
let i = 1;
while (!page.done) {
if (page.value) {
console.log(`-- page ${i++}`);
for (const definition of page.value) {
console.dir(definition);
}
}
page = await pages.next();
}
function listMetricSeriesDefinitions(metricId: string, activeSince: string | Date, options?: ListMetricSeriesDefinitionsOptions): PagedAsyncIterableIterator<MetricSeriesDefinition, MetricSeriesPageResponse, PageSettings>
参数
- metricId
-
string
指标 ID
- activeSince
-
string | Date
返回此时间之后引入的序列定义
options 参数。