@Override public void onFailure(Throwable throwable) { flumeFailureLogCount.getAndAdd(size); LOG.warn("Failed to store record", throwable); if (throwable instanceof IOException) { callback.onConnectionError(); } else if (throwable instanceof EventDeliveryException) { callback.onRemoteError(); } else { callback.onInternalError(); } } }
@Override public void onSuccess(AppendBatchAsyncResultPojo result) { flumeSuccessLogCount.getAndAdd(size); callback.onSuccess(); }
if (responseCode >= 200 && responseCode < 400) { LOG.trace("[{}] logs appended successfully", getName()); listener.onSuccess(); } else { LOG.warn("[{}] bad response code {}", getName(), responseCode); listener.onRemoteError(); listener.onConnectionError(); } catch (Exception ex) { LOG.error("[{}] Failed to send log event.", getName(), ex); listener.onInternalError();
@Override public void doAppend(LogEventPack logEventPack, RecordHeader header, LogDeliveryCallback listener) { if (!closed) { try { String path = logsRootPath + "/" + tenantDirName + "/" + applicationDirName; LOG.debug("[{}] appending {} logs to directory", path, logEventPack.getEvents().size()); List<String> dtos = eventsToStrings(generateLogEvent(logEventPack, header)); LOG.debug("[{}] saving {} objects", path, dtos.size()); for (String event : dtos) { logger.append(event); } LOG.debug("[{}] appended {} logs to directory", path, logEventPack.getEvents().size()); listener.onSuccess(); } catch (Exception ex) { LOG.error(MessageFormat.format("[{0}] Attempted to append logs failed", getName()), ex); listener.onInternalError(); } } else { LOG.info("Attempted to append to closed appender named [{}].", getName()); listener.onInternalError(); } }
} else { LOG.warn("Flume client wasn't initialized. Invoke method init before."); listener.onInternalError(); listener.onInternalError(); listener.onConnectionError(); listener.onInternalError();
listener.onInternalError(); return; } else { LOG.info("Attempted to append to closed appender named [{}].", getName()); listener.onInternalError();
collectionName, logEventPack.getEvents().size()); listener.onSuccess(); } catch (MongoSocketException ex) { LOG.error(MessageFormat.format("[{0}] Attempted to append logs failed " + "due to network error", getName()), ex); listener.onConnectionError(); } catch (MongoInternalException | MongoServerException ex) { LOG.error(MessageFormat.format("[{0}] Attempted to append logs failed " + "due to remote error", getName()), ex); listener.onRemoteError(); } catch (Exception ex) { LOG.error(MessageFormat.format("[{0}] Attempted to append logs failed " + "due to internal error", getName()), ex); listener.onInternalError(); listener.onInternalError();
if (closed) { LOG.warn("Attempt to append data to already stopped appender"); listener.onInternalError(); } catch (URISyntaxException ex) { LOG.warn("[{}] failed to build request URI", this.getApplicationToken(), ex); listener.onInternalError(); listener.onInternalError();