public static Optional<String> getSubject(final String retrySubject) { if (!isRetrySubject(retrySubject) && !isDeadRetrySubject(retrySubject)) { return Optional.absent(); } final List<String> parts = RETRY_SUBJECT_SPLITTER.splitToList(retrySubject); if (parts.size() != 3) { return Optional.absent(); } else { return Optional.of(parts.get(1)); } }
public static String[] parseSubjectAndGroup(String subject) { if (!isRetrySubject(subject) && !isDeadRetrySubject(subject)) { return null; } final List<String> parts = RETRY_SUBJECT_SPLITTER.splitToList(subject); if (parts.size() != 3) { return null; } else { return new String[]{parts.get(1), parts.get(2)}; } } }
public static boolean isRealSubject(final String subject) { return !Strings.isNullOrEmpty(subject) && !isRetrySubject(subject) && !isDeadRetrySubject(subject); }
private void monitorMessageReceived(long receiveTime, String subject) { if (RetrySubjectUtils.isRetrySubject(subject) || RetrySubjectUtils.isDeadRetrySubject(subject)) { QMon.receivedRetryMessagesCountInc(subject); } QMon.receivedMessagesCountInc(subject); QMon.produceTime(subject, System.currentTimeMillis() - receiveTime); }
private void monitorMessageReceived(long receiveTime, String subject) { if (RetrySubjectUtils.isRetrySubject(subject)) { String[] subjectAndGroup = RetrySubjectUtils.parseSubjectAndGroup(subject); if (subjectAndGroup == null || subjectAndGroup.length != 2) return; QMon.consumerErrorCount(subjectAndGroup[0], subjectAndGroup[1]); return; } if (RetrySubjectUtils.isDeadRetrySubject(subject)) { String[] subjectAndGroup = RetrySubjectUtils.parseSubjectAndGroup(subject); if (subjectAndGroup == null || subjectAndGroup.length != 2) return; QMon.consumerErrorCount(subjectAndGroup[0], subjectAndGroup[1]); QMon.deadLetterQueueCount(subjectAndGroup[0], subjectAndGroup[1]); return; } QMon.receivedMessagesCountInc(subject); QMon.produceTime(subject, System.currentTimeMillis() - receiveTime); }