List of usage examples for com.amazonaws.services.sqs.model BatchResultErrorEntry toString
@Override
public String toString()
From source file:com.dushyant.flume.sink.aws.sqs.BatchSQSMsgSender.java
License:Apache License
private String buildErrorMessage(List<SendMessageBatchRequestEntry> batchRequestEntries, List<BatchResultErrorEntry> errors) { StringBuilder errorMessage = new StringBuilder(); int count = 0; for (BatchResultErrorEntry error : errors) { if (count > 0) { errorMessage.append(","); }/*w ww .jav a 2 s. c o m*/ SendMessageBatchRequestEntry failedRequestEventEntry = findRequestEventEntryById(batchRequestEntries, error.getId()); String messageBody = failedRequestEventEntry == null ? null : failedRequestEventEntry.getMessageBody(); errorMessage.append("[" + error.toString() + ",{messageBody:" + "\"" + messageBody + "\"}]"); count++; } return errorMessage.toString(); }
From source file:com.plumbee.flume.source.sqs.BatchConsumer.java
License:Apache License
public void flush() { // Commit messages to the downstream channel. LOGGER.debug("Flushing, transaction size: {}", batchDeleteRequestEntries.size()); if (batchEventList.size() > 0) { channelProcessor.processEventBatch(batchEventList); batchEventList.clear();// ww w . j a v a 2 s .c o m } // Request the batch deletion of messages. for (List<DeleteMessageBatchRequestEntry> partition : Lists.partition(batchDeleteRequestEntries, queueDeleteBatchSize)) { sourceCounter.incrementBatchDeleteRequestAttemptCount(); deleteMessageBatchRequest.setEntries(partition); DeleteMessageBatchResult batchResult = client.deleteMessageBatch(deleteMessageBatchRequest); for (BatchResultErrorEntry errorEntry : batchResult.getFailed()) { LOGGER.error("Failed to delete message, {}", errorEntry.toString()); } sourceCounter.incrementBatchDeleteRequestSuccessCount(); sourceCounter.addToDeleteMessageFailedCount((long) batchResult.getFailed().size()); sourceCounter.addToDeleteMessageSuccessCount((long) batchResult.getSuccessful().size()); } batchDeleteRequestEntries.clear(); lastFlush = System.currentTimeMillis(); }