Fix all time cast exceptions.

Format sequence number and measurement to be non-exponential.
This commit is contained in:
Deklan Dieterly
2014-07-02 14:05:31 -06:00
parent 3585a5debe
commit 045b94407d
4 changed files with 15 additions and 15 deletions

View File

@@ -136,7 +136,7 @@ public class AlarmStateHistoryInfluxDBRepositoryImpl implements AlarmStateHistor
logger.debug("Query string: {}", query);
List<Serie> result = this.influxDB.Query(this.config.influxDB.getName(), query,
TimeUnit.SECONDS);
TimeUnit.MILLISECONDS);
List<AlarmStateHistory> alarmStateHistoryList = new LinkedList<>();
@@ -147,8 +147,8 @@ public class AlarmStateHistoryInfluxDBRepositoryImpl implements AlarmStateHistor
AlarmStateHistory alarmStateHistory = new AlarmStateHistory();
// Time is always in position 0.
alarmStateHistory.setTimestamp(new DateTime(new Long((Integer) valObjArryArry[i][0]) *
1000, DateTimeZone.UTC));
Double timeDouble = (Double) valObjArryArry[i][0];
alarmStateHistory.setTimestamp(new DateTime(timeDouble.longValue(), DateTimeZone.UTC));
// Sequence_number is always in position 1.
alarmStateHistory.setAlarmId((String) valObjArryArry[i][2]);
alarmStateHistory.setNewState(AlarmState.valueOf((String) valObjArryArry[i][3]));

View File

@@ -29,6 +29,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.annotation.Nullable;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
@@ -67,7 +69,7 @@ public class MeasurementInfluxDBRepositoryImpl implements MeasurementRepository
Measurements measurements = new Measurements();
measurements.setName(name);
measurements.setDimensions(dimensions);
measurements.setDimensions(dimensions == null ? new HashMap<String, String>() : dimensions);
List<Object[]> valObjArryList = new LinkedList<>();
for (Serie serie : result) {
Object[][] valObjArry = serie.getPoints();
@@ -76,12 +78,12 @@ public class MeasurementInfluxDBRepositoryImpl implements MeasurementRepository
Object[] objArry = new Object[3];
// sequence_number
objArry[0] = valObjArry[i][1];
objArry[0] = BigDecimal.valueOf((Double) valObjArry[i][1]).toPlainString();
// time
Double timeDouble = (Double) valObjArry[i][0];
objArry[1] = DATETIME_FORMATTER.print(timeDouble.longValue());
// value
objArry[2] = valObjArry[i][2];
objArry[2] = BigDecimal.valueOf((Double) valObjArry[i][2]).toPlainString();
valObjArryList.add(objArry);
}

View File

@@ -29,10 +29,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.concurrent.TimeUnit;
public class StatisticInfluxDBRepositoryImpl implements StatisticRepository {
@@ -79,14 +76,15 @@ public class StatisticInfluxDBRepositoryImpl implements StatisticRepository {
List<String> colNamesList = new LinkedList<>(statistics);
colNamesList.add(0, "timestamp");
stat.setColumns(colNamesList);
stat.setDimensions(dimensions);
stat.setDimensions(dimensions == null ? new HashMap<String, String>() : dimensions);
List<List<Object>> valObjArryArry = new LinkedList<List<Object>>();
stat.setStatistics(valObjArryArry);
Object[][] pointsArryArry = serie.getPoints();
for (int i = 0; i < pointsArryArry.length; i++) {
List<Object> valObjArry = new ArrayList<>();
// First column is always time.
valObjArry.add(DATETIME_FORMATTER.print((long) pointsArryArry[i][0]));
Double timeDouble = (Double) pointsArryArry[i][0];
valObjArry.add(DATETIME_FORMATTER.print(timeDouble.longValue()));
for (int j = 1; j < statistics.size() + 1; j++) {
valObjArry.add(pointsArryArry[i][j]);
}

View File

@@ -89,7 +89,7 @@ server:
logging:
# The default level of all loggers. Can be OFF, ERROR, WARN, INFO, DEBUG, TRACE, or ALL.
level: INFO
level: debug
# Logger-specific levels.
loggers:
@@ -100,14 +100,14 @@ logging:
appenders:
- type: console
threshold: ALL
threshold: debug
timeZone: UTC
target: stdout
logFormat: # TODO
- type: file
currentLogFilename: /var/log/mon-api/mon-api.log
threshold: ALL
threshold: debug
archive: true
archivedLogFilenamePattern: /var/log/mon-api/mon-api-%d.log.gz
archivedFileCount: 5