Thanks! I am hoping this will be very helpful, I got significantly more feedback this way. There were some minor Array vs. ArrayList-isms to get it to work for me, but otherwise not bad for pseudocode.
What ultimately worked for me:
@Override
public void afterBulk(long executionId, BulkRequest request, BulkResponse response) {
if (response.hasFailures()) {
for (int i = 0; i < response.getItems().length; i++) {
BulkItemResponse item = response.getItems()[i];
if (item.isFailed()) {
IndexRequest ireq = (IndexRequest) request.requests().get(i);
logger.error("Failed while indexing to " + item.getIndex() + " type " + item.getType() + " " +
"request: [" + ireq + "]: [" + item.getFailureMessage() + "]");
}
}
}
}
I now get:
[elasticsearch[Dyna-Mite][transport_client_worker][T#5]{New I/O worker #70}] ERROR - Failed while indexing to data-2016.02.26 type datatype request: [index {[data-2016.02.26][datatype][null], source[{"json_obj"}]: [MapperParsingException[failed to parse [_source]]; nested: ElasticsearchParseException[Failed to parse content to map]; nested: JsonParseException[Unexpected character (':' (code 58)): was expecting either valid name character (for unquoted name) or double-quote (for quoted) to start field name#012 at [Source: [B@5f09799a; line: 1, column: 1779]]; ]
I am hopeful that this will be a great help in troubleshooting this problem, thanks.