Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

seekting/logger

Repository files navigation

Wellcome to LoggerLib

gradle dependencies

compile 'com.seekting:loggerlib:1.0.3'

init in Application

public class App extends Application {
 @Override
 public void onCreate() {
 super.onCreate();
 File dir = Environment.getExternalStorageDirectory();
 File myDir = new File(dir, "logger_demo");
 int pid = android.os.Process.myPid();
 String processName = getCurrentProcessName();
 LoggerEvent loggerEvent = new LoggerEvent() {
 @Override
 public void onPreWrite(File f, String tag, Object msg) {
// Log.d("seekting", "App.onPreWrite()" + f + msg);
 }
 @Override
 public void onWrite(File f, String tag, Object msg) {
 Log.d("seekting", "App.onPreWrite()" + f + msg);
 }
 @Override
 public void onPostWrite(File f, String tag, Object msg) {
 }
 @Override
 public void dividerException(File f, Throwable t) {
 Log.d("seekting", "App.onException()", t);
 }
 @Override
 public void dividerException(Throwable t) {
 Log.d("seekting", "App.onException()", t);
 }
 @Override
 public void onWriteText(File file, String text) {
 }
 @Override
 public void onRecordLogcat(String realFileName) {
 Log.d("seekting", "App.onRecordLogcat()" + realFileName);
 }
 };
 LoggerOutputUtil.LoggerOutConfig config = new LoggerOutputUtil.LoggerOutConfig();
 config.dir(myDir.getAbsolutePath())
 .pid(pid + "")
 .processName(processName)
 .loggerEvent(loggerEvent)
 .fileMaxByteSize(4 * 1024 * 1024)
 .fileOverDueTimeMillis(5 * 60 * 1000);
// .logWriter(new LogWriter() {
// @Override
// public void doWrite(File f, String tag, Object msg, String line) {
// Log.d("seekting", "App.doWrite()" + line);
// }
// });
 LoggerOutputUtil.init(config);
 }
 public static void clear() {
 File dir1 = Environment.getExternalStorageDirectory();
 File myDir = new File(dir1, "logger_demo");
 if (myDir.isDirectory()) {
 File[] l = myDir.listFiles();
 for (File file : l) {
 if (!file.isDirectory()) {
 boolean suc = file.delete();
 Log.d("seekting", "App.clear()" + file + ",suc=" + suc);
 }
 }
 } else {
 boolean suc = myDir.delete();
 Log.d("seekting", "App.clear()" + myDir + ",suc=" + suc);
 }
 }
 }

logEvent

LoggerOutputUtil.d(TAG, "hello world!");

dumpLogcat

LoggerOutputUtil.recordLogcat("test");

pull log file from your device

you can save log in customer dir by LoggerOutputUtil.init method,but only invoke once in process lifecycle

and log file will save in customer dir.you can cmd:

adb pull customer dir

get your log files.

TimingLoggers

You can analyze the wast time each operate, by TimingLoggers

 TimingLoggers.begin("seekting", "onCreate");
 TimingLoggers.addSplit("onCreate", "1");
 SystemClock.sleep(120);
 TimingLoggers.addSplit("onCreate", "2");
 SystemClock.sleep(14);
 TimingLoggers.addSplit("onCreate", "3");
 SystemClock.sleep(12);
 TimingLoggers.addSplit("onCreate", "4");
 SystemClock.sleep(11);
 TimingLoggers.dumpToLog("onCreate");
09-14 21:13:47.747 9614-9614/com.example.logger:ui D/seekting: onCreate: begin
09-14 21:13:47.747 9614-9614/com.example.logger:ui D/seekting: onCreate: 0 ms, 1
09-14 21:13:47.747 9614-9614/com.example.logger:ui D/seekting: onCreate: 120 ms, 2
09-14 21:13:47.747 9614-9614/com.example.logger:ui D/seekting: onCreate: 15 ms, 3
09-14 21:13:47.747 9614-9614/com.example.logger:ui D/seekting: onCreate: 12 ms, 4
09-14 21:13:47.747 9614-9614/com.example.logger:ui D/seekting: onCreate: end, 147 ms

About

a logger lib,log event output into sdcard file.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /