Search in sources :

Example 1 with Logger

use of com.facebook.airlift.log.Logger in project presto by prestodb.

the class TpchQueryRunner method main.

public static void main(String[] args) throws Exception {
    Logging.initialize();
    DistributedQueryRunner queryRunner = createQueryRunner(ImmutableMap.of("http-server.http.port", "8080"));
    Thread.sleep(10);
    Logger log = Logger.get(TpchQueryRunner.class);
    log.info("======== SERVER STARTED ========");
    log.info("\n====\n%s\n====", queryRunner.getCoordinator().getBaseUrl());
}
Also used : DistributedQueryRunner(com.facebook.presto.tests.DistributedQueryRunner) Logger(com.facebook.airlift.log.Logger)

Example 2 with Logger

use of com.facebook.airlift.log.Logger in project presto by prestodb.

the class RaptorQueryRunner method main.

public static void main(String[] args) throws Exception {
    Logging.initialize();
    Map<String, String> properties = ImmutableMap.of("http-server.http.port", "8080");
    DistributedQueryRunner queryRunner = createRaptorQueryRunner(properties, true, false, false);
    Thread.sleep(10);
    Logger log = Logger.get(RaptorQueryRunner.class);
    log.info("======== SERVER STARTED ========");
    log.info("\n====\n%s\n====", queryRunner.getCoordinator().getBaseUrl());
}
Also used : DistributedQueryRunner(com.facebook.presto.tests.DistributedQueryRunner) Logger(com.facebook.airlift.log.Logger)

Example 3 with Logger

use of com.facebook.airlift.log.Logger in project presto by prestodb.

the class PrestoProxy method start.

public static void start(Module... extraModules) {
    Bootstrap app = new Bootstrap(ImmutableList.<Module>builder().add(new NodeModule()).add(new HttpServerModule()).add(new JsonModule()).add(new JaxrsModule(true)).add(new MBeanModule()).add(new JmxModule()).add(new LogJmxModule()).add(new TraceTokenModule()).add(new EventModule()).add(new ProxyModule()).add(extraModules).build());
    Logger log = Logger.get(PrestoProxy.class);
    try {
        app.initialize();
        log.info("======== SERVER STARTED ========");
    } catch (Throwable t) {
        log.error(t);
        System.exit(1);
    }
}
Also used : MBeanModule(org.weakref.jmx.guice.MBeanModule) EventModule(com.facebook.airlift.event.client.EventModule) JmxModule(com.facebook.airlift.jmx.JmxModule) LogJmxModule(com.facebook.airlift.log.LogJmxModule) NodeModule(com.facebook.airlift.node.NodeModule) JaxrsModule(com.facebook.airlift.jaxrs.JaxrsModule) LogJmxModule(com.facebook.airlift.log.LogJmxModule) Logger(com.facebook.airlift.log.Logger) JsonModule(com.facebook.airlift.json.JsonModule) TraceTokenModule(com.facebook.airlift.tracetoken.TraceTokenModule) HttpServerModule(com.facebook.airlift.http.server.HttpServerModule) Bootstrap(com.facebook.airlift.bootstrap.Bootstrap)

Example 4 with Logger

use of com.facebook.airlift.log.Logger in project presto by prestodb.

the class PrometheusQueryRunner method main.

public static void main(String[] args) throws Exception {
    Logging.initialize();
    DistributedQueryRunner queryRunner = createPrometheusQueryRunner(new PrometheusServer());
    Thread.sleep(10);
    Logger log = Logger.get(PrometheusQueryRunner.class);
    log.info("======== SERVER STARTED ========");
    log.info("\n====\n%s\n====", queryRunner.getCoordinator().getBaseUrl());
}
Also used : DistributedQueryRunner(com.facebook.presto.tests.DistributedQueryRunner) Logger(com.facebook.airlift.log.Logger)

Example 5 with Logger

use of com.facebook.airlift.log.Logger in project presto by prestodb.

the class TestPrometheusMetricsIntegration method testConfirmMetricAvailableAndCheckUp.

@Test
public void testConfirmMetricAvailableAndCheckUp() throws Exception {
    int maxTries = 60;
    int timeBetweenTriesMillis = 1000;
    runner = createQueryRunner();
    session = runner.getDefaultSession();
    int tries = 0;
    final OkHttpClient httpClient = new OkHttpClient.Builder().connectTimeout(120, TimeUnit.SECONDS).readTimeout(120, TimeUnit.SECONDS).build();
    HttpUrl.Builder urlBuilder = HttpUrl.parse(server.getUri().toString()).newBuilder().encodedPath("/api/v1/query");
    urlBuilder.addQueryParameter("query", "up[1d]");
    String url = urlBuilder.build().toString();
    Request request = new Request.Builder().url(url).build();
    String responseBody;
    // this seems to be a reliable way to ensure Prometheus has `up` metric data
    while (tries < maxTries) {
        responseBody = httpClient.newCall(request).execute().body().string();
        if (responseBody.contains("values")) {
            Logger log = Logger.get(TestPrometheusMetricsIntegration.class);
            log.info("prometheus response: %s", responseBody);
            break;
        }
        Thread.sleep(timeBetweenTriesMillis);
        tries++;
    }
    if (tries == maxTries) {
        fail("Prometheus container not available for metrics query in " + maxTries * timeBetweenTriesMillis + " milliseconds.");
    }
    // now we're making sure the client is ready
    tries = 0;
    while (tries < maxTries) {
        if (session != null && runner.tableExists(session, "up")) {
            break;
        }
        Thread.sleep(timeBetweenTriesMillis);
        tries++;
    }
    if (tries == maxTries) {
        fail("Prometheus container, or client, not available for metrics query in " + maxTries * timeBetweenTriesMillis + " milliseconds.");
    }
    MaterializedResult results = runner.execute(session, "SELECT * FROM prometheus.default.up LIMIT 1").toTestTypes();
    assertEquals(results.getRowCount(), 1);
    MaterializedRow row = results.getMaterializedRows().get(0);
    assertEquals(row.getField(0).toString(), "{instance=localhost:9090, __name__=up, job=prometheus}");
}
Also used : OkHttpClient(okhttp3.OkHttpClient) Request(okhttp3.Request) Logger(com.facebook.airlift.log.Logger) MaterializedResult(com.facebook.presto.testing.MaterializedResult) HttpUrl(okhttp3.HttpUrl) MaterializedRow(com.facebook.presto.testing.MaterializedRow) Test(org.testng.annotations.Test)

Aggregations

Logger (com.facebook.airlift.log.Logger)19 DistributedQueryRunner (com.facebook.presto.tests.DistributedQueryRunner)13 Bootstrap (com.facebook.airlift.bootstrap.Bootstrap)2 HttpServerModule (com.facebook.airlift.http.server.HttpServerModule)2 JaxrsModule (com.facebook.airlift.jaxrs.JaxrsModule)2 JmxModule (com.facebook.airlift.jmx.JmxModule)2 JsonModule (com.facebook.airlift.json.JsonModule)2 LogJmxModule (com.facebook.airlift.log.LogJmxModule)2 NodeModule (com.facebook.airlift.node.NodeModule)2 TraceTokenModule (com.facebook.airlift.tracetoken.TraceTokenModule)2 MBeanModule (org.weakref.jmx.guice.MBeanModule)2 ConditionalModule.installModuleIf (com.facebook.airlift.configuration.ConditionalModule.installModuleIf)1 Announcer (com.facebook.airlift.discovery.client.Announcer)1 DiscoveryModule (com.facebook.airlift.discovery.client.DiscoveryModule)1 ServiceAnnouncement (com.facebook.airlift.discovery.client.ServiceAnnouncement)1 ServiceAnnouncementBuilder (com.facebook.airlift.discovery.client.ServiceAnnouncement.ServiceAnnouncementBuilder)1 ServiceAnnouncement.serviceAnnouncement (com.facebook.airlift.discovery.client.ServiceAnnouncement.serviceAnnouncement)1 EventModule (com.facebook.airlift.event.client.EventModule)1 HttpEventModule (com.facebook.airlift.event.client.HttpEventModule)1 JsonEventModule (com.facebook.airlift.event.client.JsonEventModule)1