The Talon Manual

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

In This Section

Overview

A Talon XVM can be configured to allow administrative applications to monitor and manage it over messaging. This document describes this feature. 

Admin Channels

The table below lists the bus channels used for administration over SMA:

ChannelKeyQOSIDDescription
Command and Control
xvm-requestxvm-admin/${xvmName}/requestBestEffort30000Command and control requests.
xvm-responsexvm-admin/${adminClientId}/responseBestEffort30001Command and control responses (to issuing admin client)
Passive Monitoring
xvm-heartbeatxvm-admin/${xvmName}/heartbeatBestEffort30003XVM heartbeats.
xvm-tracexvm-admin/${xvmName}/traceBestEffort30004Log trace records.
xvm-eventxvm-admin/${xvmName}/eventBestEffort30005Lifecycle and alert events.

By default, all admin channels start with xvm-admin channel prefixThis prefix can be changed by setting the environment property nv.admin.sma.channelKeyPrefix which can be useful for cases where it is desirable to more granularly partition admin traffic. 

Request and Response Channels

When command and control is enabled, these channels allow admin clients to issue commands to an XVM. Such commands include XVM control commands such as triggering thread dumps or reloading applications and also include invocation of application-defined commands.

Requests and Response messages for command and control can be found in the com.neeve.server.mon.cnc package. At present, support for usage of command and control is reserved for the platform's admin APIs (Robin and Lumino). 

Heartbeats

XVM heartbeats are periodically emitted over the heartbeats channel when they are enabled for the XVM

Heartbeats are emitted using the SrvMonHeartbeatMessage type defined in the com.neeve.server.mon package. While this package contains additional lifecycle related messages types used by direct monitoring clients, only SrvMonHeartbeatMessage are emitted over the heartbeats channel. 

Trace

When enabled SrvMonTraceRecords are emitted over the trace channel allowing admin clients to view trace output as it happens.

Tracer records are emitted using SrvMonTraceRecord message type that can be found in the com.neeve.server.mon.cnc package.

Events 

The events channel is used to emit events such as lifecycle or alert events which are defined in the com.neeve.server.mon.lifecycle and com.neeve.server.mon.alert.

Configuration


Configuring XVMs

Admin Bus Configuration

To use Admin over SMA for an XVM, a bus named xvm-admin must be configured to specify the bus connection details:

Admin channels (xvm-request, xvm-response, xvm-heartbeat, xvm-event, and xvm-trace) should not be configured for the bus, they are automatically created by the XVM when it is started.

XVM Messaging Configuration

To enable Admin over SMA for an XVM, SMA must be configured as a transport for it:

With the above configuration, the order-processing-1 xvm will create a connection to solace://solhost:55555 with a username of order-processing-1. It will use the following topics:

Subscribe:

  • xvm-request channel: xvm-admin/order-processing-1/request

Publish:

  • xvm-response channel: xvm-admin/${adminClientId}/response (where the adminClientId is substituted with that of the sending client when a response is sent). 
  • xvm-heartbeats channel: xvm-admin/order-processing-1/heartbeat (when heartbeats are enabled)
  • xvm-trace channel: xvm-admin/order-processing-1/trace (when trace emission is enabled)
  • xvm-event channel: xvm-admin/order-processing-1/event

Enabling xvm heartbeats isn't strictly necessary, but in most monitoring scenarios it is desirable.

Configuring Admin Client Connectivity

Tools such as Robin, Lumino or the AdminTool must similarly be configured to include sma as a transport and configure bus connection information. As admin clients won't always be configured via DDL, configuration is done via system/enviornment properties. 

Properties Based Configuration for Clients

It is also possible to configure the admin client's bus more compactly using a bus descriptor instead of specifying provider, address, port and properties:

Properties Based Configuration with Bus Descriptor

 

Discovery

Admin clients should not attempt to issue commands until an XVM has been discovered via the discovery provider (see Understanding Discovery). When an admin client detects that a XVM is no longer discoverable it should stop issuing commands over SMA. 

Passive vs. Active Monitoring

  • No labels