diff --git a/.travis.yml b/.travis.yml index f58eecba5..a2b4446dc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,11 +1,8 @@ sudo: false language: java -dist: trusty +dist: bionic jdk: - # Not running tests against openjdk7, since the SunEC is not included in travis-ci's version of openjdk7. - # Not running tests against oraclejdk7, since travis-ci no longer provides it. - # - openjdk7 - openjdk11 cache: diff --git a/README.md b/README.md index d65a5bae7..62a541a91 100644 --- a/README.md +++ b/README.md @@ -396,7 +396,7 @@ When you build the latest code from source, you'll have access to the latest sna net.lightbody.bmp browsermob-core - 2.1.37 + test ``` diff --git a/browsermob-core/pom.xml b/browsermob-core/pom.xml index dfd9b1d83..fe4c6e211 100644 --- a/browsermob-core/pom.xml +++ b/browsermob-core/pom.xml @@ -6,7 +6,7 @@ browsermob-proxy net.lightbody.bmp - 2.1.37 + 2.1.38 4.0.0 @@ -69,12 +69,6 @@ jackson-core - - org.fluentd - fluent-logger - - - com.fasterxml.jackson.core jackson-databind @@ -269,5 +263,9 @@ httpclient test + + org.apache.logging.log4j + log4j-api + \ No newline at end of file diff --git a/browsermob-core/src/main/java/net/lightbody/bmp/filters/HarCaptureFilter.java b/browsermob-core/src/main/java/net/lightbody/bmp/filters/HarCaptureFilter.java index 0d1bc17bb..52f3541d0 100644 --- a/browsermob-core/src/main/java/net/lightbody/bmp/filters/HarCaptureFilter.java +++ b/browsermob-core/src/main/java/net/lightbody/bmp/filters/HarCaptureFilter.java @@ -6,28 +6,48 @@ import com.timgroup.statsd.StatsDClient; import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; -import io.netty.handler.codec.http.*; +import io.netty.handler.codec.http.HttpContent; +import io.netty.handler.codec.http.HttpHeaderNames; +import io.netty.handler.codec.http.HttpHeaderValues; +import io.netty.handler.codec.http.HttpHeaders; +import io.netty.handler.codec.http.HttpObject; +import io.netty.handler.codec.http.HttpRequest; +import io.netty.handler.codec.http.HttpResponse; +import io.netty.handler.codec.http.LastHttpContent; +import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.cookie.ClientCookieDecoder; import io.netty.handler.codec.http.cookie.Cookie; import io.netty.handler.codec.http.cookie.ServerCookieDecoder; -import net.lightbody.bmp.core.har.*; +import net.lightbody.bmp.core.har.Har; +import net.lightbody.bmp.core.har.HarCookie; +import net.lightbody.bmp.core.har.HarEntry; +import net.lightbody.bmp.core.har.HarNameValuePair; +import net.lightbody.bmp.core.har.HarPostData; +import net.lightbody.bmp.core.har.HarPostDataParam; +import net.lightbody.bmp.core.har.HarRequest; +import net.lightbody.bmp.core.har.HarResponse; import net.lightbody.bmp.exception.UnsupportedCharsetException; import net.lightbody.bmp.filters.support.HttpConnectTiming; import net.lightbody.bmp.filters.util.HarCaptureUtil; import net.lightbody.bmp.proxy.CaptureType; import net.lightbody.bmp.util.BeansJsonMapper; import net.lightbody.bmp.util.BrowserMobHttpUtil; -import org.apache.commons.lang3.StringUtils; -import org.fluentd.logger.FluentLogger; import org.littleshoot.proxy.impl.ProxyUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.slf4j.MDC; import java.net.InetAddress; import java.net.InetSocketAddress; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; -import java.util.*; +import java.util.Calendar; +import java.util.Date; +import java.util.EnumSet; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; @@ -38,15 +58,8 @@ public class HarCaptureFilter extends HttpsAwareFiltersAdapter { private static final Logger log = LoggerFactory.getLogger(HarCaptureFilter.class); - private static FluentLogger LOG; private static final InheritableThreadLocal isAlreadyLoggedIn = new InheritableThreadLocal<>(); - static { - if (StringUtils.isNotEmpty(System.getProperty("fluentdHost")) || StringUtils.isNotEmpty(System.getProperty("fluentdPort"))) { - LOG = FluentLogger.getLogger("mobproxy", System.getProperty("fluentdHost"), Integer.parseInt(System.getProperty("fluentdPort"))); - } - } - /** * The currently active HAR at the time the current request is received. */ @@ -780,17 +793,16 @@ public void serverToProxyResponseReceived() { } protected static void logFailedRequestIfRequired(HarRequest request, HarResponse response) { - if (Objects.nonNull(LOG) && - (Objects.isNull(isAlreadyLoggedIn.get()) || isAlreadyLoggedIn.get().hashCode() != request.hashCode()) + if ((Objects.isNull(isAlreadyLoggedIn.get()) || + isAlreadyLoggedIn.get().hashCode() != request.hashCode()) && (response.getStatus() >= 500 || response.getStatus() == 0)) { - Map data = new HashMap(); - data.put("caller", "mobproxy"); - data.put("http_response_code", String.valueOf(response.getStatus())); - data.put("http_host", request.getUrl()); - data.put("request_details", BeansJsonMapper.getJsonString(request)); - data.put("method", request.getMethod()); - data.put("response", BeansJsonMapper.getJsonString(response)); - LOG.log("failure", data); + MDC.put("caller", "mobproxy"); + MDC.put("http_response_code", String.valueOf(response.getStatus())); + MDC.put("http_host", request.getUrl()); + MDC.put("request_details", BeansJsonMapper.getJsonString(request)); + MDC.put("method", request.getMethod()); + MDC.put("response", BeansJsonMapper.getJsonString(response)); + log.error("received bad status code"); isAlreadyLoggedIn.set(request); } } diff --git a/browsermob-dist/pom.xml b/browsermob-dist/pom.xml index b6173ced1..6ae3e3396 100644 --- a/browsermob-dist/pom.xml +++ b/browsermob-dist/pom.xml @@ -4,7 +4,7 @@ browsermob-proxy net.lightbody.bmp - 2.1.37 + 2.1.38 4.0.0 @@ -45,11 +45,6 @@ logstash-gelf - - org.fluentd - fluent-logger - - org.apache.logging.log4j log4j-core diff --git a/browsermob-legacy/pom.xml b/browsermob-legacy/pom.xml index 5238c035d..985c60154 100644 --- a/browsermob-legacy/pom.xml +++ b/browsermob-legacy/pom.xml @@ -6,7 +6,7 @@ browsermob-proxy net.lightbody.bmp - 2.1.37 + 2.1.38 4.0.0 diff --git a/browsermob-rest/pom.xml b/browsermob-rest/pom.xml index fdcd0e80c..6c01e56fe 100644 --- a/browsermob-rest/pom.xml +++ b/browsermob-rest/pom.xml @@ -5,7 +5,7 @@ browsermob-proxy net.lightbody.bmp - 2.1.37 + 2.1.38 4.0.0 diff --git a/mitm/pom.xml b/mitm/pom.xml index 01d5dddb4..a0738f622 100644 --- a/mitm/pom.xml +++ b/mitm/pom.xml @@ -4,7 +4,7 @@ browsermob-proxy net.lightbody.bmp - 2.1.37 + 2.1.38 4.0.0 diff --git a/pom.xml b/pom.xml index 2436e5384..b1588f803 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 net.lightbody.bmp browsermob-proxy - 2.1.37 + 2.1.38 browsermob-core browsermob-legacy @@ -177,11 +177,11 @@ false install - ${basedir}/resources/jar/littleproxy-1.1.6.jar + ${basedir}/resources/jar/littleproxy-1.1.7.jar default org.littleshoot littleproxy - 1.1.6 + 1.1.7 jar @@ -239,11 +239,6 @@ ${logstash-gelf.version} - - org.fluentd - fluent-logger - 0.3.4 - com.google.guava @@ -315,7 +310,7 @@ org.littleshoot littleproxy - 1.1.6 + 1.1.7 diff --git a/resources/jar/littleproxy-1.1.6.jar b/resources/jar/littleproxy-1.1.6.jar deleted file mode 100644 index 927e769a3..000000000 Binary files a/resources/jar/littleproxy-1.1.6.jar and /dev/null differ diff --git a/resources/jar/littleproxy-1.1.7.jar b/resources/jar/littleproxy-1.1.7.jar new file mode 100644 index 000000000..b5130bdf5 Binary files /dev/null and b/resources/jar/littleproxy-1.1.7.jar differ