BillingView

Messaggio per la segnalazione di richieste di fatturazione tramite Eventstream.

Rappresentazione JSON
{
  "reportRequests": [
    {
      object (ReportRequest)
    }
  ]
}
Campi
reportRequests[]

object (ReportRequest)

Richieste di fatturazione da segnalare per cloud.eventstream.v2.ResourceEvent

ReportRequest

Messaggio di richiesta per il metodo services.report.

Rappresentazione JSON
{
  "serviceName": string,
  "operations": [
    {
      object (Operation)
    }
  ],
  "serviceConfigId": string
}
Campi
serviceName

string

Il nome del servizio specificato nella relativa configurazione. Ad esempio, "pubsub.googleapis.com".

Per la definizione di un nome di servizio, vedi google.api.Service.

operations[]

object (Operation)

Operazioni da segnalare.

In genere, il servizio deve segnalare un'operazione per richiesta. È consentito inserire più operazioni in una singola richiesta, ma questa funzionalità deve essere utilizzata solo quando più operazioni sono naturalmente disponibili al momento della generazione del report.

Non esiste un limite al numero di operazioni nella stessa ReportRequest, ma le dimensioni di ReportRequest non devono superare 1 MB. Per informazioni sul comportamento in caso di errore parziale, consulta la pagina ReportResponse.report_errors.

serviceConfigId

string

Specifica la versione della configurazione del servizio da utilizzare per elaborare la richiesta.

Se non specificata o se non è possibile trovare una versione corrispondente, verrà utilizzata l'ultima.

Operazione

Rappresenta le informazioni relative a un'operazione.

Rappresentazione JSON
{
  "operationId": string,
  "operationName": string,
  "consumerId": string,
  "startTime": string,
  "endTime": string,
  "labels": {
    string: string,
    ...
  },
  "metricValueSets": [
    {
      object (MetricValueSet)
    }
  ],
  "logEntries": [
    {
      object (LogEntry)
    }
  ],
  "quotaProperties": {
    object (QuotaProperties)
  },
  "importance": enum (Importance),
  "userLabels": {
    string: string,
    ...
  },
  "resources": [
    {
      object (ResourceInfo)
    }
  ],
  "traceSpans": [
    {
      object (TraceSpan)
    }
  ]
}
Campi
operationId

string

Identità dell'operazione. Deve essere univoco nell'ambito del servizio che ha generato l'operazione. Se il servizio chiama services.check() e services.report() sulla stessa operazione, le due chiamate devono avere lo stesso ID.

Si consiglia l'uso di UUID versione 4, anche se non è obbligatorio. Negli scenari in cui un'operazione viene calcolata a partire da informazioni esistenti e un ID idempotente è auspicabile ai fini della deduplicazione, è consigliato l'UUID versione 5. Per maggiori dettagli, consulta RFC 4122.

operationName

string

Nome completo dell'operazione. Riservato per l'uso futuro.

consumerId

string

Identità del consumer che utilizza il servizio. Questo campo deve essere compilato per le operazioni avviate da un consumatore, ma non per le operazioni avviate dal servizio che non sono correlate a un consumatore specifico.

  • Può essere in uno dei seguenti formati:
    • project:PROJECT_ID,
    • project_number:PROJECT_NUMBER,
    • projects/PROJECT_ID o PROJECT_NUMBER,
    • folders/FOLDER_NUMBER,
    • organizations/ORGANIZATION_NUMBER,
    • api_key:API_KEY.
startTime

string (Timestamp format)

Obbligatorio. Ora di inizio dell'operazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Ora di fine dell'operazione. Obbligatorio quando l'operazione viene utilizzata in ServiceController.Report, ma facoltativo quando viene utilizzata in ServiceController.Check.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Etichette che descrivono l'operazione. Sono consentite solo le seguenti etichette:

  • Etichette che descrivono le risorse monitorate come definite nella configurazione del servizio.
  • Etichette predefinite dei valori delle metriche. Se specificate, le etichette definite nell'override del valore della metrica sostituiscono questi valori predefiniti.
  • Le seguenti etichette definite da Google Cloud Platform:
    • cloud.googleapis.com/location che descrive la posizione in cui si è verificata l'operazione,
    • servicecontrol.googleapis.com/userAgent che descrive lo user agent della richiesta API,
    • servicecontrol.googleapis.com/service_agent che descrive il servizio utilizzato per gestire la richiesta API (ad es. ESP),
    • servicecontrol.googleapis.com/platform che descrive la piattaforma in cui viene pubblicata l'API, ad esempio App Engine, Compute Engine o Kubernetes Engine.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

metricValueSets[]

object (MetricValueSet)

Rappresenta le informazioni su questa operazione. Ogni MetricValueSet corrisponde a una metrica definita nella configurazione del servizio. Il tipo di dati utilizzato in MetricValueSet deve corrispondere al tipo di dati specificato nella definizione della metrica.

In una singola operazione, non è consentito avere più di un'istanza MetricValue con gli stessi nomi delle metriche e combinazioni di valori delle etichette identiche. Se una richiesta contiene istanze MetricValue duplicate, l'intera richiesta viene rifiutata con un errore di argomento non valido.

logEntries[]

object (LogEntry)

Rappresenta le informazioni da registrare.

quotaProperties

object (QuotaProperties)

Rappresenta le proprietà necessarie per il controllo della quota. Applicabile solo se questa operazione riguarda una richiesta di controllo della quota. Se non viene specificato, non verrà eseguito alcun controllo della quota.

importance

enum (Importance)

NON UTILIZZARE. Questo è un campo sperimentale.

userLabels

map (key: string, value: string)

Anteprima privata. Questa funzionalità è disponibile solo per i servizi approvati.

Etichette definite dall'utente per la risorsa a cui è associata questa operazione.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

resources[]

object (ResourceInfo)

Le risorse coinvolte nell'operazione. Il numero massimo di voci supportate in questo campo è 100.

traceSpans[]

object (TraceSpan)

Non implementato. Un elenco di intervalli Cloud Trace. I nomi degli intervalli devono contenere l'ID del progetto di destinazione, che può essere il progetto di produzione o di consumo.

MetricValueSet

Rappresenta un insieme di valori di una stessa metrica. Ogni valore della metrica nel set deve avere una combinazione univoca di ora di inizio, ora di fine e valori delle etichette.

Rappresentazione JSON
{
  "metricName": string,
  "metricValues": [
    {
      object (MetricValue)
    }
  ]
}
Campi
metricName

string

Il nome della metrica definito nella configurazione del servizio.

metricValues[]

object (MetricValue)

I valori di questa metrica.

MetricValue

Rappresenta un singolo valore della metrica.

Rappresentazione JSON
{
  "labels": {
    string: string,
    ...
  },
  "startTime": string,
  "endTime": string,

  // Union field value can be only one of the following:
  "boolValue": boolean,
  "int64Value": string,
  "doubleValue": number,
  "stringValue": string,
  "distributionValue": {
    object (Distribution)
  },
  "moneyValue": {
    object (Money)
  }
  // End of list of possible types for union field value.
}
Campi
labels

map (key: string, value: string)

Le etichette che descrivono il valore della metrica. Consulta i commenti su google.api.servicecontrol.v1.Operation.labels per la relazione di override. Tieni presente che questa mappa non deve contenere etichette risorsa monitorata.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

startTime

string (Timestamp format)

L'inizio del periodo di tempo a cui si applica la misurazione del valore di questa metrica. Il periodo di tempo ha una semantica diversa per i diversi tipi di metrica (cumulativa, delta e indicatore). Per maggiori dettagli, consulta la documentazione sulla definizione delle metriche nella configurazione del servizio. Se non specificato, verrà utilizzato google.api.servicecontrol.v1.Operation.start_time.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

La fine del periodo di tempo a cui si applica la misurazione del valore di questa metrica. Se non specificato, verrà utilizzato google.api.servicecontrol.v1.Operation.end_time.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo unione value. Il valore. Il tipo di valore utilizzato nella richiesta deve corrispondere alla definizione della metrica nella configurazione del servizio, altrimenti MetricValue viene rifiutato. value può essere solo uno dei seguenti tipi:
boolValue

boolean

Un valore booleano.

int64Value

string (int64 format)

Un valore intero a 64 bit con segno.

doubleValue

number

Un valore con rappresentazione in virgola mobile a precisione doppia.

stringValue

string

Un valore stringa di testo.

distributionValue

object (Distribution)

Un valore di distribuzione.

moneyValue

object (Money)

Un valore monetario.

Distribuzione

La distribuzione rappresenta una distribuzione di frequenza di punti di campionamento a doppio valore. Contiene le dimensioni della popolazione di punti di campionamento più ulteriori informazioni facoltative:

  • la media aritmetica dei campioni
  • il minimo e il massimo dei campioni
  • la somma dei quadrati degli scarti dei campioni, utilizzata per calcolare la varianza
  • un istogramma dei valori dei punti di campionamento
Rappresentazione JSON
{
  "count": string,
  "mean": number,
  "minimum": number,
  "maximum": number,
  "sumOfSquaredDeviation": number,
  "bucketCounts": [
    string
  ],
  "exemplars": [
    {
      object (Exemplar)
    }
  ],

  // Union field bucket_option can be only one of the following:
  "linearBuckets": {
    object (LinearBuckets)
  },
  "exponentialBuckets": {
    object (ExponentialBuckets)
  },
  "explicitBuckets": {
    object (ExplicitBuckets)
  }
  // End of list of possible types for union field bucket_option.
}
Campi
count

string (int64 format)

Il numero totale di campioni nella distribuzione. Deve essere >= 0.

mean

number

La media aritmetica dei campioni nella distribuzione. Se count è zero, questo campo deve essere zero.

minimum

number

Il minimo della popolazione di valori. Ignorato se count è zero.

maximum

number

Il valore massimo della popolazione di valori. Ignorato se count è zero.

sumOfSquaredDeviation

number

La somma dei quadrati delle deviazioni dalla media: Sum[i=1..count]((x_i - mean)^2) dove ogni x_i è un valore di esempio. Se count è zero, anche questo campo deve essere zero, altrimenti la convalida della richiesta non va a buon fine.

bucketCounts[]

string (int64 format)

Il numero di campioni in ogni bucket dell'istogramma. bucketCounts sono facoltativi. Se presenti, la loro somma deve essere uguale al valore di count.

Le fasce sono definite di seguito in bucket_option. Ci sono N bucket. bucketCounts[0] è il numero di campioni nel bucket di underflow. bucketCounts[1] a bucketCounts[N-1] sono i numeri di campioni in ciascuno dei bucket finiti. bucketCounts[N] è il numero di campioni nel bucket di overflow. Per ulteriori dettagli, consulta i commenti di bucket_option riportati di seguito.

Qualsiasi suffisso di zeri finali può essere omesso.

exemplars[]

object (Exemplar)

Punti di esempio. Deve essere in ordine crescente del campo value.

Campo unione bucket_option. Definisce i bucket nell'istogramma. bucket_option e bucket_counts devono essere impostati o non impostati.

I bucket sono numerati nell'intervallo [0, N], con un totale di N+1 bucket. Devono essere presenti almeno due bucket (un istogramma a un solo bucket non fornisce informazioni non già fornite da count).

Il primo bucket è il bucket di underflow, il cui limite inferiore è -inf. L'ultimo bucket è il bucket di overflow, che ha un limite superiore di +inf. Tutti gli altri bucket (se presenti) sono chiamati bucket "finiti" perché hanno limiti inferiore e superiore finiti. Come descritto di seguito, esistono tre modi per definire i bucket finiti.

(1) Bucket con larghezza costante. (2) Bucket con larghezze in crescita esponenziale. (3) Bucket con larghezze arbitrarie fornite dall'utente.

In tutti i casi, i bucket coprono l'intera retta dei numeri reali (-inf, +inf). I limiti superiori dei bucket sono esclusivi e i limiti inferiori sono inclusi. Il limite superiore del bucket di underflow è uguale al limite inferiore del bucket finito più piccolo; il limite inferiore del bucket di overflow è uguale al limite superiore del bucket finito più grande. bucket_option può essere solo uno dei seguenti tipi:

linearBuckets

object (LinearBuckets)

Bucket con larghezza costante.

exponentialBuckets

object (ExponentialBuckets)

Bucket con larghezza in crescita esponenziale.

explicitBuckets

object (ExplicitBuckets)

Bucket con larghezza arbitraria fornita dall'utente.

LinearBuckets

Descrizione dei bucket con larghezza costante.

Rappresentazione JSON
{
  "numFiniteBuckets": integer,
  "width": number,
  "offset": number
}
Campi
numFiniteBuckets

integer

Il numero di bucket finiti. Con i bucket di underflow e overflow, il numero totale di bucket è numFiniteBuckets + 2. Per maggiori dettagli, consulta i commenti su bucketOptions.

width

number

L'i-esimo bucket lineare copre l'intervallo [offset + (i-1) * width, offset + i * width), dove i varia da 1 a numFiniteBuckets, inclusi. Deve essere strettamente positivo.

offset

number

L'i-esimo bucket lineare copre l'intervallo [offset + (i-1) * width, offset + i * width), dove i varia da 1 a numFiniteBuckets, inclusi.

ExponentialBuckets

Descrizione dei bucket con larghezza in crescita esponenziale.

Rappresentazione JSON
{
  "numFiniteBuckets": integer,
  "growthFactor": number,
  "scale": number
}
Campi
numFiniteBuckets

integer

Il numero di bucket finiti. Con i bucket di underflow e overflow, il numero totale di bucket è numFiniteBuckets + 2. Per maggiori dettagli, consulta i commenti su bucketOptions.

growthFactor

number

L'i-esimo bucket esponenziale copre l'intervallo [scala * fattore di crescita^(i-1), scala * fattore di crescita^i), dove i va da 1 a numFiniteBuckets inclusi. Deve essere maggiore di 1.0.

scale

number

L'i-esimo bucket esponenziale copre l'intervallo [scala * fattore di crescita^(i-1), scala * fattore di crescita^i), dove i va da 1 a numFiniteBuckets inclusi. Deve essere maggiore di 0.

ExplicitBuckets

Descrizione dei bucket con larghezza arbitraria fornita dall'utente.

Rappresentazione JSON
{
  "bounds": [
    number
  ]
}
Campi
bounds[]

number

"bound" è un elenco di limiti strettamente crescenti tra i bucket. Tieni presente che un elenco di lunghezza N-1 definisce N bucket a causa del fenceposting. Per maggiori dettagli, consulta i commenti su bucketOptions.

L'i-esimo bucket finito copre l'intervallo [bound[i-1], bound[i]), dove i va da 1 a bound_size() - 1. Tieni presente che non esistono bucket finiti se "bound" contiene un solo elemento; in questo caso speciale, il singolo limite definisce il confine tra i bucket di underflow e overflow.

bucket number lower bound upper bound i == 0 (underflow) -inf bound[i] 0 < i < bound_size() bound[i-1] bound[i] i == bound_size() (overflow) bound[i-1] +inf

Esemplare

Gli esemplari sono punti di esempio che possono essere utilizzati per annotare i valori di distribuzione aggregati. Si tratta di metadati che forniscono informazioni su un determinato valore aggiunto a un bucket di distribuzione, ad esempio un ID traccia attivo quando è stato aggiunto un valore. Possono contenere ulteriori informazioni, come valori ed esempi di timestamp, origine e così via.

Rappresentazione JSON
{
  "value": number,
  "timestamp": string,
  "attachments": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campi
value

number

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

timestamp

string (Timestamp format)

L'ora di osservazione (campionamento) del valore precedente.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

attachments[]

object

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

In un singolo esemplare può essere presente un solo allegato di un determinato tipo di messaggio e questo viene applicato dal sistema.

Un oggetto contenente campi di tipo arbitrario. Un campo aggiuntivo "@type" contenente un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }.

Denaro

Rappresenta un importo di denaro con il relativo tipo di valuta.

Rappresentazione JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
Campi
currencyCode

string

Il codice valuta di tre lettere definito nello standard ISO 4217.

units

string (int64 format)

Le unità intere dell'importo. Ad esempio, se currencyCode è "USD", un'unità corrisponde a un dollaro statunitense.

nanos

integer

Numero di unità nano (10^-9) dell'importo. Il valore deve essere compreso tra -999.999.999 e +999.999.999 inclusi. Se units è positivo, nanos deve essere positivo o zero. Se units è zero, nanos può essere positivo, zero o negativo. Se units è negativo, nanos deve essere negativo o zero. Ad esempio, -1,75 $ è rappresentato come units=-1 e nanos=-750.000.000.

LogEntry

Una singola voce di log.

Rappresentazione JSON
{
  "name": string,
  "timestamp": string,
  "severity": enum (LogSeverity),
  "httpRequest": {
    object (HttpRequest)
  },
  "trace": string,
  "insertId": string,
  "labels": {
    string: string,
    ...
  },
  "operation": {
    object (LogEntryOperation)
  },
  "sourceLocation": {
    object (LogEntrySourceLocation)
  },

  // Union field payload can be only one of the following:
  "protoPayload": {
    "@type": string,
    field1: ...,
    ...
  },
  "textPayload": string,
  "structPayload": {
    object
  }
  // End of list of possible types for union field payload.
}
Campi
name

string

Obbligatorio. Il log a cui appartiene questa voce di log. Esempi: "syslog", "book_log".

timestamp

string (Timestamp format)

L'ora in cui si è verificato l'evento descritto dalla voce di log. Se omesso, il valore predefinito è l'ora di inizio dell'operazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

severity

enum (LogSeverity)

La gravità della voce di log. Il valore predefinito è LogSeverity.DEFAULT.

httpRequest

object (HttpRequest)

Facoltativo. Informazioni sulla richiesta HTTP associata a questa voce di log, se applicabile.

trace

string

Facoltativo. Nome della risorsa della traccia associata alla voce di log, se presente. Se questo campo contiene un nome di risorsa relativo, puoi presupporre che il nome sia relativo a //tracing.googleapis.com. Esempio: projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824

insertId

string

Un ID univoco per la voce di log utilizzato per la deduplicazione. Se viene omesso, l'implementazione ne genererà uno in base a operationId.

labels

map (key: string, value: string)

Un insieme di dati (chiave, valore) definiti dall'utente che forniscono informazioni aggiuntive sulla voce di log.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

operation

object (LogEntryOperation)

Facoltativo. Informazioni su un'operazione associata alla voce di log, se applicabile.

sourceLocation

object (LogEntrySourceLocation)

Facoltativo. Eventuali informazioni sulla posizione del codice sorgente associate alla voce di log.

Campo unione payload. Il payload della voce di log, che può essere di più tipi. payload può essere solo uno dei seguenti tipi:
protoPayload

object

Il payload della voce di log, rappresentato come un protocol buffer espresso come oggetto JSON. L'unico tipo accettato al momento è AuditLog.

Un oggetto contenente campi di tipo arbitrario. Un campo aggiuntivo "@type" contenente un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }.

textPayload

string

Il payload della voce di log, rappresentato come stringa Unicode (UTF-8).

structPayload

object (Struct format)

Il payload della voce di log, rappresentato come una struttura espressa come oggetto JSON.

HttpRequest

Un proto comune per il logging delle richieste HTTP. Contiene solo la semantica definita dalla specifica HTTP. Le informazioni di logging specifiche del prodotto DEVONO essere definite in un messaggio separato.

Rappresentazione JSON
{
  "requestMethod": string,
  "requestUrl": string,
  "requestSize": string,
  "status": integer,
  "responseSize": string,
  "userAgent": string,
  "remoteIp": string,
  "serverIp": string,
  "referer": string,
  "latency": string,
  "cacheLookup": boolean,
  "cacheHit": boolean,
  "cacheValidatedWithOriginServer": boolean,
  "cacheFillBytes": string,
  "protocol": string
}
Campi
requestMethod

string

Il metodo di richiesta. Esempi: "GET", "HEAD", "PUT", "POST".

requestUrl

string

Lo schema (http, https), il nome host, il percorso e la parte di query dell'URL richiesto. Esempio: "http://example.com/some/info?color=red".

requestSize

string (int64 format)

Le dimensioni del messaggio di richiesta HTTP in byte, incluse le intestazioni e il corpo della richiesta.

status

integer

Il codice di risposta che indica lo stato della risposta. Esempi: 200, 404.

responseSize

string (int64 format)

Le dimensioni del messaggio di risposta HTTP inviato al client, in byte, inclusi le intestazioni e il corpo della risposta.

userAgent

string

Lo user agent inviato dal client. Esempio: "Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)".

remoteIp

string

L'indirizzo IP (IPv4 o IPv6) del client che ha inviato la richiesta HTTP. Esempi: "192.168.1.1", "FE80::0202:B3FF:FE1E:8329".

serverIp

string

L'indirizzo IP (IPv4 o IPv6) del server di origine a cui è stata inviata la richiesta.

referer

string

L'URL referrer della richiesta, come definito in HTTP/1.1 Header Field Definitions.

latency

string (Duration format)

La latenza di elaborazione delle richieste sul server, dal momento in cui la richiesta è stata ricevuta fino all'invio della risposta.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

cacheLookup

boolean

Indica se è stato tentato o meno una ricerca nella cache.

cacheHit

boolean

Indica se un'entità è stata pubblicata dalla cache (con o senza convalida).

cacheValidatedWithOriginServer

boolean

Indica se la risposta è stata convalidata con il server di origine prima di essere fornita dalla cache. Questo campo è significativo solo se cacheHit è True.

cacheFillBytes

string (int64 format)

Il numero di byte della risposta HTTP inseriti nella cache. Impostato solo quando è stato tentato un riempimento della cache.

protocol

string

Protocollo utilizzato per la richiesta. Esempi: "HTTP/1.1", "HTTP/2", "websocket"

LogEntryOperation

Informazioni aggiuntive su un'operazione potenzialmente a lunga esecuzione a cui è associata una voce di log.

Rappresentazione JSON
{
  "id": string,
  "producer": string,
  "first": boolean,
  "last": boolean
}
Campi
id

string

Facoltativo. Un identificatore di operazione arbitrario. Le voci di log con lo stesso identificatore vengono considerate parte della stessa operazione.

producer

string

Facoltativo. Un identificatore del produttore arbitrario. La combinazione di id e producer deve essere univoca a livello globale. Esempi per producer: "MyDivision.MyBigCompany.com", "github.com/MyProject/MyApplication".

first

boolean

Facoltativo. Imposta questo valore su True se questa è la prima voce di log dell'operazione.

last

boolean

Facoltativo. Imposta questo valore su True se questa è l'ultima voce di log nell'operazione.

LogEntrySourceLocation

Informazioni aggiuntive sulla posizione del codice sorgente che ha prodotto la voce di log.

Rappresentazione JSON
{
  "file": string,
  "line": string,
  "function": string
}
Campi
file

string

Facoltativo. Nome del file di origine. A seconda dell'ambiente di runtime, potrebbe trattarsi di un nome semplice o di un nome completo.

line

string (int64 format)

Facoltativo. Riga all'interno del file di origine. In base 1; 0 indica che non è disponibile alcun numero di riga.

function

string

Facoltativo. Nome leggibile della funzione o del metodo richiamato, con contesto facoltativo come il nome della classe o del pacchetto. Queste informazioni possono essere utilizzate in contesti come il visualizzatore dei log, in cui un file e un numero di riga sono meno significativi. Il formato può variare in base alla lingua. Ad esempio: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).

QuotaProperties

Rappresenta le proprietà necessarie per le operazioni relative alle quote.

Rappresentazione JSON
{
  "quotaMode": enum (QuotaMode)
}
Campi
quotaMode

enum (QuotaMode)

Modalità di quota per questa operazione.

ResourceInfo

Descrive una risorsa associata a questa operazione.

Rappresentazione JSON
{
  "resourceContainer": string,
  "resourceName": string,
  "resourceLocation": string,
  "permission": string
}
Campi
resourceContainer

string

L'identificatore del padre di questa istanza della risorsa. Deve essere in uno dei seguenti formati: - projects/<project-id or project-number> - folders/<folder-id> - organizations/<organization-id>

resourceName

string

Nome della risorsa. Questi dati vengono utilizzati a fini di audit.

resourceLocation

string

Località della risorsa. Se non è vuoto, la risorsa verrà verificata in base alle norme relative alla posizione. Il valore deve essere una zona, una regione o una multiregione valida. Ad esempio: "europe-west4" o "northamerica-northeast1-a"

permission

string

L'autorizzazione della risorsa richiesta per questa richiesta.

TraceSpan

Uno span rappresenta una singola operazione all'interno di una traccia. Gli span possono essere nidificati per formare un albero di traccia. Spesso, una traccia contiene uno span radice che descrive la latenza end-to-end e uno o più subspans per le relative operazioni secondarie. Una traccia può anche contenere più span radice o nessuno. Gli intervalli non devono essere contigui: possono esserci lacune o sovrapposizioni tra gli intervalli in una traccia.

Rappresentazione JSON
{
  "name": string,
  "spanId": string,
  "parentSpanId": string,
  "displayName": {
    object (TruncatableString)
  },
  "startTime": string,
  "endTime": string,
  "attributes": {
    object (Attributes)
  },
  "status": {
    object (Status)
  },
  "sameProcessAsParentSpan": boolean,
  "childSpanCount": integer,
  "spanKind": enum (SpanKind)
}
Campi
name

string

Il nome della risorsa dello span nel seguente formato:

projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/[SPAN_ID]

[TRACE_ID] è un identificatore univoco per una traccia all'interno di un progetto; è una codifica esadecimale di 32 caratteri di un array di 16 byte.

[SPAN_ID] è un identificatore univoco di uno span all'interno di una traccia; è una codifica esadecimale di 16 caratteri di un array di 8 byte.

spanId

string

La parte [SPAN_ID] del nome della risorsa dello span.

parentSpanId

string

Lo [SPAN_ID] dello span padre di questo span. Se si tratta di uno span radice, questo campo deve essere vuoto.

displayName

object (TruncatableString)

Una descrizione dell'operazione dello span (fino a 128 byte). Stackdriver Trace mostra la descrizione nella console di Google Cloud Platform. Ad esempio, il nome visualizzato può essere un nome di metodo qualificato o un nome file e un numero di riga in cui viene chiamata l'operazione. Una best practice consiste nell'utilizzare lo stesso nome visualizzato all'interno di un'applicazione e nello stesso punto di chiamata. In questo modo è più facile correlare gli span in tracce diverse.

startTime

string (Timestamp format)

L'ora di inizio dell'intervallo. Sul lato client, questo è il tempo mantenuto dalla macchina locale in cui inizia l'esecuzione dello span. Sul lato server, questo è il momento in cui inizia l'esecuzione del gestore delle applicazioni del server.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

L'ora di fine dell'intervallo. Sul lato client, questo è il tempo mantenuto dal computer locale in cui termina l'esecuzione dello span. Sul lato server, questo è il momento in cui il gestore dell'applicazione server smette di essere eseguito.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

attributes

object (Attributes)

Un insieme di attributi nell'intervallo. Puoi avere fino a 32 attributi per intervallo.

status

object (Status)

Uno stato finale facoltativo per questo intervallo.

sameProcessAsParentSpan

boolean

(Facoltativo) Imposta questo parametro per indicare se questo span si trova nello stesso processo del relativo elemento principale. Se non imposti questo parametro, Stackdriver Trace non può sfruttare queste informazioni utili.

childSpanCount

integer

Un numero facoltativo di intervalli secondari generati mentre questo intervallo era attivo. Se impostato, consente all'implementazione di rilevare gli intervalli figlio mancanti.

spanKind

enum (SpanKind)

Distingue tra gli span generati in un contesto particolare. Ad esempio, due intervalli con lo stesso nome possono essere distinti utilizzando CLIENT (chiamante) e SERVER (chiamato) per identificare una chiamata RPC.

TruncatableString

Rappresenta una stringa che potrebbe essere abbreviata a una lunghezza specificata.

Rappresentazione JSON
{
  "value": string,
  "truncatedByteCount": integer
}
Campi
value

string

La stringa abbreviata. Ad esempio, se la stringa originale è lunga 500 byte e il limite della stringa è 128 byte, value contiene i primi 128 byte della stringa di 500 byte.

Il troncamento avviene sempre al limite di un carattere UTF8. Se nella stringa sono presenti caratteri multibyte, la lunghezza della stringa abbreviata potrebbe essere inferiore al limite di dimensione.

truncatedByteCount

integer

Il numero di byte rimossi dalla stringa originale. Se questo valore è 0, la stringa non è stata abbreviata.

Attributi

Un insieme di attributi, ciascuno nel formato [KEY]:[VALUE].

Rappresentazione JSON
{
  "attributeMap": {
    string: {
      object (AttributeValue)
    },
    ...
  },
  "droppedAttributesCount": integer
}
Campi
attributeMap

map (key: string, value: object (AttributeValue))

Il set di attributi. La chiave di ogni attributo può contenere fino a 128 byte. Il valore può essere una stringa fino a 256 byte, un numero intero a 64 bit con segno o i valori booleani true e false. Ad esempio:

"/instance_id": "my-instance"
"/http/userAgent": ""
"/http/request_bytes": 300
"example.com/myattribute": true

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

droppedAttributesCount

integer

Il numero di attributi eliminati. Gli attributi possono essere eliminati perché le relative chiavi sono troppo lunghe o perché sono presenti troppi attributi. Se questo valore è 0, tutti gli attributi sono validi.

AttributeValue

I tipi consentiti per [VALUE] in un attributo [KEY]:[VALUE].

Rappresentazione JSON
{

  // Union field value can be only one of the following:
  "stringValue": {
    object (TruncatableString)
  },
  "intValue": string,
  "boolValue": boolean
  // End of list of possible types for union field value.
}
Campi
Campo unione value. Il tipo di valore. value può essere solo uno dei seguenti tipi:
stringValue

object (TruncatableString)

Una stringa di massimo 256 byte.

intValue

string (int64 format)

Un numero intero a 64 bit con segno.

boolValue

boolean

Un valore booleano rappresentato da true o false.