Popularity
6.9
Stable
Activity
3.2
-
1,307
30
103

Code Quality Rank: L5
Programming language: Kotlin
License: MIT License
Tags: Logger    
Latest version: v4.4.0

LoggingInterceptor alternatives and similar packages

Based on the "Logger" category.
Alternatively, view LoggingInterceptor alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of LoggingInterceptor or a related project?

Add another 'Logger' Package

README

LoggingInterceptor - Interceptor for OkHttp3 with pretty logger

Build Status Android Arsenal API JAVA SwaggerUI

Usage

val client = OkHttpClient.Builder()
    client.addInterceptor(LoggingInterceptor.Builder()
             .setLevel(Level.BASIC)
             .log(VERBOSE)
             .addHeader("cityCode","53")
             .addQueryParam("moonStatus", "crescent")
             .build())

Download

Gradle:

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

dependencies {
    implementation('com.github.ihsanbal:LoggingInterceptor:3.1.0') {
            exclude group: 'org.json', module: 'json'
        }
}

Maven:

<repository>
   <id>jitpack.io</id>
   <url>https://jitpack.io</url>
</repository>

<dependency>
    <groupId>com.github.ihsanbal</groupId>
    <artifactId>LoggingInterceptor</artifactId>
    <version>3.1.0</version>
</dependency>

Logger & Mock Support

LoggingInterceptor.Builder()
    //Add logger to print log as plain text
    .logger(object : Logger {
          override fun log(level: Int, tag: String?, msg: String?) {
              Log.e("$tag - $level", "$msg")
          }
      })
      //Enable mock for develop app with mock data
      .enableMock(BuildConfig.MOCK, 1000L, object : BufferListener {
          override fun getJsonResponse(request: Request?): String? {
              val segment = request?.url?.pathSegments?.getOrNull(0)
              return mAssetManager.open(String.format("mock/%s.json", segment)).source().buffer().readUtf8()
          }
      })

Level

setLevel(Level.BASIC)
          .NONE // No logs
          .BASIC // Logging url,method,headers and body.
          .HEADERS // Logging headers
          .BODY // Logging body

Platform - Platform

log(Platform.WARN) // setting log type

Tag

tag("LoggingI") // Request & response each log tag
request("request") // Request log tag
response("response") // Response log tag

Header - Recipes

addHeader("token", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9 ") // Adding to request

Notes

Some tips about log at this blog post: “The way to get faster on development.”

Also use the filter & configure logcat header for a better result