Package google.api

Indice

Distribuzione

Distribution contiene statistiche di riepilogo relative a una popolazione di valori. Contiene facoltativamente un istogramma che rappresenta la distribuzione di questi valori in un insieme di bucket.

Le statistiche riepilogative sono il conteggio, la media e la somma delle deviazioni quadrate dalla media, dal valore minimo e massimo dell'insieme di valori della popolazione. L'istogramma si basa su una sequenza di bucket e fornisce il conteggio dei valori che rientrano in ciascun bucket. I limiti dei bucket sono indicati esplicitamente o da formule per i bucket di larghezze fisse o crescenti in modo esponenziale.

Sebbene non sia vietato, di solito è una cattiva idea includere valori non finiti (infiniti o NaN) nella popolazione di valori, poiché in questo modo i campi mean e sum_of_squared_deviation saranno privi di significato.

Campi
count

int64

Il numero di valori nella popolazione. Non deve essere un valore negativo. Questo valore deve corrispondere alla somma dei valori in bucket_counts, se viene fornito un istogramma.

mean

double

La media aritmetica dei valori nella popolazione. Se count è zero, questo campo deve essere pari a zero.

sum_of_squared_deviation

double

La somma delle deviazioni quadrate dalla media dei valori nella popolazione. Per i valori x_i è:

Sum[i=1..n]((x_i - mean)^2)

Knuth, "L'arte della programmazione informatica", Vol. 2, pagina 232, terza edizione descrive il metodo di Welford per accumulare questa somma in un solo passaggio.

Se count è zero, questo campo deve essere pari a zero.

range

Range

Se specificato, contiene l'intervallo dei valori della popolazione. Il campo non deve essere presente se il valore di count è zero.

bucket_options

BucketOptions

Definisce i limiti dei bucket dell'istogramma. Se la distribuzione non contiene un istogramma, ometti questo campo.

bucket_counts[]

int64

Il numero di valori in ogni bucket dell'istogramma, come descritto in bucket_options. Se la distribuzione non dispone di un istogramma, ometti questo campo. Se è presente un istogramma, la somma dei valori in bucket_counts deve corrispondere al valore nel campo count della distribuzione.

Se presente, bucket_counts deve contenere N valori, dove N è il numero di bucket specificato in bucket_options. Se si forniscono meno di N valori, si presume che i valori rimanenti siano 0.

L'ordine dei valori in bucket_counts segue gli schemi di numerazione dei bucket descritti per i tre tipi di bucket. Il primo valore deve corrispondere al conteggio del bucket di underflow (numero 0). I successivi valori N-2 sono i conteggi per i bucket finiti (numero da 1 a N-2). Il N° valore in bucket_counts corrisponde al conteggio del bucket di overflow (numero N-1).

exemplars[]

Exemplar

Il campo deve essere in ordine crescente nel seguente modo: value.

BucketOptions

BucketOptions descrive i limiti dei bucket utilizzati per creare un istogramma per la distribuzione. I bucket possono essere in sequenza lineare, esponenziale oppure ogni bucket può essere specificato in modo esplicito. BucketOptions non include il numero di valori in ogni bucket.

Un bucket ha un limite inferiore inclusivo ed un limite superiore esclusivo per i valori conteggiati per quel bucket. Il limite superiore di un bucket deve essere strettamente maggiore del limite inferiore. La sequenza di N bucket per una distribuzione è composta da un bucket di underflow (numero 0), zero o più bucket finiti (numero da 1 a N-2) e un bucket di overflow (numero N - 1). I bucket sono contigui: il limite inferiore del bucket i (i > 0) è uguale al limite superiore del bucket i - 1. I bucket coprono l'intero intervallo di valori finiti: il limite inferiore del bucket di underflow è -infinito, e il limite superiore del bucket di overflow è +infinito. I bucket finiti vengono chiamati perché entrambi i limiti sono finiti.

Campi
Campo di unione options. Deve essere impostato esattamente uno di questi tre campi. options può essere solo uno dei seguenti:
linear_buckets

Linear

Il bucket lineare.

exponential_buckets

Exponential

I bucket esponenziali.

explicit_buckets

Explicit

I bucket espliciti.

Esplicito

Specifica un insieme di bucket con larghezze arbitrarie.

Sono presenti size(bounds) + 1 (= N) bucket. Il bucket i ha i seguenti limiti:

Limite superiore (0 <= i < N-1): limiti[i] Limite inferiore (1 <= i < N); limiti[i - 1]

Il campo bounds deve contenere almeno un elemento. Se bounds ha un solo elemento, non esistono bucket limitati e quel singolo elemento rappresenta il limite comune dei bucket di overflow e underflow.

Campi
bounds[]

double

I valori devono essere crescenti monotonicamente.

Esponenziale

Specifica una sequenza esponenziale di bucket con una larghezza proporzionale al valore del limite inferiore. Ogni bucket rappresenta un'incertezza relativa costante su un valore specifico del bucket.

Sono presenti num_finite_buckets + 2 (= N) bucket. Il bucket i ha i seguenti limiti:

Limite superiore (0 <= i < N-1): scala * (fattore_crescita ^ i).

Limite inferiore (1 <= i < N): scala * (fattore_crescita ^ (i - 1)).

Campi
num_finite_buckets

int32

Deve essere maggiore di 0.

growth_factor

double

Deve essere maggiore di 1.

scale

double

Deve essere maggiore di 0.

Lineare

Specifica una sequenza lineare di bucket che hanno tutti la stessa larghezza (eccetto overflow e underflow). Ogni bucket rappresenta un'incertezza assoluta costante sul valore specifico del bucket.

Sono presenti num_finite_buckets + 2 (= N) bucket. Il bucket i ha i seguenti limiti:

Limite superiore (0 <= i < N-1): offset + (larghezza * i).

Limite inferiore (1 <= i < N): offset + (larghezza * (i - 1)).

Campi
num_finite_buckets

int32

Deve essere maggiore di 0.

width

double

Deve essere maggiore di 0.

offset

double

Limite inferiore del primo bucket.

Esemplare

Gli esempi sono punti di esempio che possono essere utilizzati per annotare valori di distribuzione aggregati. Sono metadati che forniscono informazioni su un particolare valore aggiunto a un bucket di distribuzione, ad esempio un ID traccia che era attivo quando è stato aggiunto un valore. Potrebbero contenere ulteriori informazioni, ad esempio valori e timestamp di esempio, origine e così via.

Campi
value

double

Valore del punto esemplare. Questo valore determina a quale bucket appartiene l'esempio.

timestamp

Timestamp

Il tempo di osservazione (campionamento) del valore sopra indicato.

attachments[]

Any

Informazioni contestuali sul valore di esempio. Ecco alcuni esempi:

Trace: type.googleapis.com/google.monitoring.v3.SpanContext

Stringa letterale: type.googleapis.com/google.protobuf.StringValue

Etichette eliminate durante l'aggregazione: type.googleapis.com/google.monitoring.v3.DroppedLabels

Può esserci un solo allegato di un determinato tipo di messaggio in un singolo esemplare, e questo viene applicato dal sistema.

chiavi

L'intervallo dei valori della popolazione.

Campi
min

double

Il minimo dei valori della popolazione.

max

double

Il massimo dei valori della popolazione.

MetricDescriptor

Questo tipo non contiene campi.

Definisce un tipo di metrica e il relativo schema. Una volta creato un descrittore della metrica, la sua eliminazione o modifica interrompe la raccolta dei dati e rende inutilizzabili i dati esistenti del tipo di metrica.

MetricKind

Il tipo di misurazione. Descrive il modo in cui i dati vengono riportati. Per informazioni sull'impostazione dell'ora di inizio e di fine in base a MetricKind, consulta [TimeInterval][google.monitoring.v3.TimeInterval].

Enum
METRIC_KIND_UNSPECIFIED Non utilizzare questo valore predefinito.
GAUGE La misurazione istantanea di un valore.
DELTA La modifica di un valore durante un intervallo di tempo.
CUMULATIVE Un valore accumulato in un intervallo di tempo. Le misurazioni cumulative in una serie temporale devono avere la stessa ora di inizio e ore di fine crescenti, finché un evento non reimposta il valore cumulativo su zero e imposta una nuova ora di inizio per i punti successivi.

ValueType

Il tipo di valore di una metrica.

Enum
VALUE_TYPE_UNSPECIFIED Non utilizzare questo valore predefinito.
BOOL Il valore è un valore booleano. Questo tipo di valore può essere utilizzato solo se il tipo di metrica è GAUGE.
INT64 Il valore è un numero intero a 64 bit firmato.
DOUBLE Il valore è un numero in virgola mobile a precisione doppia.
STRING Il valore è una stringa di testo. Questo tipo di valore può essere utilizzato solo se il tipo di metrica è GAUGE.
DISTRIBUTION Il valore è un Distribution.
MONEY Il valore è il denaro.