adb logcat 檢視日誌

2021-06-20 00:13:22 字數 2962 閱讀 8661

使用

logcat 

命令

檢視和跟蹤系統日誌緩衝區的命令logcat的一般用法是:

[

adb]

logcat

[<

option

>]

...[<

filter

-spec

>]

...

下文介紹過濾器和命令選項,詳細內容可參見

listing of logcat command options。

可以在開發機中通過遠端shell的方式使用logcat命令檢視日誌輸出:

$ adb logcat

如果是在遠端shell中可直接使用命令:

# logcat

過濾日誌輸出

每一條日誌訊息都有乙個標記和優先順序與其關聯。

標記是乙個簡短的字串,用於標識原始訊息的**(例如

"view" 

**於顯示系統)。

優先順序是下面的字元,順序是從低到高:

v — 明細

(最低優先順序)

d — 除錯

i — 資訊

w — 警告

e — 錯誤

f — 嚴重錯誤

s — 無記載

(最高優先順序,沒有什麼會被記載)

通過執行logcat ,可以獲得乙個系統中使用的標記和優先順序的列表,觀察列表的前兩列,給出的格式是/。

這裡是乙個日誌輸出的訊息,優先順序是「

i」,標記是「

activitymanager」:

i

/activitymanager

(585

):starting

activity

:intent

如果想要減少輸出的內容,可以加上過濾器表示式進行限制,過濾器可以限制系統只輸出感興趣的標記

-優先順序組合。

過濾器表示式的格式是tag:priority ... ,其中tag是標記, priority是最小的優先順序,

該標記標識的所有大於等於指定優先順序的訊息被寫入日誌。也可以在乙個過濾器表示式中提供多個這樣的過濾,它們之間用空格隔開。

下面給出的例子是僅輸出標記為「

activitymanager

」並且優先順序大於等於「

info

」和標記為「

」並且優先順序大於等於「

debug

」的日誌:

adb logcat 

activitymanager:i 

:d *:s

上述表示式最後的*:s

用於設定所有標記的日誌優先順序為

s*:s是可以確保輸出符合指定的過濾器設定的一種推薦的方式,這樣過濾器就成為了日誌輸出的「白名單」。

下面的表達是顯示所有優先順序大於等於「

warning

」的日誌:

adb logcat *:w

如果在開發用電腦上執行logcat(

相對於執行運程

shell而言)

,也可以通過android_log_tags環境變數設定預設的過濾器表示式:

export

android_log_tags=

需要注意的是,如果是在遠端

shell

或是使用adb shell logcat命令執行logcatandroid_log_tags不會匯出到模擬器或手機裝置上。

控制日誌格式

日誌訊息在標記和優先順序之外還有很多元資料字段,這些字段可以通過修改輸出格式來控制輸出結果,-v選項加上下面列出的內容可以控制輸出字段:

brief — 顯示優先順序/標記和原始程序的pid (預設格式)

process — 僅顯示程序pid

tag — 僅顯示優先順序/標記

thread — 僅顯示程序:執行緒和優先順序/標記

raw — 顯示原始的日誌資訊,沒有其他的元資料字段

time — 顯示日期,呼叫時間,優先順序

/標記,

pid

long —顯示所有的元資料字段並且用空行分隔訊息內容

可以使用-v啟動logcat來控制日誌格式:

[

adb]

logcat

[-v

<

format

>]

例如使用thread輸出格式:

adb logcat 

-v thread

注意只能在-v選項中指定一種格式。

viewing alternative log buffers

android

日誌系統為日誌訊息保持了多個迴圈緩衝區,而且不是所有的訊息都被傳送到預設緩衝區,要想檢視這些附加的緩衝區,可以使用-b選項,以下是可以指定的緩衝區:

radio — 檢視包含在無線

/**相關的緩衝區訊息

events — 檢視事件相關的訊息

main — 檢視主緩衝區

(預設緩衝區)

-b 選項的用法:

[

adb]

logcat

[-b

<

buffer

>]

例如檢視radio緩衝區:

adb logcat 

-b radio

adb logcat 檢視日誌

使用 logcat 命令 檢視和跟蹤系統日誌緩衝區的命令logcat的一般用法是 adb logcat 可以在開發機中通過遠端shell的方式使用logcat命令檢視日誌輸出 adb logcat 如果是在遠端shell中可直接使用命令 logcat 過濾日誌輸出 每一條日誌訊息都有乙個標記和優先順...

adb logcat 檢視日誌

使用 logcat 命令 檢視和跟蹤系統日誌緩衝區的命令logcat的一般用法是 adb logcat 可以在開發機中通過遠端shell的方式使用logcat命令檢視日誌輸出 adb logcat 如果是在遠端shell中可直接使用命令 logcat 過濾日誌輸出 每一條日誌訊息都有乙個標記和優先順...

adb logcat 檢視日誌

使用 logcat 命令檢視和跟蹤系統日誌緩衝區的命令 logcat 的一般用法是 下文介紹過濾器和命令選項,詳細內容可參見 listing of logcat command options。可以在開發機中通過遠端shell的方式使用 logcat 命令檢視日誌輸出 如果是在遠端shell中可直接...