2011-06-19 99 views
9

我想過濾掉日誌中的所有內容,除了我的應用程序的進程。我知道我可以指定優先級,但我希望能夠做到比這更多。我想擺脫正在記錄的電話中正在發生的所有其他事情。我怎樣才能做到這一點?Logcat過濾?

回答

10

如果您正在Eclipse調試視圖中查看日誌,只需單擊Create Filter按鈕(綠色+符號)即可輕鬆完成此操作。

如果不使用Eclipse,指定在命令行上的濾波器如下(從Android文檔示例):

這裏的抑制除了那些與標籤「的所有日誌消息過濾器表達式的一個例子ActivityManager」,以優先級‘信息’或以上,並與標籤的所有日誌消息‘MyApp的’優先‘調試’或以上:

adb logcat ActivityManager:I MyApp:D *:S 
+0

不使用Eclipse;)在終端中運行ADB。如果我將它分開運行,我發現它更容易。 – LuxuryMode

+0

@LuxuryMode:添加adb說明 –

+0

謝謝格雷厄姆。當我這樣做的時候,我所看到的只是'---------/dev/log/system的開頭 ---------/dev/log/main的開頭是因爲我在我的應用程序中沒有日誌標記?我希望只能看到我的應用程序的進程,而不必爲每個活動或任何其他標籤添加標籤。有沒有簡單的方法來定義整個應用程序的標籤,如果這是有道理的? – LuxuryMode

1

是現在,你將自動獲得它....
Upd吃了ADT plugin version 14,其中logcat的將自動session filter
它在通過命令行您特定的應用程序(包)

0

過濾logcat的過濾日誌可以通過文本字符串設定爲靜音,像WifiStatetracker:S完成。這將消除WifiStateTracker中的任何內容。您可以使用多個參數,如WifiStatetracker:S dhcpcd:S BatteryService:S。但我不知道匹配方案是如何工作的。