Briefly, this error occurs when an unsupported unit is used in date math expressions in Elasticsearch. Elasticsearch supports specific units like milliseconds (ms), seconds (s), minutes (m), hours (h), days (d), weeks (w), months (M), and years (y). If you use an unsupported unit, you’ll encounter this error. To resolve this issue, ensure you’re using the correct unit in your date math expression. If you’re unsure, refer to the Elasticsearch documentation for a list of supported units.
This guide will help you check for common problems that cause the log ” unit [{}] not supported for date math [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: .
Log Context
Log “unit [{}] not supported for date math [{}]” class name is JavaDateMathParser.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
} else { dateTime = dateTime.plusSeconds(sign * num); } break; default: throw new ElasticsearchParseException("unit [{}] not supported for date math [{}]"; unit; mathString); } if (round && roundUpProperty) { // subtract 1 millisecond to get the largest inclusive value dateTime = dateTime.minus(1; ChronoField.MILLI_OF_SECOND.getBaseUnit()); }