我使用默认设置在docker中运行influxdb(docker run -p 8086:8086 influxdb:1.7.4),然后尝试使用influx java驱动程序(2.15)插入一些数据:
public class BasicUsageTest {
static final Logger logger = Logger.getLogger(BasicUsageTest.class);
public static InfluxDB influxdb;
@BeforeAll
public static void beforeAll() {
logger.info("Connect to influxdb");
influxdb = InfluxDBFactory.connect("http://localhost:8086");
// influxdb.query(new Query("create database test"));
// influxdb.query(new Query("create retention policy rp on test duration 1h replication 1"));
influxdb.setLogLevel(InfluxDB.LogLevel.FULL);
influxdb.setConsistency(InfluxDB.ConsistencyLevel.ALL);
}
@AfterAll
public static void afterAll() {
influxdb.close();
}
@AfterEach
public void truncate() {
// influxdb.query(new Query("drop series from metric"));
}
@Test
public void select() {
Point point = Point.measurement("metric")
.addField("c1", 1)
.addField("c2", 2)
.addField("c3", 3)
.build();
influxdb.write("test", "rp", point);
logger.info("Select query");
QueryResult result = influxdb.query(new Query("select * from metric", "test"));
logger.info(result);
}
}
问题在于查询总是返回INFO: {"results":[{"statement_id":0}]}
。
我还尝试连接到Influx Shell(docker exec -it influxdb influx
)并手动选择一些数据(select * from metric
),但是我也得到了空结果。同时,如果我使用shell(insert metric, c1=1 c2=2,c3=3
)插入一些数据,我将得到该行(但c1列编码为字符串,我不知道为什么)。
Influxdb日志:
2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息: ->开机自检http://localhost:8086/write?db=test&rp=rp&precision=n&consistency=all 2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform log INFO: 内容类型:文本/纯文本; charset = utf-8 2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息:内容长度:3月25日 25,2019 11:41:27 PM okhttp3.internal.platform.Platform log INFO:Mar 25,2019 11:41:27 PM okhttp3.internal.platform.Platform日志信息: 指标c1 = 1i,c2 = 2i,c3 = 3i
2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息: -> END POST(25位元组)2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform log INFO:<-204 No Content http://localhost:8086/write?db=test&rp=rp&precision=n&consistency=all (56毫秒)2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform log 信息:内容类型:application / json 2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息:请求ID: 5e792a10-4f3e-11e9-805e-0242ac110002 2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform日志信息:X-Influxdb-Build:OSS 3月 25,2019 11:41:27 PM okhttp3.internal.platform.Platform日志信息: X-Influxdb-Version:1.7.4 2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息:X-Request-Id: 5e792a10-4f3e-11e9-805e-0242ac110002 2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform log INFO:Date:Mon,25 Mar 2019 2019年3月25日格林尼治标准时间20:41:30 okhttp3.internal.platform.Platform日志信息:<-END HTTP
2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息: ->从{{metric} 2019年3月25日从+ metric获取http://localhost:8086/query?db=test&q=select+ + ok okhttp3.internal.platform.Platform日志信息:-> END GET三月25,2019 11:41:27 PM okhttp3.internal.platform.Platform 日志信息:<-200 OK http://localhost:8086/query?db=test&q=select+ + from + metric(5ms)3月 25,2019 11:41:27 PM okhttp3.internal.platform.Platform日志信息: 内容类型:application / json 2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息:请求ID: 5e7df49c-4f3e-11e9-805f-0242ac110002 2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform日志信息:X-Influxdb-Build:OSS 3月 25,2019 11:41:27 PM okhttp3.internal.platform.Platform日志信息: X-Influxdb-Version:1.7.4 2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息:X-Request-Id: 5e7df49c-4f3e-11e9-805f-0242ac110002 2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform log INFO:Date:Mon,25 Mar 2019 2019年3月25日格林尼治标准时间20:41:30 okhttp3.internal.platform.Platform日志信息:传输编码: 2019年3月25日上午分块okhttp3.internal.platform.Platform 日志信息:2019年3月25日11:41:27 PM okhttp3.internal.platform.Platform 日志信息:{“结果”:[{“ statement_id”:0}]}
2019年3月25日晚上11:41:27 okhttp3.internal.platform.Platform日志信息: <-END HTTP(33字节的正文)