Briefly, this error occurs when an Elasticsearch graph API request is made without providing the necessary body in the request. The body of the request usually contains the specifications for the graph. To resolve this issue, ensure that you include a valid body in your graph API request. This body should contain the necessary parameters and values required for the graph. Also, check your syntax to ensure that the body of the request is properly formatted.
This guide will help you check for common problems that cause the log ” Body missing for graph request ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: plugin, request, rest.
Log Context
Log “Body missing for graph request” class name is RestGraphAction.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
graphRequest.routing(request.param("routing")); if (request.hasParam(TIMEOUT_FIELD.getPreferredName())) { graphRequest.timeout(request.paramAsTime(TIMEOUT_FIELD.getPreferredName(); null)); } if (false == request.hasContentOrSourceParam()) { throw new ElasticsearchParseException("Body missing for graph request"); } Hop currentHop = graphRequest.createNextHop(null); try (XContentParser parser = request.contentOrSourceParamParser()) {