@Signature public String remoteAddress() { return request.getRemoteAddr(); }
@Override public void log(Request request, Response response) { if (logger.isDebugEnabled()) { logger.debug( "%s %s %s %s", request.getRemoteAddr(), request.getMethod(), request.getHttpURI().toString(), request.getProtocol() ); } } }
addr = request.getRemoteAddr();
@Override public String getRemoteAddr() { if (_remoteAddr != null) return _remoteAddr; if (_remoteHost != null) return _remoteHost; return super.getRemoteAddr(); }
@Override public String getRemoteAddr() { return request.getRemoteAddr(); }
@Override public String getRemoteAddr() { return request.getRemoteAddr(); }
public static class Filter implements ContainerRequestFilter { @Context private javax.inject.Provider<Request> requestProvider; @Override public void filter(ContainerRequestContext requestContext) throws IOException { final Request request = requestProvider.get(); System.out.println(request.getRemoteAddr()); } }
public String getRemoteHost() { if (_dns) { if (_remoteHost != null) { return _remoteHost; } return _endp == null?null:_endp.getRemoteHost(); } return getRemoteAddr(); }
public String getRemoteHost() { if (_dns) { if (_remoteHost != null) { return _remoteHost; } return _endp == null?null:_endp.getRemoteHost(); } return getRemoteAddr(); }
public String getRemoteHost() { if (_dns) { if (_remoteHost != null) { return _remoteHost; } return _endp == null?null:_endp.getRemoteHost(); } return getRemoteAddr(); }
public String getRemoteHost() { if (_dns) { if (_remoteHost != null) { return _remoteHost; } return _endp == null?null:_endp.getRemoteHost(); } return getRemoteAddr(); }
public String getRemoteHost() { if (_dns) { if (_remoteHost != null) { return _remoteHost; } return _endp == null?null:_endp.getRemoteHost(); } return getRemoteAddr(); }
@Override public String getAddress() { String addr = null; if (preferProxiedForAddress) { addr = request.getHeader(HttpHeader.X_FORWARDED_FOR.toString()); } if (addr == null) { addr = request.getRemoteAddr(); } return addr; }
public void log(Request request, Response response) { if (LOG.isInfoEnabled()) { String remoteAddr = request.getRemoteAddr(); String method = request.getMethod(); String protocol = request.getProtocol(); StringBuffer url = request.getRequestURL(); LOG.info("Request: " + protocol + " " + method + " " + remoteAddr + " " + url); } }
@Override public String getClientAddress() { return getConnection().getRequest().getRemoteAddr(); }
@Test public void testNoXForwardedFor() throws Exception { final Request request = mock(Request.class); final Response response = mock(Response.class); final String clientIp = "1.1.1.1"; when(request.getRemoteAddr()).thenReturn(clientIp); InMemoryEventClient eventClient = new InMemoryEventClient(); DelimitedRequestLog logger = new DelimitedRequestLog(file.getAbsolutePath(), 1, Long.MAX_VALUE, null, eventClient); logger.log(request, response); logger.stop(); List<Object> events = eventClient.getEvents(); Assert.assertEquals(events.size(), 1); HttpRequestEvent event = (HttpRequestEvent) events.get(0); Assert.assertEquals(event.getClientAddress(), clientIp); }
@Override public void log(Request request, Response response) { if (logger.isDebugEnabled()) { logger.debug( "%s %s %s %s", request.getRemoteAddr(), request.getMethod(), request.getHttpURI().toString(), request.getProtocol() ); } } }
@Override public void log(Request request, Response response) { if (logger.isDebugEnabled()) { logger.debug( "%s %s %s %s", request.getRemoteAddr(), request.getMethod(), request.getHttpURI().toString(), request.getProtocol() ); } } }
@Test public void testXForwardedForSkipPrivateAddresses() throws Exception { Request request = mock(Request.class); Response response = mock(Response.class); String clientIp = "1.1.1.1"; when(request.getRemoteAddr()).thenReturn("9.9.9.9"); when(request.getHeaders("X-FORWARDED-FOR")).thenReturn(Collections.enumeration(ImmutableList.of(clientIp, "192.168.1.2, 172.16.0.1", "169.254.1.2, 127.1.2.3", "10.1.2.3"))); when(request.getHttpVersion()).thenReturn(HTTP_2); InMemoryEventClient eventClient = new InMemoryEventClient(); DelimitedRequestLog logger = new DelimitedRequestLog(file.getAbsolutePath(), 1, 256, Long.MAX_VALUE, null, eventClient, false); logger.log(request, response, 0, 0, 0, new DoubleSummaryStats(new DoubleSummaryStatistics())); logger.stop(); List<Object> events = eventClient.getEvents(); assertEquals(events.size(), 1); HttpRequestEvent event = (HttpRequestEvent) events.get(0); assertEquals(event.getClientAddress(), clientIp); } }
@Test public void testNoXForwardedFor() throws Exception { Request request = mock(Request.class); Response response = mock(Response.class); String clientIp = "1.1.1.1"; when(request.getRemoteAddr()).thenReturn(clientIp); when(request.getHttpVersion()).thenReturn(HTTP_2); InMemoryEventClient eventClient = new InMemoryEventClient(); DelimitedRequestLog logger = new DelimitedRequestLog(file.getAbsolutePath(), 1, 256, Long.MAX_VALUE, null, eventClient, false); logger.log(request, response, 0, 0, 0, new DoubleSummaryStats(new DoubleSummaryStatistics())); logger.stop(); List<Object> events = eventClient.getEvents(); assertEquals(events.size(), 1); HttpRequestEvent event = (HttpRequestEvent) events.get(0); assertEquals(event.getClientAddress(), clientIp); }