Wir bauen Dateiverarbeitungssystem (Web-Anwendung + Stateful) mit Kamel, JMS und Ruhe. Mehrere Benutzer können Dateien hochladen. Es ist erforderlich, min, max, durchschnittliche Zeit, durchschnittliche Anzahl von Treffern und etc. für den Benutzer anzuzeigen. Dies entspricht fast den von camel bereitgestellten Routenmetriken. Gibt es eine Möglichkeit, diese Routenmetriken auf Benutzerebene zu sammeln? Oder sollten wir die Metriken-Komponenten und die Registrierung entsprechend unseren Anforderungen erweitern?ist möglich, Camel Routenmetriken auf Benutzerlevel/benutzerspezifischen gesammelt
Hinzugefügt unten Änderungen an Code zum Sammeln von Metriken.
<!--added to bean context -->
<bean id="policy" class="org.apache.camel.component.metrics.routepolicy.MetricsRoutePolicy"/>
<!-- below changes done to route -->
<route id="prefRate" routePolicyRef="policy">
<from uri="cxfrs://bean://prefRateService?bindingStyle=SimpleConsumer"/>
<log message="Processing username:${headers.username}"/>
<setHeader headerName="HEADER_METRIC_NAME">
<simple>${headers.username}</simple>
</setHeader>
<to uri="log:body?level=INFO"/>
<to uri="bean:fxPrefRateProcessor" />
<to uri="metrics:meter:prefRateCounter"/>
</route>
umfasst. Wir haben Änderungen gemäß Ihrer Empfehlung vorgenommen. Es ist jedoch nicht möglich, Messwerte in Hawtio anzuzeigen. –
Stellen Sie sicher, dass Sie Ihren Benutzernamen ordnungsgemäß ausfüllen (der obige einfache Ausdruck ist ein Beispiel, ich weiß nicht, wo Sie Ihre eindeutige Benutzerzeichenfolge in Ihrem Exchange beibehalten) und überprüfen Sie, ob die richtigen Messwerte in Ihrem Weblog protokolliert werden Kamelprotokolle. – AndyN
Name sind eindeutig bevölkert, die über Trace in HawtIO überprüft wird. Es ist mein Fehler. Die Dokumentation zeigt deutlich, dass Metriken aus Java-Code gezogen werden können. In der Zwischenzeit werde ich auch die Kamelstämme nach Vorschlag prüfen. –