6.6. 메시지 카운터 사용


메시지 카운터를 사용하여 시간이 지남에 따라 큐에 대한 정보를 가져옵니다. 이렇게 하면 보이지 않는 추세를 식별하는 데 도움이 됩니다.

예를 들어 메시지 카운터를 사용하여 시간이 지남에 따라 특정 큐가 어떻게 사용되는지 확인할 수 있습니다. 또한 관리 API를 사용하여 큐의 메시지 수를 정기적으로 쿼리할 수도 있지만 큐가 실제로 사용되는 방법은 표시되지 않습니다. 큐의 메시지 수는 클라이언트가 메시지를 보내거나 수신하지 않거나 큐로 전송된 메시지 수가 소비되는 메시지 수와 같기 때문에 일정하게 유지될 수 있습니다. 이러한 두 경우 모두 매우 다른 방식으로 사용 중인 경우에도 큐의 메시지 수는 동일하게 유지됩니다.

6.6.1. 메시지 카운터 유형

메시지 카운터는 브로커의 큐에 대한 추가 정보를 제공합니다.

count
브로커가 시작된 이후 큐에 추가된 총 메시지 수입니다.
countDelta
마지막 메시지 카운터 업데이트 이후 큐에 추가된 메시지 수입니다.
lastAckTimestamp
대기열에서 메시지를 마지막으로 받은 타임스탬프가 확인되었습니다.
lastAddTimestamp
메시지가 큐에 마지막으로 추가된 시점의 타임스탬프입니다.
messageCount
큐의 현재 메시지 수입니다.
messageCountDelta
마지막 메시지 카운터 업데이트 이후 큐에서 추가/제거된 전체 메시지 수입니다. 예를 들어 messageCountDelta-10 인 경우 전체 메시지 10개가 큐에서 제거되었습니다.
udpateTimestamp
마지막 메시지 카운터 업데이트의 타임스탬프입니다.
참고

메시지 카운터를 결합하여 다른 의미 있는 데이터도 확인할 수 있습니다. 예를 들어 마지막 업데이트 이후 대기열에서 사용한 메시지 수를 구체적으로 알려면 countDelta 에서 messageCountDelta 를 뺀 것입니다.

6.6.2. 메시지 카운터 활성화

메시지 카운터는 브로커의 메모리에 작은 영향을 미칠 수 있으므로 기본적으로 비활성화되어 있습니다. 메시지 카운터를 사용하려면 먼저 활성화해야 합니다.

프로세스

  1. &lt ;broker_instance_dir> /etc/broker.xml 구성 파일을 엽니다.
  2. 메시지 카운터를 활성화합니다.

    <message-counter-enabled>true</message-counter-enabled>
  3. 메시지 카운터 기록 및 샘플링 기간을 설정합니다.

    <message-counter-max-day-history>7</message-counter-max-day-history>
    <message-counter-sample-period>60000</message-counter-sample-period>
    message-counter-max-day-history
    브로커가 대기열 메트릭을 저장해야 하는 일 수입니다. 기본값은 10일입니다.
    message-counter-sample-period
    브로커가 메트릭을 수집하기 위해 큐를 샘플링해야 하는 빈도(밀리초)입니다. 기본값은 10000밀리초입니다.

6.6.3. 메시지 카운터 검색

관리 API를 사용하여 메시지 카운터를 검색할 수 있습니다.

사전 요구 사항

프로세스

  • 관리 API를 사용하여 메시지 카운터를 검색합니다.

    // Retrieve a connection to the broker's MBeanServer.
    MBeanServerConnection mbsc = ...
    JMSQueueControlMBean queueControl = (JMSQueueControl)MBeanServerInvocationHandler.newProxyInstance(mbsc,
       on,
       JMSQueueControl.class,
       false);
    
    // Message counters are retrieved as a JSON string.
    String counters = queueControl.listMessageCounter();
    
    // Use the MessageCounterInfo helper class to manipulate message counters more easily.
    MessageCounterInfo messageCounter = MessageCounterInfo.fromJSON(counters);
    System.out.format("%s message(s) in the queue (since last sample: %s)\n",
    messageCounter.getMessageCount(),
    messageCounter.getMessageCountDelta());

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.