Schema dei log per i dati esportati in Cloud Logging

Questa pagina fornisce lo schema dei log per i dati Crashlytics esportati e i dati delle sessioni Firebase in Cloud Logging.



Crashlytics schema

Event

Il messaggio che descrive un singolo evento Crashlytics.

Rappresentazione JSON

{
  "name": string,
  "platform": string,
  "bundleOrPackage": string,
  "eventId": string,
  "sessionId": string,
  "eventTime": string,
  "receivedTime": string,
  "issue": {
    object (Issue)
  },
  "issueVariant": {
    object (IssueVariant)
  },
  "device": {
    object (Device)
  },
  "memory": {
    object (Memory)
  },
  "storage": {
    object (Storage)
  },
  "operatingSystem": {
    object (OperatingSystem)
  },
  "browser": {
    object (Browser)
  },
  "version": {
    object (Version)
  },
  "user": {
    object (User)
  },
  "customKeys": {
    string: string,
    ...
  },
  "installationUuid": string,
  "crashlyticsSdkVersion": string,
  "appOrientation": string,
  "deviceOrientation": string,
  "logs": [
    {
      object (Log)
    }
  ],
  "breadcrumbs": [
    {
      object (Breadcrumb)
    }
  ],
  "blameFrame": {
    object (Frame)
  },
  "exceptions": [
    {
      object (Exception)
    }
  ],
  "errors": [
    {
      object (Error)
    }
  ],
  "threads": [
    {
      object (Thread)
    }
  ],
  "processState": string,
  "issueTitle": string,
  "issueSubtitle": string,
  "buildStamp": string
}
Campi Descrizione
name string

Obbligatorio. Solo output. Immutabile. Identificatore. Il nome della risorsa evento. Formato: projects/{project}/apps/{app_id}/events/{event}.

platform string

Piattaforma mobile (Android o iOS).

bundleOrPackage string

Il nome del bundle per le app per iOS o il nome del pacchetto delle app per Android. Formato: com.mycompany.myapp.

eventId string

Solo output. Immutabile. L'identificatore univoco dell'evento viene assegnato durante l'elaborazione.

sessionId string

Identificatore univoco della sessione Firebase.

eventTime string (Timestamp format)

Timestamp del dispositivo in cui è stato registrato l'evento.

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".

receivedTime string (Timestamp format)

Timestamp del server in cui l'evento è stato ricevuto da Crashlytics.

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".

issue object (Issue)

Dettagli del [problema] assegnato a questo [evento].

issueVariant object (IssueVariant)

Dettagli del [IssueVariant] assegnato a questo [Event].

device object (Device)

Metadati del dispositivo mobile.

memory object (Memory)

Utilizzo della memoria del dispositivo mobile.

storage object (Storage)

Utilizzo del disco/della memoria flash del dispositivo mobile.

operatingSystem object (OperatingSystem)

Sistema operativo e versione.

browser object (Browser)

Browser e versione.

version object (Version)

Versione dell'applicazione mobile.

user object (User)

Identificatori dell'utente finale per il proprietario del dispositivo.

customKeys map (key: string, value: string)

Chiavi personalizzate impostate dallo sviluppatore durante la sessione.

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

installationUuid string

Identificatore univoco dell'installazione dell'app sul dispositivo. Questo campo viene utilizzato per calcolare il numero univoco di utenti interessati.

crashlyticsSdkVersion string

Versione dell'SDK Crashlytics.

appOrientation string

Orientamento dell'app al momento dell'arresto anomalo (verticale o orizzontale).

deviceOrientation string

Orientamento del dispositivo al momento dell'arresto anomalo (verticale o orizzontale).

logs[] object (Log)

Messaggi di log registrati dallo sviluppatore durante la sessione.

breadcrumbs[] object (Breadcrumb)

Eventi Analytics registrati dall'SDK Analytics durante la sessione.

blameFrame object (Frame)

Il frame dello stack trace indicato dall'elaborazione di Crashlytics. Potrebbe non essere presente nell'analizzatore futuro.

exceptions[] object (Exception)

Solo Android. Eccezioni che si sono verificate durante questo evento. Le eccezioni nidificate vengono presentate in ordine cronologico inverso, in modo che l'ultimo record sia la prima eccezione generata.

errors[] object (Error)

Solo Apple. Un errore non irreversibile acquisito dall'SDK iOS e il relativo stacktrace.

threads[] object (Thread)

Thread dell'applicazione presenti al momento della registrazione dell'evento. Ciascuno contiene uno stacktrace. Un thread verrà ritenuto responsabile dell'errore.

processState string

Lo stato del processo dell'app al momento dell'evento.

issueTitle string

Il titolo del problema in cui è stato raggruppato l'evento. Di solito si tratta di un file sorgente o del nome di un metodo.

issueSubtitle string

Il sottotitolo del problema in cui è stato raggruppato l'evento. Di solito si tratta di un simbolo o di un messaggio di eccezione.

buildStamp string

Metadati forniti dal sistema di compilazione dell'app, incluse le informazioni sul repository di controllo delle versioni.

Memory

Utilizzo della memoria del dispositivo mobile.

Rappresentazione JSON

{
  "used": string,
  "free": string
}
Campi Descrizione
used string (int64 format)

Byte in uso.

free string (int64 format)

Byte disponibili.

Storage

Utilizzo del disco/della memoria flash del dispositivo mobile. Non segnalato per tutti i dispositivi.

Rappresentazione JSON

{
  "used": string,
  "free": string
}
Campi Descrizione
used string (int64 format)

Byte utilizzati.

free string (int64 format)

Byte disponibili.

User

Identificatori dell'utente finale forniti dallo sviluppatore.

Rappresentazione JSON

{
  "id": string
}
Campi Descrizione
id string

User-ID, se fornito dallo sviluppatore dell'app.

Frame

Un frame in uno stacktrace.

Rappresentazione JSON

{
  "line": string,
  "file": string,
  "symbol": string,
  "offset": string,
  "address": string,
  "library": string,
  "owner": string,
  "blamed": boolean
}
Campi Descrizione
line string (int64 format)

Il numero di riga nel file del frame.

file string

Il nome del file di origine in cui si trova il frame.

symbol string

Il simbolo del frame dopo che è stato deoffuscato o simbolizzato. Il simbolo grezzo dal dispositivo se non è stato possibile idratarlo.

offset string (int64 format)

L'offset di byte nell'immagine binaria che contiene il codice. Presenta per i frame nativi.

address string (int64 format)

L'indirizzo nell'immagine binaria che contiene il codice. Presenta per i frame nativi.

library string

Il nome visualizzato della libreria che include il frame.

owner string

Uno tra DEVELOPER, VENDOR, RUNTIME, PLATFORM o SYSTEM.

blamed boolean

Vero quando l'analisi di Crashlytics ha determinato che questo frame è probabilmente la causa dell'errore.

Exception

Un'eccezione Java e la relativa stacktrace, solo dalle app per Android.

Rappresentazione JSON

{
  "type": string,
  "exceptionMessage": string,
  "nested": boolean,
  "title": string,
  "subtitle": string,
  "blamed": boolean,
  "frames": [
    {
      object (Frame)
    }
  ]
}
Campi Descrizione
type string

Il tipo di eccezione, ad esempio java.lang.IllegalStateException.

exceptionMessage string

Un messaggio associato all'eccezione.

nested boolean

Vero per tutte le eccezioni tranne l'ultima generata (ovvero il primo record).

title string

Il titolo dell'eccezione.

subtitle string

Il sottotitolo dell'eccezione.

blamed boolean

Vero quando l'analisi di Crashlytics ha determinato che questo thread è il punto in cui si è verificato l'errore.

frames[] object (Frame)

I frame nello stacktrace dell'eccezione.

Error

Un errore non irreversibile e la relativa analisi dello stack, solo dalle app Apple.

Rappresentazione JSON

{
  "queue": string,
  "code": string,
  "title": string,
  "subtitle": string,
  "blamed": boolean,
  "frames": [
    {
      object (Frame)
    }
  ]
}
Campi Descrizione
queue string

La coda su cui era in esecuzione il thread.

code string (int64 format)

Codice di errore associato a NSError registrato personalizzato dell'app.

title string

Il titolo dell'errore.

subtitle string

Il sottotitolo dell'errore.

blamed boolean

True quando l'analisi di Crashlytics ha determinato che lo stacktrace in questo errore è il punto in cui si è verificato il problema.

frames[] object (Frame)

I frame nello stacktrace dell'errore.

Thread

Un thread dell'applicazione.

JSON representation</code></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><code>{
  "crashed": boolean,
  "name": string,
  "queue": string,
  "signal": string,
  "signalCode": string,
  "crashAddress": string,
  "title": string,
  "subtitle": string,
  "blamed": boolean,
  "frames": [
    {
      object (Frame)
    }
  ],
  "threadId": string,
  "sysThreadId": string,
  "threadState": enum (State)
}
Campi Descrizione
crashed boolean

True se il thread ha subito un arresto anomalo.

name string

Il nome del thread.

queue string

La coda su cui era in esecuzione il thread.

signal string

Il nome del segnale che ha causato l'arresto anomalo dell'app. Presente solo nei thread nativi arrestati in modo anomalo.

signalCode string

Il codice del segnale che ha causato l'arresto anomalo dell'app. Presente solo nei thread nativi arrestati in modo anomalo.

crashAddress string (int64 format)

L'indirizzo del segnale che ha causato l'arresto anomalo dell'applicazione. Presente solo nei thread nativi arrestati in modo anomalo.

title string

Il titolo del thread.

subtitle string

Il sottotitolo del thread.

blamed boolean

Vero quando l'analisi di Crashlytics ha stabilito che la stacktrace in questo thread è il punto in cui si è verificato l'errore.

frames[] object (Frame)

I frame nello stacktrace del thread.

threadId string (int64 format)

L'ID del thread, disponibile solo per i thread ANR.

sysThreadId string (int64 format)

L'ID di sistema del thread, disponibile solo per i thread ANR.

threadState enum (State)

Solo output. Lo stato del thread al momento in cui si è verificato l'errore ANR.

State

Lo stato di un thread quando si è verificato l'errore ANR.

Enum Descrizione
STATE_UNSPECIFIED

Stato del thread non specificato.

THREAD_STATE_TERMINATED

Il thread è stato terminato.

THREAD_STATE_RUNNABLE

Il thread era eseguibile.

THREAD_STATE_TIMED_WAITING

Il thread era in attesa con un timeout.

THREAD_STATE_BLOCKED

Il thread è stato bloccato.

THREAD_STATE_WAITING

Il thread era in attesa.

THREAD_STATE_NEW

Il thread è stato avviato, ma non è ancora stato eseguito nulla.

THREAD_STATE_NATIVE_RUNNABLE

Il thread era nativo e non è stato possibile determinare in modo euristico che era in attesa, quindi supponiamo che sia eseguibile.

THREAD_STATE_NATIVE_WAITING

Abbiamo determinato in modo euristico che il thread è in attesa.



Schema delle sessioni Firebase

FirebaseSessionEvent

Sessioni registrate dall'SDK Firebase App Quality Sessions.

Rappresentazione JSON

{
  "sessionId": string,
  "eventType": enum (SessionEventType),
  "firstSessionId": string,
  "sessionIndex": integer,
  "firebaseInstallationId": string,
  "eventTime": string,
  "version": {
    object (Version)
  },
  "device": {
    object (Device)
  },
  "operatingSystem": {
    object (OperatingSystem)
  }
}
Campi Descrizione
sessionId string

Identificatore univoco della sessione Firebase.

eventType enum (SessionEventType)

Tipo di evento sessione. Al momento l'SDK supporta solo gli eventi SESSION_START.

firstSessionId string

L'identificatore della prima sessione dall'ultimo avvio a freddo. Questo ID e sessionId saranno uguali per gli avvii di app.

sessionIndex integer

Indica il numero di sessioni dall'ultimo avvio a freddo.

firebaseInstallationId string

Identifica in modo univoco un dispositivo su cui sono installate app Firebase.

eventTime string (Timestamp format)

Il timestamp di inizio dell'evento di sessione.

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".

version object (Version)

Numeri di versione dell'applicazione mobile.

device object (Device)

Metadati del dispositivo mobile.

operatingSystem object (OperatingSystem)

Sistema operativo e versione.

SessionEventType

Tipi di SessionEvent registrati.

Enum Descrizione
SESSION_EVENT_TYPE_UNKNOWN

Sconosciuto.

SESSION_START

Sessione dell'applicazione avviata.



Schema del log del dispositivo

DeviceLog

Rappresenta la struttura delle voci deviceLog.

Rappresentazione JSON

{
  "eventId": string,
  "sessionId": string,

  // Union field payload can be only one of the following:
  "log": {
    object (Log)
  },
  "breadcrumb": {
    object (Breadcrumb)
  }
  // End of list of possible types for union field payload.
}
Campi Descrizione
eventId string

Solo output. Immutabile. L'identificatore dell'evento a cui è associato.

sessionId string

Identificatore univoco della sessione Firebase.

Campo unione payload. Il payload può essere un log di Crashlytics o un breadcrumb. payload può essere solo uno dei seguenti tipi:

log object (Log)

Log di Crashlytics.

breadcrumb object (Breadcrumb)

Breadcrumb di Crashlytics.

Log

Righe di log fornite dallo sviluppatore registrate durante la sessione.

Rappresentazione JSON

{
  "logTime": string,
  "message": string
}
Campi Descrizione
logTime string (Timestamp format)

Timestamp del dispositivo quando è stata registrata la riga.

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".

message string

Messaggio di log.

Breadcrumb

Eventi Analytics registrati durante la sessione.

Rappresentazione JSON

{
  "eventTime": string,
  "title": string,
  "params": {
    string: string,
    ...
  }
}
Campi Descrizione
eventTime string (Timestamp format)

Timestamp del dispositivo per l'evento.

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".

title string

Nome dell'evento di analisi.

params map (key: string, value: string)

Parametri evento.

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