Android Studioでlogcatをフィルタリングする方法


96

私のlogcatには出力が多すぎるので、いくつかのキーワードを使用してフィルタリングし、基本的にはキーワードを含む出力のみを表示します。UIを介してAndroid Studioでそれを行う方法はありますか?



いいえ、キーワードでメッセージをフィルタリングする方法を尋ねています。
アレッサンドロロアロ2013年

android studio ver 0.4.5以降、実行中のアプリからのみメッセージが表示されます。Log cat has a new option (on by default) which creates an application filter automatically such that only the launched application's output is shown
dmSherazi 2014

回答:


107

これには2つの方法があり、どちらもIDEの下部にある[Android]タブにあります(logcat出力が表示されます)。

まず、上部の検索ボックスに何かを入力するだけで、入力したテキストを含むメッセージのみがフィルタリングされます。

次に、右上のドロップダウンをクリックして高度なフィルタリングを行うことができます。デフォルトでは[ フィルターなし]と表示されているはずです。Edit Filter Configurationフィルタリングするものをして指定。この方法を使用すると、フィルターも保存され、ドロップダウンでフィルターを選択して再利用できます。

スクリーンショット:
Logcatの検索とフィルター


1
答えてくれてありがとう。私はすでに最初のものを試しましたが、それは無関係な出力を除外しません。再:2番目のオプション、残念ながらドロップダウンメニューが表示されません。どのバージョンを使用していますか?
アレッサンドロロアロ2013年

1
私はv0.3.5を使用しています...そのスクリーンショットを回答に追加しました。
free3dom 2013年

1
スクリーンショットを作成しているときにこれに気づきましたが、まだ別のフィルタリング方法があります。上の左側には、リスト内で選択されたプロセスからのみlogcatを表示するためにオン/オフを切り替えることができる:) -側(右側の次のタブの)緑色の矢印のアイコンである
free3dom

ありがとう、私は自分のバージョン(0.3.2)にそれらのフィルターを持っていませんでした
アレッサンドロロアロ

問題ない!それはv0.3.3 / 4で追加されたと思います。Android Studioはバージョンごとに改善されています:)
free3dom 2013年

81

私がしたいことは、好きではない行を右クリックして、「このように折り目を付ける」を選択するここに画像の説明を入力してください


9
すごい!もっと早く知ってほしい!
miva2

7
これが答えになるはずです。
16年

2
これだけがAndroid Studio logcatのgenymotionによって私の洪水を解決します、ありがとう。
フロリダ州

3
びっくりしました。良い発見!
dm78

1
了解しました:-D(テキスト付きの緑色のエントリをダブルクリックしてください: "n internal calls")
Aydin K.

53

@ free3domが言ったように、logcatを受け取るプロセスを選択できます。こちらがスクリーンショットです。

スクリーンショット


2
これを追加していただきありがとうございます。みんなのためにここに置いておくのは良いことで、私はコメントでそれだけを述べました:)
free3dom

39
素敵なグラフィックも;-)
Gerard、

1
android studio ver 0.4.5以降、実行中のアプリからのみメッセージが表示されます。Log cat has a new option (on by default) which creates an application filter automatically such that only the launched application's output is shown
dmSherazi 2014

1
「選択したプロセスのログのみを表示する」でこれを押すと+1
lujop

もう1つの問題があります。特定のパッケージに対してフィルター構成からフィルターを適用すると、logcatが空白になります。
ブペシュ2015

17

方法を示すビデオチュートリアルを作成しました= https://youtu.be/xw2qE5ko_9I

ログに名前を付けます。私は「わわ」と呼びました。

ここに画像の説明を入力してください

Android Studioで、Android-> Edit Filter Configurationsに移動します

ここに画像の説明を入力してください

次に、ログに付けた名前を入力します。私の場合は「わわ」です。ここでは、実行できるフィルターの種類の例をいくつか示します。System.out、System.err、Logs、またはパッケージ名でフィルタリングできます。

ここに画像の説明を入力してください ここに画像の説明を入力してください ここに画像の説明を入力してください


2
行を含むログを非表示にするために、これを否定する正規表現はありますか?
Hugo M. Zuleta 2016年

私が知っていることではありません。正規表現を使用したい場合は、Android OSにadbし、BashターミナルでGrepを使用するのが最善の方法だと思います。
ジーン

^(?! chromium)(?! WebViewFactory)(?! zygote)....(?!TAG_NAME)のように非表示にするタグを追加します。タグに正規表現を使用したい場合など。「asd」で始まるすべてのタグを非表示にしたい場合は、(?!(^ asd))をこのタグの「リスト」に追加します。
ドルサンティア

11

最初にコードでタグ名を宣言します。

private static final String TAG = "MainTagName";

次に、何かを出力したい場所にログステートメントを追加します。

Log.d(TAG, "Activity created");

2番目の投稿のfree3domに従って、logcatタブで[フィルター]ドロップダウンをクリックし、[フィルター構成の編集]をクリックします。

この例では、 ログタグ(正規表現)オプションを使用して、パイプを使用して、3つの一致するタグ名のいずれかのログメッセージを表示しています。区切り文字(スペースなし):

MainTagName|SomeTagName|SomeOtherTagName

2
|を使用すると、logcat出力が得られません。2つのタグを分離する方法(Android Studio 1.2)
誰かどこか

2
@SomeoneSomewhere TAGの名前がLogステートメントの最初のパラメーターと一致することを確認します。タグ名とパイプの間にスペースがないことを確認してください(例:tag1 | tag2)。実際にコードをデバッグして、タグコマンドを実行していることを確認してください。logcatウィンドウの[ログレベル]ドロップダウンで、ログレベルが[デバッグ]または[詳細]に設定されていることを確認します。
HostMyBus

2
いろいろな組み合わせを試しました。スペースと|を含むフィルターがあったので、鉱山は失敗しました。「Tag1 | Tag2」のように。この答えを見つけてスペースを削除し、それは完全に機能します。ありがとう!
raddevus

5

Logcatでフィルターを有効にできませんでした。Android Studio 3.2でフィルターを表示するには、「フローティングモード」のオンとオフを再度切り替えて、フィルターを再表示する必要があります。

ここに画像の説明を入力してください


3

私にとって有効な代替策の1つShow only selected applicationは、フィルターメニューのオプションを選択することです。

ここに画像の説明を入力してください


「Firebase」オプションがいつ登場したか教えてください。私は今日初めてそれを見ました(私のアプリがもはやログに記録されなくなった理由を不思議に思っていた時代を過ごした後)。
Richard Le Mesurier 2017

そこにもあるとは思いもしませんでした。
Ojonugwa Jude Ochalifu 2017

1
私もそうではありませんでしたが、(知らずに)それを選択しました。とにかくThx
Richard Le Mesurier

2

他の回答の画像が古いのか、何か欠けているのかはわかりませんが、こちらが更新された画像です。

下部のAndroid Monitorタブをクリックし、logcatタブが選択されていることを確認します。次に、出力をフィルタリングするものを入力します。私は私のタグ名で私のものをフィルタリングしましたTAG

ここに画像の説明を入力してください


2

私自身の間違いを追加するだけです:

エミュレータと実際のデバイスを使用しているときに、logcatタブの左上のドロップダウンでデバッグしているデバイスに切り替えることを確認します。


1

これを参照してくださいhttps://medium.com/zinuzoid/if-you-developing-android-application-1bdff0a96205

LogCatフィルターを作成し、文字列の下に「LogTag」への挿入を追加すると、システム行が無視されます。

^(?!.*(BtGatt|dalvik|Environment|DataRouter|FA|art|Wifi|ServiceManager|Atfwd|tnet|MDnsDS|Download|Bluetooth|slim|QSEECOMAPI|WVCdm|QC-time|sensors|nanohub|Drm|Babel|Dropbox|gsamlab|Cryptd|Vold|QC_|Conscrypt|Dns|sound|NetWork|OpenGL|TLog|GMPM|Microphone|Process|Dynamite|cr_|VideoCapabilities|libEGL))
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.