Bug in return 3 digit timestamp
Previous code change didnt consider when millisecond=000 condition. Change-Id: I6af60c7193d51e7ddfb3737ed4db5d1f1c775289
This commit is contained in:
@@ -21,7 +21,6 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import org.joda.time.DateTime;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
@@ -141,11 +140,7 @@ public class InfluxV9MeasurementRepo implements MeasurementRepo {
|
||||
influxV9Utils.filterPrivateTags(serie.getTags()));
|
||||
|
||||
for (String[] values : serie.getValues()) {
|
||||
final int length = values[0].length();
|
||||
final String millisecond = values[0].substring(20, length-1);
|
||||
final String millisecond_3d = StringUtils.rightPad(millisecond, 3, '0');
|
||||
final String timestamp = values[0].substring(0, 19) + '.' + millisecond_3d + 'Z';
|
||||
|
||||
final String timestamp = influxV9Utils.threeDigitMillisTimestamp(values[0]);
|
||||
measurements.addMeasurement(
|
||||
new Object[]{timestamp, Double.parseDouble(values[1]), getValueMeta(values)});
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ package monasca.api.infrastructure.persistence.influxdb;
|
||||
|
||||
import com.google.inject.Inject;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.joda.time.DateTime;
|
||||
import org.joda.time.format.ISODateTimeFormat;
|
||||
|
||||
@@ -258,4 +259,17 @@ public class InfluxV9Utils {
|
||||
|
||||
return filteredMap;
|
||||
}
|
||||
|
||||
public String threeDigitMillisTimestamp(String origTimestamp) {
|
||||
final int length = origTimestamp.length();
|
||||
final String timestamp;
|
||||
if (length == 20) {
|
||||
timestamp = origTimestamp.substring(0, 19) + ".000Z";
|
||||
} else {
|
||||
final String millisecond = origTimestamp.substring(20, length - 1);
|
||||
final String millisecond_3d = StringUtils.rightPad(millisecond, 3, '0');
|
||||
timestamp = origTimestamp.substring(0, 19) + '.' + millisecond_3d + 'Z';
|
||||
}
|
||||
return timestamp;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user