Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-11585

camel-spring-boot - Allow to reset route statistics via actuator

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 2.20.0
    • camel-spring-boot
    • None
    • Novice

    Description

      You can start/stop/suspend/resume routes etc. But it would also be nice to be able to reset the JMX statistics.

      for example if you stop and start a route, then it continues with the existing JMX stats (but sometimes you want to be able to reset).

      8080/camel/routes/bar/info
      {"id":"bar","uptimeMillis":0,"status":"Stopped","details":{"deltaProcessingTime":0,"exchangesInflight":0,"exchangesTotal":103,"externalRedeliveries":0,"failuresHandled":0,"firstExchangeCompletedExchangeId":"ID-davsclaus-pro-local-1500797880917-0-1","firstExchangeCompletedTimestamp":1500797883793,"lastExchangeCompletedExchangeId":"ID-davsclaus-pro-local-1500797880917-0-205","lastExchangeCompletedTimestamp":1500798394054,"lastProcessingTime":0,"maxProcessingTime":4,"meanProcessingTime":0,"minProcessingTime":0,"redeliveries":0,"totalProcessingTime":30,"hasRouteController":false}}davsclaus:/Users/davsclaus/$ curl -XGET -s http://localhost:8080/camel/routes/bar/info^C
      davsclaus:/Users/davsclaus/$ ^C
      davsclaus:/Users/davsclaus/$ ^C
      davsclaus:/Users/davsclaus/$ curl -XGET -s http://localhost:8080/camel/routes/bar^C
      davsclaus:/Users/davsclaus/$ curl -XPOST -s http://localhost:8080/camel/routes/bar/start
      davsclaus:/Users/davsclaus/$ curl -XGET -s http://localhost:8080/camel/routes/bar/info
      {"id":"bar","uptime":"1.701 seconds","uptimeMillis":1701,"status":"Started","details":{"deltaProcessingTime":0,"exchangesInflight":0,"exchangesTotal":104,"externalRedeliveries":0,"failuresHandled":0,"firstExchangeCompletedExchangeId":"ID-davsclaus-pro-local-1500797880917-0-1","firstExchangeCompletedTimestamp":1500797883793,"lastExchangeCompletedExchangeId":"ID-davsclaus-pro-local-1500797880917-0-218","lastExchangeCompletedTimestamp":1500798449710,"lastProcessingTime":0,"maxProcessingTime":4,"meanProcessingTime":0,"minProcessingTime":0,"redeliveries":0,"totalProcessingTime":30,"hasRouteController":true}}davsclaus:/Users/davsclaus/$ curl -XGET -s http://localhost:8080/camel/routes/bar/info
      

      So we need a reset command

      curl -XPOST -s http://localhost:8080/camel/routes/bar/reset

      That just calls the JMX reset operation on the route mbean. It should also reset the processors, eg call this with true

      @ManagedOperation(description = "Reset counters")
      void reset(boolean includeProcessors) throws Exception;

      Attachments

        Activity

          People

            vrlgohel Viral Gohel
            davsclaus Claus Ibsen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: