Distribution contiene estadísticas de resumen de una población de valores. Opcionalmente, contiene un histograma que representa la distribución de esos valores en un conjunto de segmentos.
Las estadísticas de resumen son el recuento, la media, la suma de la desviación cuadrática de la media, el mínimo y el máximo del conjunto de valores de la población. El histograma se basa en una secuencia de contenedores y ofrece un recuento de los valores que corresponden a cada contenedor. Los límites de los segmentos se indican de forma explícita o mediante fórmulas para segmentos de anchura fija o exponencialmente creciente.
Aunque no está prohibido, por lo general no es recomendable incluir valores no finitos (infinitos o NaN) en la población de valores, ya que esto hará que los campos mean y sumOfSquaredDeviation no tengan sentido.
| Representación JSON |
|---|
{ "count": string, "mean": number, "sumOfSquaredDeviation": number, "range": { object ( |
| Campos | |
|---|---|
count |
Número de valores de la población. No debe ser negativo. Este valor debe ser igual a la suma de los valores de |
mean |
La media aritmética de los valores de la población. Si |
sumOfSquaredDeviation |
Suma de las desviaciones cuadráticas de la media de los valores de la población. En el caso de los valores x_i, se calcula de la siguiente manera: Knuth, "The Art of Computer Programming", vol. 2, página 232, 3.ª edición, describe el método de Welford para acumular esta suma en una sola pasada. Si |
range |
Si se especifica, contiene el intervalo de los valores de la población. El campo no debe estar presente si |
bucketOptions |
Define los límites de los contenedores del histograma. Si la distribución no contiene un histograma, omite este campo. |
bucketCounts[] |
Número de valores de cada segmento del histograma, tal como se describe en Si está presente, El orden de los valores de |
exemplars[] |
Debe estar en orden ascendente del campo |
Intervalo
Intervalo de los valores de la población.
| Representación JSON |
|---|
{ "min": number, "max": number } |
| Campos | |
|---|---|
min |
El mínimo de los valores de la población. |
max |
El máximo de los valores de la población. |
BucketOptions
BucketOptions describe los límites de los segmentos que se usan para crear un histograma de la distribución. Los segmentos pueden estar en una secuencia lineal o exponencial, o bien se pueden especificar explícitamente. BucketOptions no incluye el número de valores de cada contenedor.
Un segmento tiene un límite inferior inclusivo y un límite superior exclusivo para los valores que se contabilizan en ese segmento. El límite superior de un segmento debe ser estrictamente mayor que el límite inferior. La secuencia de N segmentos de una distribución consta de un segmento de subdesbordamiento (número 0), cero o más segmentos finitos (números del 1 al N-2) y un segmento de desbordamiento (número N-1). Los segmentos son contiguos: el límite inferior del segmento i (i > 0) es el mismo que el límite superior del segmento i - 1. Los segmentos abarcan todo el intervalo de valores finitos: el límite inferior del segmento de subdesbordamiento es -infinito y el límite superior del segmento de desbordamiento es +infinito. Los contenedores finitos se denominan así porque ambos límites son finitos.
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión options. Se debe definir exactamente uno de estos tres campos. options solo puede ser una de estas dos opciones: |
|
linearBuckets |
El segmento lineal. |
exponentialBuckets |
Los segmentos exponenciales. |
explicitBuckets |
Los segmentos explícitos. |
Lineal
Especifica una secuencia lineal de segmentos que tienen la misma anchura (excepto los segmentos de desbordamiento y de falta de flujo). Cada contenedor representa una incertidumbre absoluta constante sobre el valor específico del contenedor.
Hay numFiniteBuckets + 2 (= N) segmentos. El segmento i tiene los siguientes límites:
Límite superior (0 <= i < N-1): offset + (width * i).
Límite inferior (1 <= i < N): offset + (width * (i - 1)).
| Representación JSON |
|---|
{ "numFiniteBuckets": integer, "width": number, "offset": number } |
| Campos | |
|---|---|
numFiniteBuckets |
Debe ser superior a 0. |
width |
Debe ser superior a 0. |
offset |
Límite inferior del primer segmento. |
Exponencial
Especifica una secuencia exponencial de contenedores que tienen una anchura proporcional al valor del límite inferior. Cada contenedor representa una incertidumbre relativa constante sobre un valor específico del contenedor.
Hay numFiniteBuckets + 2 (= N) segmentos. El segmento i tiene los siguientes límites:
Límite superior (0 <= i < N-1): scale * (growthFactor ^ i).
Límite inferior (1 <= i < N): scale * (growthFactor ^ (i - 1)).
| Representación JSON |
|---|
{ "numFiniteBuckets": integer, "growthFactor": number, "scale": number } |
| Campos | |
|---|---|
numFiniteBuckets |
Debe ser superior a 0. |
growthFactor |
Debe ser superior a 1. |
scale |
Debe ser superior a 0. |
Explícito
Especifica un conjunto de contenedores con anchuras arbitrarias.
Hay size(bounds) + 1 (= N) segmentos. El segmento i tiene los siguientes límites:
Límite superior (0 <= i < N-1): bounds[i] Límite inferior (1 <= i < N): bounds[i - 1]
El campo bounds debe contener al menos un elemento. Si bounds solo tiene un elemento, no hay contenedores finitos y ese elemento es el límite común de los contenedores de desbordamiento y de subdesbordamiento.
| Representación JSON |
|---|
{ "bounds": [ number ] } |
| Campos | |
|---|---|
bounds[] |
Los valores deben aumentar de forma monótona. |
Exemplar
Los ejemplares son puntos de ejemplo que se pueden usar para anotar valores de distribución agregados. Son metadatos que proporcionan información sobre un valor concreto añadido a un segmento de distribución, como un ID de seguimiento que estaba activo cuando se añadió un valor. Pueden contener más información, como valores de ejemplo, marcas de tiempo, origen, etc.
| Representación JSON |
|---|
{ "value": number, "timestamp": string, "attachments": [ { "@type": string, field1: ..., ... } ] } |
| Campos | |
|---|---|
value |
Valor del punto ejemplar. Este valor determina a qué contenedor pertenece el ejemplar. |
timestamp |
Hora de observación (muestreo) del valor anterior. Usa RFC 3339, donde la salida generada siempre se normaliza con Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otros desplazamientos distintos de "Z". Ejemplos: |
attachments[] |
Información contextual sobre el valor de ejemplo. Por ejemplo: Trace: type.googleapis.com/google.monitoring.v3.SpanContext Cadena literal: type.googleapis.com/google.protobuf.StringValue Etiquetas descartadas durante la agregación: type.googleapis.com/google.monitoring.v3.DroppedLabels Solo puede haber un archivo adjunto de un tipo de mensaje determinado en un solo ejemplar, y el sistema lo aplica. Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |