Skip to content

Latest commit

 

History

History
50 lines (39 loc) · 2.58 KB

README.md

File metadata and controls

50 lines (39 loc) · 2.58 KB

Travis Codecov Maven Central Code Climate Code Climate

Embedded InfluxDB

Start influx servers at runtime.

Usage

import de.flapdoodle.embed.process.runtime.Network;
import io.apisense.embed.influx.InfluxServer;
import io.apisense.embed.influx.ServerAlreadyRunningException;
import io.apisense.embed.influx.ServerNotRunningException;
import io.apisense.embed.influx.configuration.InfluxConfigurationWriter;

import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException, ServerAlreadyRunningException, InterruptedException, ServerNotRunningException {
        InfluxServer.Builder builder = new InfluxServer.Builder();
        int freeHttpPort = Network.getFreeServerPort();
        int freeUdpPort = Network.getFreeServerPort();
        
        // configuration to start InfluxDB server with HTTP on port `freeHttpPort`
        // and default backup restore port
        InfluxConfigurationWriter influxConfig = new InfluxConfigurationWriter.Builder()
            .setHttp(freeHttpPort) // by default auth is disabled
            .setUdp(freeUdpPort) // If you happen to need udp enabled, by default to 'udp' database
            .build();
        
        builder.setInfluxConfiguration(influxConfig); // let's start both of protocols, HTTP and UDP
        InfluxServer server = builder.build();
        
        server.start();
        Thread.sleep(10 * 1000);
        server.stop();
    }
}

Notes