Android app that displays the logcat buffer in a system overlay window
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
GhostLog bump version Mar 6, 2014
Integration prepare next release Mar 6, 2014
.gitignore first commit Dec 27, 2013 fix maven jar download link Dec 3, 2014
screens.jpg update readme Jan 2, 2014

Ghost Log

Ghost Log is an Android application that displays the device logcat buffer in a system overlay window.


Android app on Google Play

NOTE: Device root (superuser) access is required to read system logs on Android 4.1 and above.

Non-root users can still use Ghost Log with their own apps via intent integration - see below.


  • Persistent logcat display as a system overlay
  • Customisable log filters and display options
  • Auto filter by the current foreground Activity process
  • Quick access to pause/play, clear & share functions via rich notification
  • Integration support for non-root devices

Non-root Integration

Developers can use Ghost Log to display log messages generated by their own apps on non-rooted devices via a broadcast intent interface. This is currently in an experimental phase.

Integration will enable your app to receive messages from the Ghost Log app to start and stop a service inside your app which will monitor and broadcast all log output generated by your application processes back to Ghost Log for display.

NOTE: You should enable this integration for debug builds only to avoid exposing log output to third parties in production.


If you are using the Gradle build system, simply add the following dependency in your build.gradle file:

dependencies {
    debugCompile 'com.readystatesoftware.ghostlog:ghostlog-integration:+@aar'

Using debugCompile (recommended) ensures the integration library is never compiled into a release build.


If you are using the old build system, download and place the integration library JAR inside your project libs folder and add the following to your AndroidManifest.xml (inside the <application> tag):

<!--Receives intents from Ghost Log app to start & stop the integration service-->
<receiver android:name="com.readystatesoftware.ghostlog.integration.IntegrationReceiver" 
    android:permission="com.readystatesoftware.ghostlog.permission.READ_LOGS" >
        <action android:name="com.readystatesoftware.ghostlog.integration.COMMAND" />
<!--Reads logs and broadcasts them to Ghost Log-->
<service android:name="com.readystatesoftware.ghostlog.integration.IntegrationService" />


Author: Jeff Gilfelt

Uses elements from CatLog by Nolan Lawson


Copyright (C) 2014 readyState Software Ltd

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.