Monitoring the container

A Petals ESB container is composed of several internal components. Each one can be monitored and provides several metrics:

Monitoring the transporters

Monitoring the local transporter

Delivered messages

The number of messages delivered by the local transporter can be graphed:

  • by message exchange status, see Creating a graph using a simple data:
    • Script/Command of the data input method: petals-cli.sh -h <petals_host> -n <petals_jmx_port> -u <petals_jmx_user> -p <petals_jmx_password> -c -- monitoring -o local-transporter -f delivered-messages -- -m
    • Output fields of the script/command:
      Name Description  Type
       Active Number of delivered message with status 'Active' COUNTER 
      Done Number of delivered message with status 'Done' COUNTER
      Error Number of delivered message with status 'Error' COUNTER
  • by message exchange status and filtered for a dedicated endpoint, or a service, or an interface, see Creating a graph using a data query:
    • the data query definition to put in a file:
      <interface>
              <name>Get Delivered Messages by the Local transporter to an endpoint</name>
              <script_path>petals-cli.sh</script_path>
              <arg_prepend>-h localhost -n 7700 -u petals -p petals -c -- monitoring -o local-transporter -f delivered-messages</arg_prepend>
              <arg_index>-- --list-endpoints</arg_index>
              <arg_query>-- --query-endpoints</arg_query>
              <arg_get>-- --query-endpoints</arg_get>
              <output_delimeter>!</output_delimeter>
              <index_order>filterName</index_order>
              <index_order_type>alphanumeric</index_order_type>
              <!--index_title_format>|chosen_order_field|</index_title_format-->
      
              <fields>
                      <filterName>
                              <name>Endpoint name</name>
                              <direction>input</direction>
                              <query_name>NAME</query_name>
                      </filterName>
                      <activeDeliveredMsgs>
                              <name>Active Message exchange delivered counter</name>
                              <direction>output</direction>
                              <query_name>ACTIVE</query_name>
                      </activeDeliveredMsgs>
                      <doneDeliveredMsgs>
                              <name>Done Message exchange delivered counter</name>
                              <direction>output</direction>
                              <query_name>DONE</query_name>
                      </doneDeliveredMsgs>
                      <errorDeliveredMsgs>
                              <name>Error Message exchange delivered counter</name>
                              <direction>output</direction>
                              <query_name>ERROR</query_name>
                      </errorDeliveredMsgs>
              </fields>
      </interface>
      

      To filter by service, replace <arg_index>, <arg_query> and <arg_get> by:

              <arg_index>-- --list-services</arg_index>
              <arg_query>-- --query-services</arg_query>
              <arg_get>-- --query-services</arg_get>
      

      To filter by interface, replace <arg_index>, <arg_query> and <arg_get> by:

              <arg_index>-- --list-interfaces</arg_index>
              <arg_query>-- --query-interfaces</arg_query>
              <arg_get>-- --query-interfaces</arg_get>
      
      Name Description Type
      activeDeliveredMsgs Number of delivered message with status 'Active' COUNTER
      doneDeliveredMsgs Number of delivered message with status 'Done' COUNTER
      errorDeliveredMsgs Number of delivered message with status 'Error' COUNTER

Monitoring the remote transporter

Delivered messages (incoming or outgoing messages)

The number of messages delivered by the remote transporter can be graphed:

  • by delivery status and filtered for a dedicated remote container, see Creating a graph using a data query:
    • the data query definition to put in a file:
      <interface>
              <name>Outgoing messages delivered by the remote transporter to the given remote container</name>
              <script_path>petals-cli.sh</script_path>
              <arg_prepend>-h localhost -n 7700 -u petals -p petals -c -- monitoring -o tcp-transporter -f delivered-outgoing-messages</arg_prepend>
              <arg_index>-- --list-containers</arg_index>
              <arg_query>-- --query-containers</arg_query>
              <arg_get>-- --query-containers</arg_get>
              <output_delimeter>!</output_delimeter>
              <index_order>filterName</index_order>
              <index_order_type>alphanumeric</index_order_type>
              <!--index_title_format>|chosen_order_field|</index_title_format-->
      
              <fields>
                      <filterName>
                              <name>Remote container name</name>
                              <direction>input</direction>
                              <query_name>NAME</query_name>
                      </filterName>
                      <pendingDeliveredMsgs>
                              <name>Pending message delivery counter</name>
                              <direction>output</direction>
                              <query_name>PENDING</query_name>
                      </pendingDeliveredMsgs>
                      <succeededDeliveredMsgs>
                              <name>Succeeded message delivery counter</name>
                              <direction>output</direction>
                              <query_name>SUCCEEDED</query_name>
                      </succeededDeliveredMsgs>
                      <errorDeliveredMsgs>
                              <name>Error message delivery counter</name>
                              <direction>output</direction>
                              <query_name>ERROR</query_name>
                      </errorDeliveredMsgs>
              </fields>
      </interface>
      
Name Description Type
pendingDeliveredMsgs Number of delivered message with status 'Pending' COUNTER
succeededDeliveredMsgs Number of delivered message with status 'Succeeded' COUNTER
errorDeliveredMsgs Number of delivered message with status 'Error' COUNTER

Outgoing connection pools

The metrics of outgoing connection pools of the remote transporter can be graphed for a given remote container as a graph using simple data:

  • Script/Command of the data input method: petals-cli.sh -h <petals_host> -n <petals_jmx_port> -u <petals_jmx_user> -p <petals_jmx_password> -c -- monitoring -o tcp-transporter -f outgoing-connections -- -c <remote-container-name>
  • Output fields of the script/command:
    Name Description Type
    ActiveConnectionsMax The maximum number of active connections (established and used) GAUGE
    ActiveConnectionsCurrent The current number of active connections (established and used) GAUGE
    IdleConnectionsMax The maximum number of idle connections (established but not used) GAUGE
    IdleConnectionsCurrent The current number of idle connections (established but not used) GAUGE
    MaxSize The maximum size of the connection pool GAUGE
    MinSize The minimum size of the connection pool GAUGE
    EstablishedConnections The number of connection established since the last start of the remote transporter COUNTER

Incoming connection pools

The metrics of incoming connection pools of the remote transporter can be graphed for a given remote container as a graph using simple data:

  • Script/Command of the data input method: petals-cli.sh -h <petals_host> -n <petals_jmx_port> -u <petals_jmx_user> -p <petals_jmx_password> -c -- monitoring -o tcp-transporter -f incoming-connections -- -c <remote-container-name>
  • Output fields of the script/command:
    Name Description Type
    ActiveConnectionsMax The maximum number of active connections (established and used) GAUGE
    ActiveConnectionsCurrent The current number of active connections (established and used) GAUGE
    IdleConnectionsMax The maximum number of idle connections (established but not used) GAUGE
    IdleConnectionsCurrent The current number of idle connections (established but not used) GAUGE
    EstablishedConnections The number of connection established since the last start of the remote transporter COUNTER
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.