LoadTestRunClient.GetMetricsAsync Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Enumera los valores de métrica de una ejecución de prueba de carga.
public virtual Azure.AsyncPageable<BinaryData> GetMetricsAsync (string testRunId, string metricName, string metricNamespace, string timespan, Azure.Core.RequestContent content = default, string aggregation = default, string interval = default, Azure.RequestContext context = default);
abstract member GetMetricsAsync : string * string * string * string * Azure.Core.RequestContent * string * string * Azure.RequestContext -> Azure.AsyncPageable<BinaryData>
override this.GetMetricsAsync : string * string * string * string * Azure.Core.RequestContent * string * string * Azure.RequestContext -> Azure.AsyncPageable<BinaryData>
Public Overridable Function GetMetricsAsync (testRunId As String, metricName As String, metricNamespace As String, timespan As String, Optional content As RequestContent = Nothing, Optional aggregation As String = Nothing, Optional interval As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)
Parámetros
- testRunId
- String
El nombre único de la ejecución de pruebas de carga debe contener solo caracteres alfabéticos, numéricos, de subrayado o guiones en minúsculas.
- metricName
- String
Nombre de la métrica.
- metricNamespace
- String
Espacio de nombres de métrica para el que se van a consultar las definiciones de métricas.
- timespan
- String
El intervalo de tiempo de la consulta. Es una cadena con el siguiente formato "startDateTime_ISO/endDateTime_ISO".
- content
- RequestContent
Contenido que se va a enviar como el cuerpo de la solicitud. Los detalles del esquema del cuerpo de la solicitud se encuentran en la sección Comentarios a continuación.
- aggregation
- String
Agregación.
- interval
- String
Intervalo (es decir, timegrain) de la consulta. Valores permitidos: "PT5S" | "PT10S" | "PT1M" | "PT5M" | "PT1H".
- context
- RequestContext
Contexto de solicitud, que puede invalidar los comportamientos predeterminados de la canalización de cliente por llamada.
Devoluciones
del AsyncPageable<T> servicio que contiene una lista de BinaryData objetos. Los detalles del esquema del cuerpo de cada elemento de la colección se encuentran en la sección Comentarios a continuación.
Excepciones
testRunId
, metricName
, metricNamespace
o timespan
es un valor null.
testRunId
es una cadena vacía y se espera que no esté vacía.
El servicio devolvió un código de estado no correcto.
Ejemplos
En este ejemplo se muestra cómo llamar a GetMetricsAsync con los parámetros necesarios y analizar el resultado.
var credential = new DefaultAzureCredential();
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new LoadTestRunClient(endpoint, credential);
var data = new {};
await foreach (var data in client.GetMetricsAsync("<testRunId>", "<metricname>", "<metricNamespace>", "<timespan>", RequestContent.Create(data)))
{
JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement;
Console.WriteLine(result.ToString());
}
En este ejemplo se muestra cómo llamar a GetMetricsAsync con todos los parámetros y solicitar contenido, y cómo analizar el resultado.
var credential = new DefaultAzureCredential();
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new LoadTestRunClient(endpoint, credential);
var data = new {
filters = new[] {
new {
name = "<name>",
values = new[] {
"<String>"
},
}
},
};
await foreach (var data in client.GetMetricsAsync("<testRunId>", "<metricname>", "<metricNamespace>", "<timespan>", RequestContent.Create(data), "<aggregation>", "<interval>"))
{
JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("data")[0].GetProperty("timestamp").ToString());
Console.WriteLine(result.GetProperty("data")[0].GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("dimensionValues")[0].GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("dimensionValues")[0].GetProperty("value").ToString());
}
Comentarios
A continuación se muestra el esquema JSON para la carga de la solicitud y un elemento de la respuesta paginable.
Cuerpo de la solicitud:
Esquema para MetricRequestPayload
:
{
filters: [
{
name: string, # Optional. The dimension name
values: [string], # Optional. The dimension values. Maximum values can be 20.
}
], # Optional. Get metrics for specific dimension values. Example: Metric contains dimension like SamplerName, Error. To retrieve all the time series data where SamplerName is equals to HTTPRequest1 or HTTPRequest2, the DimensionFilter value will be {"SamplerName", ["HTTPRequest1", "HTTPRequest2"}
}
Cuerpo de la respuesta:
Esquema para MetricsValue
:
{
data: [
{
timestamp: string, # Optional. The timestamp for the metric value in ISO 8601 format.
value: number, # Optional. The metric value.
}
], # Optional. An array of data points representing the metric values.
dimensionValues: [
{
name: string, # Optional. The name of the dimension.
value: string, # Optional. The value of the dimension.
}
], # Optional. The dimension values
}
Se aplica a
Azure SDK for .NET