-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* collapsing filter view * added menu to clear files and to open any existing log file * changed functions to use the new IFileLoggingSetup class instead of File * added the ability to provide a custom log level and date extractor (from a line in a log file) + added a default extractor that supports the default format of the default file logging setup
- Loading branch information
Showing
19 changed files
with
367 additions
and
172 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
plugins { | ||
id 'com.android.library' | ||
id 'kotlin-android' | ||
id 'kotlin-parcelize' | ||
} | ||
|
||
group = 'com.github.MFlisar' | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
plugins { | ||
id 'com.android.library' | ||
id 'kotlin-android' | ||
id 'kotlin-parcelize' | ||
} | ||
|
||
group = 'com.github.MFlisar' | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
33 changes: 33 additions & 0 deletions
33
library-viewer/src/main/java/com/michaelflisar/lumberjack/DefaultDataExtractor.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
package com.michaelflisar.lumberjack | ||
|
||
import com.michaelflisar.lumberjack.interfaces.IDataExtractor | ||
import com.michaelflisar.lumberjack.core.Level | ||
import kotlinx.parcelize.Parcelize | ||
|
||
@Parcelize | ||
object DefaultDataExtractor : IDataExtractor { | ||
|
||
override fun extract(line: Int, fullLogLine: String): IDataExtractor.Data? { | ||
// default log line looks like following: | ||
// 2000-01-01 00:00:00.000 INFO Some log | ||
// => 23 chars (including 1 space) + 2nd space + TAG + 3rd space + rest | ||
if (fullLogLine.trim().isNotEmpty()) { | ||
var date = "" | ||
var level = Level.UNKNOWN | ||
var log = "" | ||
if (fullLogLine.count { it == ' ' } > 3) { | ||
val ind1 = fullLogLine.indexOf(' ') | ||
val ind2 = fullLogLine.indexOf(' ', ind1 + 1) | ||
val ind3 = fullLogLine.indexOf(' ', ind2 + 1) | ||
val levelString = fullLogLine.substring(ind2, ind3).trim() | ||
date = fullLogLine.substring(0, ind2).trim() | ||
level = Level.values().find { it.name == levelString } | ||
?: Level.UNKNOWN | ||
log = fullLogLine.substring(ind3).trimStart() | ||
|
||
} | ||
return IDataExtractor.Data(line, fullLogLine, level, date, log) | ||
} | ||
return null | ||
} | ||
} |
12 changes: 4 additions & 8 deletions
12
library-viewer/src/main/java/com/michaelflisar/lumberjack/ExtensionViewer.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,15 @@ | ||
package com.michaelflisar.lumberjack | ||
|
||
import android.app.NotificationManager | ||
import android.app.PendingIntent | ||
import android.content.Context | ||
import android.content.pm.PackageManager | ||
import androidx.core.app.NotificationCompat | ||
import com.michaelflisar.feedbackmanager.FeedbackBuilder | ||
import java.io.File | ||
import com.michaelflisar.lumberjack.interfaces.IFileLoggingSetup | ||
import com.michaelflisar.lumberjack.view.LumberjackViewer | ||
|
||
/* | ||
* convenient extension to show a log file | ||
*/ | ||
fun L.showLog( | ||
context: Context, | ||
fileLoggingSetup: FileLoggingSetup | ||
fileLoggingSetup: IFileLoggingSetup | ||
) { | ||
LumberjackViewer.show(context, fileLoggingSetup.getLatestLogFiles()!!) | ||
LumberjackViewer.show(context, fileLoggingSetup) | ||
} |
26 changes: 0 additions & 26 deletions
26
library-viewer/src/main/java/com/michaelflisar/lumberjack/LumberjackViewer.kt
This file was deleted.
Oops, something went wrong.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
42 changes: 42 additions & 0 deletions
42
library-viewer/src/main/java/com/michaelflisar/lumberjack/view/LumberjackViewer.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
package com.michaelflisar.lumberjack.view | ||
|
||
import android.content.Context | ||
import android.content.Intent | ||
import android.os.Bundle | ||
import com.michaelflisar.lumberjack.DefaultDataExtractor | ||
import com.michaelflisar.lumberjack.interfaces.IDataExtractor | ||
import com.michaelflisar.lumberjack.interfaces.IFileLoggingSetup | ||
import com.michaelflisar.lumberjack.interfaces.ILumberjackViewActivityProvider | ||
|
||
object LumberjackViewer : ILumberjackViewActivityProvider { | ||
|
||
const val FILE_LOGGING_SETUP = "FILE-LOGGING_SETUP" | ||
const val DATA_EXTRACTOR = "DATA-EXTRACTOR" | ||
|
||
fun show( | ||
context: Context, | ||
fileLoggingSetup: IFileLoggingSetup, | ||
dataExtractor: IDataExtractor = DefaultDataExtractor | ||
) { | ||
context.startActivity(createIntent(context, fileLoggingSetup, dataExtractor)) | ||
} | ||
|
||
override fun createIntent(context: Context, fileLoggingSetup: IFileLoggingSetup): Intent { | ||
return createIntent(context, fileLoggingSetup, DefaultDataExtractor) | ||
} | ||
|
||
override fun createIntent( | ||
context: Context, | ||
fileLoggingSetup: IFileLoggingSetup, | ||
dataExtractor: IDataExtractor | ||
): Intent { | ||
return Intent( | ||
context, | ||
LumberjackViewerActivity::class.java | ||
).apply { | ||
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) | ||
putExtra(FILE_LOGGING_SETUP, fileLoggingSetup) | ||
putExtra(DATA_EXTRACTOR, dataExtractor) | ||
} | ||
} | ||
} |
Oops, something went wrong.