2017-02-05 2 views
1

어떻게 든 스프링 통합 메트릭 컨텐츠를 잡아 내지 못합니다. 내가 원하는 것은 메시지 채널을 얼마나 많은 메시지/초가 통과하는지, 최소 및 최대 처리량은 얼마인지에 대한 통계적 출력입니다. 내가 newTicketChannel.getSendRate()를 사용하는 경우, I 출력 다음이 될 : 무엇을 나에게 분명한 것은 N (메시지 수)입니다스프링 통합 채널 통계 메트릭

enter image description here

. 나를위한 평균은 초당 진행되는 메시지의 수입니다 (?). 하지만 완전히 불분명 한 점은 minmax입니다. 나는 min = 200, max = 380 =>과 같은 것이 필요하다. 200은 마지막 순간에 가장 낮은 비율, 380은 마지막 순간에, 또는 이와 비슷한 것을 의미한다.

어떻게 실용적인 방법입니까? 미리 감사드립니다. :-)

답변

3

minmax은 마지막 reset()부터입니다. 재설정하지 않으면 앱이 시작된 이후 최소/최대를 나타냅니다.

평균은 시간에 따른 지수 이동 평균 및 메시지 수입니다.

Documentation here.

정기적으로 reset()MessageChannelMetrics을 새로 입력해야만 최소/최대를 얻을 수 있습니다.

는 두 번째 두 번째

  1. 메시지/
  2. 최대 메시지/초
  3. 최소 메시지 /이었다 구함 : 결과를 얻을 수있는 한편에서
+0

감사합니다 :-)

감사 건배. 시작 앱의 시작에서'min'과'max'가 동일하게 유지된다고 말할 때 왜 값이 다른가? 그리고 저에게 또 다른 질문은, 어떻게 그것이''''''평균''일 수 있습니까? 문서 이미 찾았지만 어떻게 든 내 질문에 대답하지 못했습니다. –

+0

저는 통계를 자주 재설정하는 스케줄러를 만들었습니다. 저에게는 효과적이었습니다. 고맙습니다 . :-) 테스트 –

+0

하지만 'getSendRate(). getMin()'및 'getSendRate(). getMax()'출력은 이해할 수 없습니다. 300, 어떻게 최대 0.02 일 수 있습니까? 그 값을 다시 설정하면됩니다.지금까지는 내 대답에 설명 된 내 계산에만 의미있는 값을 얻습니다. –

0

은 내가 다음 않았다 원하는

솔루션 :

같은 결과를 얻을 스프링 통합 측정에 일반적인 기능이있는 경우

  • 1/newTicketChannel.getSendDuration().getMax() * 1000
  • 1/newTicketChannel.getSendDuration().getMin() * 1000
    1. 1/newTicketChannel.getSendDuration().getMean() * 1000
    2. , 말해 주저하지 말아 주시기 바랍니다. 누군가 내 질문에 게시 한 가치의 평균에 대한 정보를 제공하는 것이 좋습니다. 당신이 빠른 재생을위한

    관련 문제