时序数据库influxdb模块初始版本
master
xs 2 weeks ago
parent 7b904049cc
commit 1aa787d50d

@ -1,5 +1,6 @@
package org.dromara.tsdb.controller; package org.dromara.tsdb.controller;
import org.dromara.tsdb.domain.bo.InfluxMeasurementBo;
import org.dromara.tsdb.service.IInfluxDbService; import org.dromara.tsdb.service.IInfluxDbService;
import org.influxdb.dto.QueryResult; import org.influxdb.dto.QueryResult;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -16,12 +17,8 @@ public class InfluxDbController {
* InfluxDB * InfluxDB
*/ */
@PostMapping("/write") @PostMapping("/write")
public String writeData(@RequestParam String measurement, public String writeData(@RequestBody InfluxMeasurementBo influxMeasurementBo) {
@RequestParam String tagKey, influxDbService.writeData(influxMeasurementBo);
@RequestParam String tagValue,
@RequestParam String fieldKey,
@RequestParam String fieldValue) {
influxDbService.writeData(measurement, tagKey, tagValue, fieldKey, fieldValue);
return "Data written to InfluxDB successfully!"; return "Data written to InfluxDB successfully!";
} }

@ -0,0 +1,23 @@
package org.dromara.tsdb.domain.bo;
import lombok.Data;
@Data
public class InfluxMeasurementBo {
/** @param measurement
* @param tagKey
* @param tagValue
* @param fieldKey
* @param fieldValue */
private String measurement;
private String tagKey;
private String tagValue;
private String fieldKey;
private String fieldValue;
}

@ -1,18 +1,14 @@
package org.dromara.tsdb.service; package org.dromara.tsdb.service;
import org.dromara.tsdb.domain.bo.InfluxMeasurementBo;
import org.influxdb.dto.QueryResult; import org.influxdb.dto.QueryResult;
public interface IInfluxDbService { public interface IInfluxDbService {
/** /**
* InfluxDB * InfluxDB
* * @param influxMeasurementBo
* @param measurement
* @param tagKey
* @param tagValue
* @param fieldKey
* @param fieldValue
*/ */
public void writeData(String measurement, String tagKey, String tagValue, String fieldKey, String fieldValue); public void writeData(InfluxMeasurementBo influxMeasurementBo);
/** /**
* *

@ -1,5 +1,6 @@
package org.dromara.tsdb.service.impl; package org.dromara.tsdb.service.impl;
import org.dromara.tsdb.domain.bo.InfluxMeasurementBo;
import org.dromara.tsdb.service.IInfluxDbService; import org.dromara.tsdb.service.IInfluxDbService;
import org.influxdb.InfluxDB; import org.influxdb.InfluxDB;
import org.influxdb.dto.Point; import org.influxdb.dto.Point;
@ -18,18 +19,13 @@ public class InfluxDbServiceImpl implements IInfluxDbService {
/** /**
* InfluxDB * InfluxDB
* * @param influxMeasurementBo
* @param measurement
* @param tagKey
* @param tagValue
* @param fieldKey
* @param fieldValue
*/ */
@Override @Override
public void writeData(String measurement, String tagKey, String tagValue, String fieldKey, String fieldValue) { public void writeData(InfluxMeasurementBo influxMeasurementBo) {
Point point = Point.measurement(measurement) Point point = Point.measurement(influxMeasurementBo.getMeasurement())
.tag(tagKey, tagValue) .tag(influxMeasurementBo.getTagKey(), influxMeasurementBo.getTagValue())
.addField(fieldKey, fieldValue) .addField(influxMeasurementBo.getFieldKey(), influxMeasurementBo.getFieldValue())
.time(System.currentTimeMillis(), TimeUnit.MILLISECONDS) .time(System.currentTimeMillis(), TimeUnit.MILLISECONDS)
.build(); .build();
influxDB.write(point); influxDB.write(point);

Loading…
Cancel
Save