Saltar al contenido

¿Filtrar LogCat para obtener solo los mensajes de Mi aplicación en Android?

Solución:

Linux y OS X

Use ps / grep / cut para tomar el PID, luego grep para las entradas de logcat con ese PID. Aquí está el comando que uso:

adb logcat | grep -F "`adb shell ps | grep com.asanayoga.asanarebel  | tr -s [:space:] ' ' | cut -d' ' -f2`"

(Podría mejorar aún más la expresión regular para evitar el problema teórico de las líneas de registro no relacionadas que contienen el mismo número, pero nunca ha sido un problema para mí)

Esto también funciona cuando se combinan varios procesos.

Ventanas

En Windows puede hacer:

adb logcat | findstr com.example.package

Se garantiza que los nombres de los paquetes son únicos para que pueda utilizar el Log funciona con la etiqueta como nombre de paquete y luego filtra por nombre de paquete:

NOTA: A partir de las Herramientas de compilación 21.0.3, esto ya no funcionará ya que las ETIQUETAS están restringidas a 23 caracteres o menos.

Log.<log level>("<your package name>", "message");

adb -d logcat <your package name>:<log level> *:S

-d denota un dispositivo real y -e denota un emulador. Si hay más de 1 emulador en ejecución, puede usar -s emulator-<emulator number> (p.ej, -s emulator-5558)

Ejemplo: adb -d logcat com.example.example:I *:S

O si estás usando System.out.print para enviar mensajes al registro puede usar adb -d logcat System.out:I *:S para mostrar solo las llamadas a System.out.

Puede encontrar todos los niveles de registro y más información aquí: https://developer.android.com/studio/command-line/logcat.html

http://developer.android.com/reference/android/util/Log.html

EDITAR: Parece que salté un poco el arma y me di cuenta de que estabas preguntando por Logcat en Eclipse. Lo que publiqué arriba es para usar logcat a través de adb desde la línea de comando. No estoy seguro de si los mismos filtros se transfieren a Eclipse.

Desde Android 7.0, logcat tiene la opción de filtro –pid y el comando pidof está disponible, reemplace com.example.app por el nombre de su paquete.
(terminal ubuntu / desde Android 7.0)

adb logcat --pid=`adb shell pidof -s com.example.app`

o

adb logcat --pid=$(adb shell pidof -s com.example.app)

Para obtener más información sobre el comando pidof:
https://stackoverflow.com/a/15622698/7651532

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *