Briefly, this error occurs when Elasticsearch receives an invalid hour value during a date parsing operation. It expects a string or number value but found a different data type. To resolve this issue, you can check the data you’re trying to index and ensure that the hour values are correctly formatted as strings or numbers. Also, verify your date parsing and formatting rules in your Elasticsearch settings or mapping configurations. If you’re using a script or application to send data, ensure it’s correctly formatting the date and time values.
This guide will help you check for common problems that cause the log ” invalid hour value. expected string/number value; but found [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: plugin.
Log Context
Log “invalid hour value. expected string/number value; but found [{}]” class name is DayTimes.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
yield hour; } catch (NumberFormatException nfe) { throw new ElasticsearchParseException("invalid time hour value [{}]"; value); } } default -> throw new ElasticsearchParseException("invalid hour value. expected string/number value; but found [{}]"; token); }; } public static int parseMinuteValue(XContentParser parser; XContentParser.Token token) throws IOException; ElasticsearchParseException { return switch (token) {