You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by fs...@apache.org on 2019/05/26 10:16:18 UTC
svn commit: r1860047 - in /jmeter/trunk: bin/log4j2.xml
src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java
test/src/org/apache/jmeter/engine/LocalHostTest.java
Author: fschumacher
Date: Sun May 26 10:16:18 2019
New Revision: 1860047
URL: http://svn.apache.org/viewvc?rev=1860047&view=rev
Log:
Try to find a network device to use for Bug52310 test
Modified:
jmeter/trunk/bin/log4j2.xml
jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java
jmeter/trunk/test/src/org/apache/jmeter/engine/LocalHostTest.java
Modified: jmeter/trunk/bin/log4j2.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/log4j2.xml?rev=1860047&r1=1860046&r2=1860047&view=diff
==============================================================================
--- jmeter/trunk/bin/log4j2.xml (original)
+++ jmeter/trunk/bin/log4j2.xml Sun May 26 10:16:18 2019
@@ -52,6 +52,7 @@
<Logger name="org.apache.jmeter.protocol.http" level="debug" />
-->
<!-- # For CookieManager, AuthManager etc: -->
+ <Logger name="org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl" level="debug" />
<!--
<Logger name="org.apache.jmeter.protocol.http.control" level="debug" />
<Logger name="org.apache.jmeter.protocol.ftp" level="warn" />
Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java?rev=1860047&r1=1860046&r2=1860047&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java (original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java Sun May 26 10:16:18 2019
@@ -555,6 +555,10 @@ public class HTTPHC4Impl extends HTTPHCA
HTTPCLIENTS_CACHE_PER_THREAD_AND_HTTPCLIENTKEY.get();
triple =
mapHttpClientPerHttpClientKey.get(key);
+ if (log.isDebugEnabled()) {
+ log.debug("Got triple: {} for key {} in map {} on thread {}", triple, key,
+ mapHttpClientPerHttpClientKey, Thread.currentThread());
+ }
URI uri = url.toURI();
httpRequest = createHttpRequest(uri, method, areFollowingRedirect);
setupRequest(url, httpRequest, res); // can throw IOException
@@ -708,6 +712,7 @@ public class HTTPHC4Impl extends HTTPHCA
private void saveProxyAuth(
MutableTriple<CloseableHttpClient, AuthState, PoolingHttpClientConnectionManager> triple,
HttpContext localContext) {
+ log.debug("Store Proxy Auth: {}", triple);
if (triple != null) {
triple.setMiddle((AuthState) localContext.getAttribute(HttpClientContext.PROXY_AUTH_STATE));
}
Modified: jmeter/trunk/test/src/org/apache/jmeter/engine/LocalHostTest.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/test/src/org/apache/jmeter/engine/LocalHostTest.java?rev=1860047&r1=1860046&r2=1860047&view=diff
==============================================================================
--- jmeter/trunk/test/src/org/apache/jmeter/engine/LocalHostTest.java (original)
+++ jmeter/trunk/test/src/org/apache/jmeter/engine/LocalHostTest.java Sun May 26 10:16:18 2019
@@ -21,7 +21,9 @@ package org.apache.jmeter.engine;
import java.net.InetAddress;
import java.net.InterfaceAddress;
import java.net.NetworkInterface;
+import java.net.SocketException;
import java.net.UnknownHostException;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.stream.Collectors;
@@ -42,6 +44,8 @@ public class LocalHostTest {
.map(this::ifaceWithAddresses)
.collect(Collectors.joining(", "));
perr("Interfaces: {" + interfaces + "}");
+ String externInterface = guessExternalIPv4Interface();
+ perr("Choose " + externInterface + " to talk to external services");
String localHost = getLocalHost().getHostAddress();
boolean localHostIsBound = Collections
.list(NetworkInterface.getNetworkInterfaces()).stream()
@@ -56,6 +60,17 @@ public class LocalHostTest {
localHostIsBound);
}
+ private String guessExternalIPv4Interface() throws SocketException {
+ return Collections.list(NetworkInterface.getNetworkInterfaces()).stream()
+ .map(n -> Collections.list(n.getInetAddresses()))
+ .flatMap(ArrayList<InetAddress>::stream)
+ .filter(i -> !i.isLoopbackAddress())
+ .filter(i -> i.getAddress().length == 4)
+ .map(InetAddress::getHostAddress)
+ .findFirst()
+ .orElse("NO DEVICE");
+ }
+
private SubnetInfo toSubnetInfo(InterfaceAddress addr) {
return new SubnetUtils(
addr.getAddress().getHostAddress() + "/" + addr.getNetworkPrefixLength())