Johann
Johann

Reputation: 29867

Keep Logcat from deleting entries

In Eclipse, I notice that Logcat only retains a few dozen entries and deletes the older ones as soon as a new one come in. Is there a way to prevent this? I need my app to run for a long time and not lose any entries because my app eventually hangs or crashes after a few days, and I want to see if something in Logcat has been recorded.

Upvotes: 3

Views: 1141

Answers (4)

S P
S P

Reputation: 854

if you want to keep your app running for days.. its better you capture your logs from adb shell. the common shell command would be :

logcat -c \\ to clear previous logs
logcat -v time>yourLogs.txt & \\ to capture fresh logs

Upvotes: 0

Randy
Randy

Reputation: 4381

Here's a better solution:

Set the Default Uncaught Exception Handler. Whenever the app crashes, this will be called with the exception. Simply write a log entry saying it crashed then dump the logcat to a file. Finally, make sure you re-throw the exception to make sure the app crashes and funky things don't happen. Note: This is per thread, keep that in mind.

Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {
    @Override
    public void uncaughtException(Thread thread, Throwable ex) {
        Log.e("TAG", "---My app crashed just now---", ex);

        //TODO: Dump logcat to file

        throw new RuntimeException(ex);
    }
});

Upvotes: 0

Swayam
Swayam

Reputation: 16354

I am not sure if this is the most elegant solution to the problem, but you can always increase the LogCat message size in Eclipse.

Window -> Preferences -> Android -> LogCat -> Maximum number of LogCat messages to buffer

The default is 5000, I believe. You can set it to be very high if you are planning to run your application for a long time.

Upvotes: 3

Rajesh
Rajesh

Reputation: 2618

i think you need to increase this show image enter image description here

Upvotes: 0

Related Questions