Skip to main content
Installa il pacchetto SDK di LogBrew per il tuo runtime. L’SDK formatta gli eventi e li consegna. La guida del pacchetto elenca i tipi di evento, i limiti e il comportamento dei nuovi tentativi. Segui questi passaggi per ogni integrazione:
  1. Installa il pacchetto SDK per il tuo runtime.
  2. Tieni la chiave di ingestione del progetto fuori dal controllo di versione.
  3. Imposta valori stabili per servizio, ambiente e release.
  4. Invia un evento di test sicuro dall’applicazione.
  5. Leggi il risultato della consegna. Poi trova l’evento in LogBrew.
Se un batch è stato accettato, ha raggiunto l’API di LogBrew. I filtri possono comunque nasconderne gli eventi. Seleziona il progetto e l’intervallo di tempo corretti. Poi verifica che servizio, ambiente, release e tipo di segnale corrispondano. Prima di attivare l’acquisizione, seleziona e verifica i campi approvati. Per popolare Analisi, segui Acquisizione eventi di prodotto.

Segnali e contesto condiviso

Le prime cinque schede sono segnali. Release e ambiente sono il contesto di quei segnali. Non sono un tipo di evento a sé.

log

Un messaggio strutturato con gravità, origine, orario e contesto sicuro.

trace_span

Una singola operazione cronometrata, collegata alla sua traccia tramite gli ID di traccia e di span.

issue

Un errore acquisito, la sua gravità e i dettagli dell’errore inviati dall’app.

action

Un’azione nella tua app, con soggetto, sessione e proprietà sicure facoltativi.

metric

Una singola misura numerica con nome, tipo, valore, unità e temporalità.

release e ambiente

La versione del codice e l’ambiente associati agli eventi successivi nello stesso ambito dell’SDK.

Valori di gravità

Per log e problemi usa info, warning, error o critical. SDK e runtime possono inviare alias come trace, debug, warn o fatal. LogBrew normalizza gli alias accettati nei valori canonici.

Installazione con un gestore di pacchetti

Installa il pacchetto SDK per il runtime che invia la telemetria. Usa la configurazione SDK o di ingestione del progetto fornita da LogBrew. Non usare i valori di accesso dell’account come configurazione dell’SDK.

Tracciamento delle richieste in Node.js

Per correlare le tracce a partire dalla radice della richiesta, usa @logbrew/sdk 0.1.16 o successivo e @logbrew/node 0.1.11 o successivo. Express richiede @logbrew/express 0.1.5 o successivo. Fastify e NestJS richiedono il rispettivo pacchetto LogBrew alla versione 0.1.6 o successiva. Queste integrazioni creano o continuano uno span per la richiesta. Il nome dello span usa il modello della route corrispondente. Log, problemi, azioni e metriche all’interno della richiesta ereditano il suo contesto di traccia e di span. Un pacchetto più recente non aggiunge contesto agli eventi inviati prima dell’aggiornamento. L’integrazione predefinita per le richieste non acquisisce i corpi di richiesta o di risposta, le query string, header arbitrari né valori traceparent grezzi.

ASP.NET Core

La CLI v0.1.55 o successiva rileva i progetti .NET 10 che usano Microsoft.NET.Sdk.Web. Visualizza in anteprima il piano di configurazione dalla radice del progetto. Questo comando non modifica i tuoi file:
Il piano per il pacchetto pubblicato installa l’integrazione con l’host:
Imposta LOGBREW_SERVER_API_KEY, LOGBREW_SERVICE_NAME, LOGBREW_ENVIRONMENT e LOGBREW_RELEASE fuori dal controllo di versione. Registra LogBrew nell’host e posiziona il suo middleware dopo il routing:
Senza LOGBREW_SERVER_API_KEY, entrambe le chiamate di registrazione non hanno effetto e non causano errori. Il pacchetto NuGet ASP.NET Core identifica l’integrazione con l’host pubblicata. La sua guida pubblica copre ciclo di vita dell’host, acquisizione delle richieste, acquisizione dei problemi, limiti di privacy e ripristino.

Java con Maven o Gradle

La CLI v0.1.54 o successiva rileva pom.xml, build.gradle e build.gradle.kts. Visualizza in anteprima il piano di configurazione dalla radice del progetto. Questo comando non modifica i tuoi file:
Per Maven, aggiungi il pacchetto pubblicato:
Per Gradle Kotlin DSL, aggiungi lo stesso artefatto di Maven Central:
Usa Java 11 o successivo. Le applicazioni Spring Boot 3 e 4 possono esporre un bean LogBrewClient gestito dall’app. Il bean attiva integrazioni facoltative per richieste, eccezioni, client HTTP, JDBC e cache. L’acquisizione di Spring Kafka va attivata in modo esplicito con logbrew.kafka.enabled=true. Usa la dipendenza Spring Kafka e il bean client già presenti nell’applicazione. L’artefatto dell’SDK Java su Maven Central identifica il pacchetto pubblicato. La sua guida pubblica copre la consegna HTTP con limiti, lo spegnimento, il logging, la configurazione di Spring, la correlazione con Kafka e i limiti di privacy.

C++ con CMake

L’SDK C++ richiede C++17 e CMake 3.16 o successivo. La CLI v0.1.39 o successiva rileva un CMakeLists.txt nella radice. Esegui logbrew setup --json per vedere in anteprima questo piano di configurazione senza modificare i tuoi file:
Il target principale non ha dipendenze. Per inviare i batch tramite il trasporto libcurl facoltativo, sostituisci la chiamata finale FetchContent_MakeAvailable e il collegamento del target qui sopra con:
Configura l’applicazione. Poi compilala per testare la versione dell’SDK selezionata:
Per le build che non possono scaricare il monorepo dell’SDK, usa l’asset dedicato logbrew-cpp-0.2.3.tar.gz dalla release C++ 0.2.3. Il pacchetto estratto supporta cmake --install e find_package(LogBrew 0.2.3 CONFIG REQUIRED). La sua guida copre contesto tipizzato, prove dei problemi, eventi degli span, metriche, azioni e consegna HTTP.

Source map JavaScript

Per le build Vite, segui Source map JavaScript. La guida copre il plugin, la chiave per artefatti, i controlli del caricamento e un nuovo problema con le posizioni nel codice sorgente originale.

Apple, Flask e React Native

Usa il prodotto Swift LogBrew per la telemetria. Aggiungi LogBrewCrash solo per acquisire crash o blocchi su Apple. Per il caricamento dei dSYM e la simbolizzazione ospitata, segui Acquisisci crash e blocchi Apple. Per Flask, segui Configura Flask. Per React Native ed Expo, segui React Native. La guida copre la chiave del progetto, un log di test sicuro, gli errori di consegna e la configurazione di Expo Metro per le source map di produzione.

Tracciamento delle code JavaScript

Le integrazioni per le code in Node sono pacchetti npm separati. Installa i pacchetti JavaScript di base di LogBrew, il pacchetto di integrazione e il client della coda o del broker che la tua app usa già. Usa questi pacchetti per una correlazione delle tracce esplicita, gestita dall’app, intorno alle chiamate alla coda che scegli. LogBrew non gestisce la connessione al broker, non crea code e per impostazione predefinita non modifica globalmente ogni client.
Tieni fuori dalla configurazione dell’SDK i payload delle code, gli header arbitrari dei messaggi, gli URL dei broker e i valori bearer di sessione o dell’account. Usa la configurazione di ingestione lato server del progetto fornita da LogBrew.

Envelope nativo diretto

Usa POST /api/telemetry/ingest solo per un client personalizzato che nessun SDK pubblico di LogBrew supporta. Gli SDK pubblici usano un loro formato di batch. Questo endpoint non accetta quel formato. Invia da 1 a 512 elementi in un envelope nativo. Tutti gli elementi di un envelope condividono progetto, servizio, release, ambiente e l’eventuale contesto di traccia.

Campi degli elementi

Ogni elemento ha un type e un oggetto data. Un elemento di log usa level. Un elemento di problema usa severity. Entrambi accettano i valori indicati in Valori di gravità. Invia un id con ogni elemento quando il tuo client può ripetere l’invio. Quando un nuovo tentativo invia di nuovo un elemento già accettato con lo stesso id e lo stesso contenuto, LogBrew non lo salva di nuovo. La risposta conta quell’elemento in already_accepted.

Richiesta di esempio

Salva il JSON qui sotto come telemetry-envelope.json. Sostituisci l’ID progetto di esempio con l’ID esatto del progetto della tua chiave di ingestione. Imposta i timestamp all’ora UTC corrente dell’evento di test. Usa i tuoi valori di servizio e release.
telemetry-envelope.json
Carica il valore di ingestione del progetto in LOGBREW_INGEST_BEARER tramite la tua configurazione protetta. Non stamparlo e non usare una credenziale dell’account. Il comando seguente invia il file una volta. Richiede curl 7.76.0 o successivo:
Leggi lo stato HTTP e il corpo della risposta. --fail-with-body conserva il corpo dell’errore e restituisce un codice di uscita diverso da zero per gli errori HTTP. Un errore di rete o un timeout non ti dice se LogBrew ha accettato la richiesta. Invia di nuovo lo stesso file solo se i suoi elementi hanno valori id. Senza valori id, un secondo invio può salvare gli elementi due volte.

Risposta

Una richiesta riuscita restituisce 200 con il conteggio dei nuovi elementi per flusso. already_accepted conta gli elementi già consegnati da una richiesta precedente.

Errori

Una chiave di ingestione non valida o revocata restituisce 401. Anche una chiave di un altro progetto restituisce 401:
Usa una chiave di ingestione del progetto. Non sostituirla con una credenziale dell’account. Una chiave per artefatti non può inviare telemetria. Un envelope che viola la regola di un campo restituisce 422 con codice validation_failed. Il campo error indica la regola. Il campo next ti dice come correggere la richiesta. Per esempio, "items": [] restituisce:
Non inviare un envelope quando non ci sono eventi. Un envelope con più di 512 elementi restituisce 422 con l’errore native telemetry envelope exceeds the item limit. Dividilo in batch di massimo 512 elementi. Mantieni il progetto e il contesto condiviso in ogni batch. Per limiti di utilizzo, limiti di frequenza ed errori del servizio, segui il code restituito in Errori API.
Imposta release e ambiente nella configurazione dell’SDK. Crea o continua il contesto di traccia per ogni operazione. Non riusare lo stesso ID traccia per lavori non correlati.