2012-12-18 8 views
29
public static final TAG = "Legendry Eagle"; 

Problema: Voglio vedere tronchi di "Legendry Eagle" dalla linea di comando.Filtraggio Logcat registri sulla riga di comando

ho provato:

adb logcat -s "Legendry Eagle" 
adb logcat -s <Legendry Eagle> 

ma ancora non funziona.

+0

Offtopic di visualizzazione: Perché stai usando DOS Promt, e non Eclipse per il debug? O non stai eseguendo il debug? – RvdK

+0

uso [questo] [1] collegamento, può essere utile [1]: http: // StackOverflow.it/questions/7537419/how-to-filter-android-logcat-by-application –

+2

Sei sicuro di non aver sbagliato a digitare il tag sul comando? Forse il tuo progetto utilizza effettivamente _Legendary Eagle_, ma stai cercando _Legendry Eagle_ (o viceversa). –

risposta

52

Se solo si desidera mostrare logcat per un tag specifico, fare in questo modo:

adb logcat YourTAGHere:Priority *:S 

Il *:S è importante, in quanto pone tutti gli altri tag al silenzio. Se voglio monitorare solo il mio tag MainActivity a livello Verbose, la sintassi dovrebbe essere simile a questa.

adb logcat MainActivity:V *:S 

Edit: ho trovato nessun buon modo di filtrare i tag con spazi. LegendryEagle funziona bene, ma non ero in grado di filtrare Legendry Eagle

+1

I documenti dicono "La serie di specifiche è delimitata da spazi bianchi", che probabilmente è il motivo per cui il suo tag "Legendry Eagle" non è riuscito a filtrare. –

+0

Questa dovrebbe essere la risposta accettata – Guy

+4

+1 per l'importanza di '*: S' – wolfovercats

13

Se lo standard adb logcat -s tagname non funziona, si può sempre inviare l'output di adb per find per filtrare quello che ti serve, qualcosa come

adb logcat | find "Legendry Eagle" 

Questo passa l'intera logcat per DOS find comando, che in trasforma i filtri in righe contenenti Legenda Eagle stringa.

+0

l'estensione con 'find xyz' ha risolto anche il mio problema, grazie! (questo è il minimo che internet non ti dirà se non esegui una ricerca completa di 1 ora) –

+0

per me solo questo ha funzionato! Grazie . – Raulp

3

La risposta è molto semplice. Si prega di rimuovere lo spazio tra due parole e riprovare.

public static final TAG = "LegendryEagle"; 
adb logcat -s "LegendryEagle" 

e vedere il logcat. Hai la tua risposta.

+3

La vista Web registra tutti i file 'console.log' su" Web Console ", quindi questo non aiuta. – TheHippo

0

Supponendo che si sta utilizzando Aquila come il tag registrazione, utilizzare questo:

adb logcat Aquila: * *: s

come ho capito l'Aquila: * significa per accendere tutti i registri per il tag Eagle e *: s significa rendere silenziose tutte le altre tag

Personalmente trovo la vista di eclissi logcat molto più semplice da usare rispetto alla riga di comando, ha colori diversi per diversi livelli di log e puoi crea un filtro e salvalo, rimarrà th ere sempre fino a quando si elimina quel filtro

1
adb logcat | grep "your tag" 

saranno solo i registri con "tag"

+0

Buono! Bella risposta, ma copiata dalle risposte di cui sopra! – Takermania