0 Replies Latest reply on Mar 25, 2014 9:42 AM by vmath

    Transaction and JMS destination metrics

    vmath

      I try to gather transactions and JMS destinations metrics and read them in Wildfly (standalone) administration console. I have configured the subsystems as follow:

       

      <subsystem xmlns="urn:jboss:domain:transactions:2.0">

                  <core-environment>

                      <process-id>

                          <uuid/>

                      </process-id>

                  </core-environment>

                  <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>

                  <coordinator-environment statistics-enabled="true" default-timeout="300"/>

      </subsystem>

       

       

      <subsystem xmlns="urn:jboss:domain:messaging:2.0">

                  <hornetq-server>

                      ....

                      <statistics-enabled>true</statistics-enabled>

                      ....

                 </hornetq-server>

      </subsystem>

       

      After restarting JBoss and launching a benchmark script that execute XA transactions involving JMS destinations I just don't see anything recorded in administration console metrics for transactions and JMS destination as well (still 0).

      When executing CLI queries I see the following:

       

      [standalone@localhost:9990 /] /subsystem=messaging/hornetq-server=default/jms-queue=inputs/:read-resource(recursive=false,proxies=false,include-runtime=true,include-defaults=true)

      {

         "outcome" => "success",

          "result" => {

              "consumer-count" => 25,

              "dead-letter-address" => "jms.queue.DLQ",

              "delivering-count" => 0,

              "durable" => true,

              "entries" => ["queue/inputs"],

              "expiry-address" => "jms.queue.ExpiryQueue",

              "message-count" => 2L,

              "messages-added" => 54L,

              "paused" => false,

              "queue-address" => "jms.queue.inputs",

              "scheduled-count" => 2L,

              "selector" => undefined,

              "temporary" => false

          }

      }


      54 messages were processed in the jms queue inputs, but the admin console shows 0 messages added.

       

      [standalone@localhost:9990 /] /subsystem=transactions/:read-resource(recursive-depth=0,include-runtime=true)

      {

          "outcome" => "success",

          "result" => {

              "default-timeout" => 300,

              "enable-statistics" => true,

              "enable-tsm-status" => false,

              "hornetq-store-enable-async-io" => false,

              "jdbc-action-store-drop-table" => false,

              "jdbc-action-store-table-prefix" => undefined,

              "jdbc-communication-store-drop-table" => false,

              "jdbc-communication-store-table-prefix" => undefined,

              "jdbc-state-store-drop-table" => false,

              "jdbc-state-store-table-prefix" => undefined,

              "jdbc-store-datasource" => undefined,

              "jts" => false,

              "node-identifier" => "1",

              "number-of-aborted-transactions" => 0L,

              "number-of-application-rollbacks" => 0L,

              "number-of-committed-transactions" => 0L,

              "number-of-heuristics" => 0L,

              "number-of-inflight-transactions" => 14L,

              "number-of-nested-transactions" => 0L,

              "number-of-resource-rollbacks" => 0L,

              "number-of-timed-out-transactions" => 0L,

              "number-of-transactions" => 0L,

              "object-store-path" => "tx-object-store",

              "object-store-relative-to" => "jboss.server.data.dir",

              "path" => "var",

              "process-id-socket-binding" => undefined,

              "process-id-socket-max-ports" => 10,

              "process-id-uuid" => true,

              "recovery-listener" => false,

              "relative-to" => "jboss.server.data.dir",

              "socket-binding" => "txn-recovery-environment",

              "statistics-enabled" => true,

              "status-socket-binding" => "txn-status-manager",

              "use-hornetq-store" => false,

              "use-jdbc-store" => false,

              "log-store" => {"log-store" => undefined}

          }

      }

       

      According to CLI I have 14 inflight transactions. These transactions correspond to 14 transacted consumer polling JMS queues and are considered as inflight-transaction even if there is no message to consume. For instance, if I restart JBoss after clearing data directory and do not execute any transaction I still have 14 inflight-transactions.

       

      Thus, JMS statistics are not correctly collected by the admin console but are correct in CLI and transactions metrics are just not working as expected at least from my point of view. Is there any configuration I have to be aware of to enable such statistics or should I just fill a JIRA ?