Example usage for io.netty.handler.logging LogLevel DEBUG

List of usage examples for io.netty.handler.logging LogLevel DEBUG

Introduction

In this page you can find the example usage for io.netty.handler.logging LogLevel DEBUG.

Prototype

LogLevel DEBUG

To view the source code for io.netty.handler.logging LogLevel DEBUG.

Click Source Link

Usage

From source file:io.reactivex.netty.contexts.http.ContextPropagationTest.java

License:Apache License

@Before
public void setUp() throws Exception {
    mockServer = RxNetty.newHttpServerBuilder(0, new RequestHandler<ByteBuf, ByteBuf>() {
        @Override// ww  w .j  a  va  2s.  c o  m
        public Observable<Void> handle(final HttpServerRequest<ByteBuf> request,
                HttpServerResponse<ByteBuf> response) {
            final String requestId = request.getHeaders().get(REQUEST_ID_HEADER_NAME);
            if (null == requestId) {
                System.err.println("Request Id not found.");
                return Observable.error(new AssertionError("Request Id not found in mock server."));
            }
            response.getHeaders().add(REQUEST_ID_HEADER_NAME, requestId);
            ContextKeySupplier supplier = new ContextKeySupplier() {
                @Override
                public String getContextValue(String key) {
                    return request.getHeaders().get(key);
                }
            };
            ContextsContainer container = new ContextsContainerImpl(supplier);
            try {
                String ctx1 = container.getContext(CTX_1_NAME);
                TestContext ctx2 = container.getContext(CTX_2_NAME);
                if (null != ctx1 && null != ctx2 && ctx1.equals(CTX_1_VAL) && ctx2.equals(CTX_2_VAL)) {
                    return response.writeStringAndFlush("Welcome!");
                } else {
                    response.setStatus(HttpResponseStatus.BAD_REQUEST);
                    return response.writeStringAndFlush("Contexts not found or have wrong values.");
                }
            } catch (ContextSerializationException e) {
                return Observable.error(e);
            }
        }
    }).enableWireLogging(LogLevel.DEBUG).build();
    mockServer.start();
}

From source file:io.reactivex.netty.contexts.http.ContextPropagationTest.java

License:Apache License

@Test
public void testEndToEnd() throws Exception {
    HttpServer<ByteBuf, ByteBuf> server = newTestServerBuilder(
            new Func1<HttpClient<ByteBuf, ByteBuf>, Observable<HttpClientResponse<ByteBuf>>>() {
                @Override//from w  ww .j  a  v  a 2  s .  c om
                public Observable<HttpClientResponse<ByteBuf>> call(HttpClient<ByteBuf, ByteBuf> client) {
                    return client.submit(HttpClientRequest.createGet("/"));
                }
            }).enableWireLogging(LogLevel.ERROR).build().start();

    HttpClient<ByteBuf, ByteBuf> testClient = RxNetty
            .<ByteBuf, ByteBuf>newHttpClientBuilder("localhost", server.getServerPort())
            .enableWireLogging(LogLevel.DEBUG).build();

    String reqId = "testE2E";
    sendTestRequest(testClient, reqId);
}

From source file:io.reactivex.netty.contexts.http.ContextPropagationTest.java

License:Apache License

private HttpServerBuilder<ByteBuf, ByteBuf> newTestServerBuilder(
        final Func1<HttpClient<ByteBuf, ByteBuf>, Observable<HttpClientResponse<ByteBuf>>> clientInvoker) {
    return RxContexts.newHttpServerBuilder(0, new RequestHandler<ByteBuf, ByteBuf>() {
        @Override//from w ww. ja  v a2s . c om
        public Observable<Void> handle(HttpServerRequest<ByteBuf> request,
                final HttpServerResponse<ByteBuf> serverResponse) {
            String reqId = getCurrentRequestId();
            if (null == reqId) {
                return Observable.error(new AssertionError("Request Id not found at server."));
            }
            ContextsContainer container = getCurrentContextContainer();
            if (null == container) {
                return Observable.error(new AssertionError("Context container not found by server."));
            }
            container.addContext(CTX_1_NAME, CTX_1_VAL);
            container.addContext(CTX_2_NAME, CTX_2_VAL, new TestContextSerializer());

            HttpClient<ByteBuf, ByteBuf> client = RxContexts
                    .<ByteBuf, ByteBuf>newHttpClientBuilder("localhost", mockServer.getServerPort(),
                            REQUEST_ID_HEADER_NAME, RxContexts.DEFAULT_CORRELATOR)
                    .withMaxConnections(1).enableWireLogging(LogLevel.DEBUG).build();

            return clientInvoker.call(client)
                    .flatMap(new Func1<HttpClientResponse<ByteBuf>, Observable<Void>>() {
                        @Override
                        public Observable<Void> call(HttpClientResponse<ByteBuf> response) {
                            serverResponse.setStatus(response.getStatus());
                            return serverResponse.close(true);
                        }
                    });
        }
    }, REQUEST_ID_HEADER_NAME, RxContexts.DEFAULT_CORRELATOR);
}

From source file:io.reactivex.netty.metrics.RxMetricEventsTest.java

License:Apache License

@Test
public void testMetricEventsSanityCheck() throws Exception {
    final CountDownLatch bothClientAndServerDone = new CountDownLatch(2);
    final ChannelCloseListener serverCloseListener = new ChannelCloseListener();
    HttpServer<ByteBuf, ByteBuf> server = RxNetty
            .newHttpServerBuilder(7999, new RequestHandler<ByteBuf, ByteBuf>() {
                @Override/* ww  w .j a v  a 2s .  co  m*/
                public Observable<Void> handle(HttpServerRequest<ByteBuf> request,
                        HttpServerResponse<ByteBuf> response) {
                    request.getContent().subscribe();
                    response.writeString("Hellooo!!!");
                    return response.close().finallyDo(new Action0() {
                        @Override
                        public void call() {
                            bothClientAndServerDone.countDown();
                        }
                    });
                }
            }).appendPipelineConfigurator(
                    new PipelineConfigurator<HttpServerRequest<ByteBuf>, HttpServerResponse<ByteBuf>>() {
                        @Override
                        public void configureNewPipeline(ChannelPipeline pipeline) {
                            pipeline.addLast(serverCloseListener);
                        }
                    })
            .enableWireLogging(LogLevel.ERROR).build().start();
    TestableServerMetricsEventListener listener = new TestableServerMetricsEventListener();
    server.subscribe(listener);

    TestableClientMetricsEventListener clientListener = new TestableClientMetricsEventListener();
    final ChannelCloseListener clientCloseListener = new ChannelCloseListener();
    HttpClient<ByteBuf, ByteBuf> client = RxNetty
            .<ByteBuf, ByteBuf>newHttpClientBuilder("localhost", server.getServerPort())
            .enableWireLogging(LogLevel.DEBUG).appendPipelineConfigurator(
                    new PipelineConfigurator<HttpClientResponse<ByteBuf>, HttpClientRequest<ByteBuf>>() {
                        @Override
                        public void configureNewPipeline(ChannelPipeline pipeline) {
                            pipeline.addLast(clientCloseListener);
                        }
                    })
            .withNoConnectionPooling().build();
    client.subscribe(clientListener);

    client.submit(HttpClientRequest.createGet("/")).finallyDo(new Action0() {
        @Override
        public void call() {
            bothClientAndServerDone.countDown();
        }
    }).toBlocking().last();

    bothClientAndServerDone.await(1, TimeUnit.MINUTES);
    clientCloseListener.waitForClose(1, TimeUnit.MINUTES);
    serverCloseListener.waitForClose(1, TimeUnit.MINUTES);

    Assert.assertTrue("Invalid TCP Server metric callbacks: " + listener.getEventTypeVsInvalidInvocations(),
            listener.getEventTypeVsInvalidInvocations().isEmpty());
    Assert.assertTrue(
            "Invalid HTTP Server metric callbacks: " + listener.getHttpEventTypeVsInvalidInvocations(),
            listener.getHttpEventTypeVsInvalidInvocations().isEmpty());

    Assert.assertTrue(
            "Invalid TCP client metric callbacks: " + clientListener.getEventTypeVsInvalidInvocations(),
            clientListener.getEventTypeVsInvalidInvocations().isEmpty());
    Assert.assertTrue(
            "Invalid HTTP client metric callbacks: " + clientListener.getHttpEventTypeVsInvalidInvocations(),
            clientListener.getHttpEventTypeVsInvalidInvocations().isEmpty());

    testServerEventFired(listener, ServerMetricsEvent.EventType.NewClientConnected, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.ConnectionHandlingStart, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.ConnectionHandlingSuccess, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.ConnectionCloseStart, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.ConnectionCloseSuccess, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.WriteStart);
    testServerEventFired(listener, ServerMetricsEvent.EventType.WriteSuccess);
    testServerEventFired(listener, ServerMetricsEvent.EventType.FlushStart, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.FlushSuccess, 1);
    testServerEventFired(listener, ServerMetricsEvent.EventType.BytesRead);

    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.NewRequestReceived, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.RequestHandlingStart, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.RequestHeadersReceived, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.RequestReceiveComplete, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.ResponseHeadersWriteStart, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.ResponseHeadersWriteSuccess, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.ResponseContentWriteStart, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.ResponseContentWriteSuccess, 1);
    testHttpServerEventFired(listener, HttpServerMetricsEvent.EventType.RequestHandlingSuccess, 1);

    testClientEventFired(clientListener, ClientMetricsEvent.EventType.ConnectStart, 1);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.ConnectSuccess, 1);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.FlushStart, 1);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.FlushSuccess, 1);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.WriteStart);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.WriteSuccess);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.BytesRead);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.ConnectionCloseStart);
    testClientEventFired(clientListener, ClientMetricsEvent.EventType.ConnectionCloseSuccess);

    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.RequestSubmitted, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.RequestHeadersWriteStart, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.RequestHeadersWriteSuccess, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.RequestWriteComplete, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.ResponseHeadersReceived, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.ResponseContentReceived, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.ResponseReceiveComplete, 1);
    testHttpClientEventFired(clientListener, HttpClientMetricsEvent.EventType.RequestProcessingComplete, 1);
}

From source file:io.reactivex.netty.protocol.http.client.HttpClientPoolTest.java

License:Apache License

private HttpClientImpl<ByteBuf, ByteBuf> newHttpClient(int maxConnections, long idleTimeout,
        HttpClient.HttpClientConfig clientConfig) {
    if (null == clientConfig) {
        clientConfig = HttpClient.HttpClientConfig.Builder.newDefaultConfig();
    }/*from  www. j a  v  a2  s  . co m*/
    PipelineConfigurator<HttpClientResponse<ByteBuf>, HttpClientRequest<ByteBuf>> configurator = new PipelineConfiguratorComposite<HttpClientResponse<ByteBuf>, HttpClientRequest<ByteBuf>>(
            PipelineConfigurators.httpClientConfigurator(), new PipelineConfigurator() {
                @Override
                public void configureNewPipeline(ChannelPipeline pipeline) {
                    channelCloseListener.reset();
                    pipeline.addFirst(channelCloseListener);
                }
            });

    HttpClientImpl<ByteBuf, ByteBuf> client = (HttpClientImpl<ByteBuf, ByteBuf>) new HttpClientBuilder<ByteBuf, ByteBuf>(
            "localhost", port).withMaxConnections(maxConnections).withIdleConnectionsTimeoutMillis(idleTimeout)
                    .config(clientConfig).enableWireLogging(LogLevel.DEBUG).pipelineConfigurator(configurator)
                    .build();
    stateChangeListener = new TrackableMetricEventsListener();
    client.subscribe(stateChangeListener);
    stats = new PoolStats();
    client.subscribe(stats);
    return client;
}

From source file:io.reactivex.netty.protocol.http.client.HttpRedirectTest.java

License:Apache License

@BeforeClass
public static void init() {
    server = new HttpServerBuilder<ByteBuf, ByteBuf>(port, new RequestProcessor())
            .eventLoop(new NioEventLoopGroup(10, new RxServerThreadFactory())).enableWireLogging(LogLevel.DEBUG)
            .build().start();/*from  w w  w  .java  2 s . c om*/
    port = server.getServerPort(); // Using ephemeral ports
    System.out.println("Mock server using ephemeral port; " + port);
}

From source file:io.reactivex.netty.protocol.http.server.HttpServerTest.java

License:Apache License

@BeforeClass
public static void setUp() throws Exception {
    mockServer = RxNetty.newHttpServerBuilder(0, new RequestHandler<ByteBuf, ByteBuf>() {
        @Override//from  w ww .  jav a  2  s.c  o m
        public Observable<Void> handle(HttpServerRequest<ByteBuf> request,
                HttpServerResponse<ByteBuf> response) {
            return response.writeStringAndFlush("Welcome!");
        }
    }).enableWireLogging(LogLevel.DEBUG).build().start();
}

From source file:io.reactivex.netty.protocol.http.server.HttpServerTest.java

License:Apache License

@Test
public void testProxy() throws Exception {
    HttpServer<ByteBuf, ByteBuf> server = RxNetty
            .newHttpServerBuilder(0, new RequestHandler<ByteBuf, ByteBuf>() {
                @Override//from   w  w w  .  ja va 2  s.  c  o  m
                public Observable<Void> handle(HttpServerRequest<ByteBuf> request,
                        final HttpServerResponse<ByteBuf> serverResponse) {
                    return RxNetty
                            .<ByteBuf, ByteBuf>newHttpClientBuilder("localhost", mockServer.getServerPort())
                            .enableWireLogging(LogLevel.DEBUG).build()
                            .submit(HttpClientRequest.createGet("/hello"))
                            .flatMap(new Func1<HttpClientResponse<ByteBuf>, Observable<Void>>() {
                                @Override
                                public Observable<Void> call(HttpClientResponse<ByteBuf> response) {
                                    serverResponse.setStatus(response.getStatus());
                                    return serverResponse.close(true); // Processing in a separate thread needs a flush.
                                }
                            });
                }
            }).enableWireLogging(LogLevel.ERROR).build().start();
    final CountDownLatch finishLatch = new CountDownLatch(1);
    HttpClientResponse<ByteBuf> response = RxNetty
            .<ByteBuf, ByteBuf>newHttpClientBuilder("localhost", server.getServerPort())
            .enableWireLogging(LogLevel.DEBUG).build().submit(HttpClientRequest.createGet("/"))
            .finallyDo(new Action0() {
                @Override
                public void call() {
                    finishLatch.countDown();
                }
            }).toBlocking().toFuture().get(10, TimeUnit.SECONDS);
    Assert.assertTrue("The returned observable did not finish.", finishLatch.await(10, TimeUnit.SECONDS));
    Assert.assertEquals("Request failed.", response.getStatus(), HttpResponseStatus.OK);
}

From source file:io.reactivex.netty.RxNetty.java

License:Apache License

public static <I, O> UdpServerBuilder<I, O> newUdpServerBuilder(int port,
        ConnectionHandler<I, O> connectionHandler) {
    UdpServerBuilder<I, O> builder = new UdpServerBuilder<I, O>(port, connectionHandler)
            .enableWireLogging(LogLevel.DEBUG);
    if (null != metricEventsListenerFactory) {
        builder.withMetricEventsListenerFactory(metricEventsListenerFactory);
    }/*from  ww w. j  av  a2s  .  co  m*/
    return builder;
}

From source file:io.reactivex.netty.RxNetty.java

License:Apache License

public static <I, O> UdpClientBuilder<I, O> newUdpClientBuilder(String host, int port) {
    UdpClientBuilder<I, O> builder = new UdpClientBuilder<I, O>(host, port).channel(NioDatagramChannel.class)
            .enableWireLogging(LogLevel.DEBUG).eventloop(getRxEventLoopProvider().globalClientEventLoop());
    if (null != metricEventsListenerFactory) {
        builder.withMetricEventsListenerFactory(metricEventsListenerFactory);
    }//from  ww w . ja va 2  s .c  o m
    return builder;
}