4. Instance Interface

The Instance resource provided by the AMPS monitoring interface is the administrative overview of a running AMPS instance. At a glance an administrator has access to a wide view of statistic and configuration information related to AMPS usage.

api

Selecting the api resource lists information about the AMPS internal api.

Element Description
command_queue_depth The number of pending commands.

Table 4.1: Client Statistics

clients

Selecting the clients resource will list all connected clients by name. Selecting a single client will grant the user the ability to view various properties regarding a client.

Element Description
authenticated_id The id used to authenticate this client, if any
bytes_in Number of bytes received.
bytes_in_per_sec Rate of bytes received.
bytes_out Number of bytes sent.
bytes_out_per_sec Rate of bytes sent.
client_name Identifier for the client, set during the logon.
client_version Version string provided by the client.
connect_time UTC time client connection is established.
connection_name Name of the connection.
correlation_id The CorrelationId provided with the logon command, if any.
denied_reads Number of read requests which have been denied.
denied_writes Number of write requests which have been denied.
messages_in Number of messages received from client.
messages_in_per_sec Rate of messages received.
messages_out Number of messages sent to the client.
messages_out_per_sec Rate of messages sent to the client.
query_time The amount of time spent for queries from this client.
queue_depth_out Number of messages queued to be sent to client.
queue_max_latency The age of the oldest item in the queue which has not yet been sent. This is used as a measure of how far behind AMPS believes a subscribing client is.
queued_bytes_out Number of queued bytes waiting to be sent.
remote_address IP and port of the client connection.
subscription_count Number of subscriptions the client has requested.

Table 4.2: Client Statistics

config.xml

Selecting this will display the current AMPS configuration file. To keep the path consistent, AMPS provides the file under the config.xml path, regardless of the actual name of the file.

config_path

Filesystem location of the configuration file.

conflated_topics

Selecting the conflated_topics resource will display a list of the conflated topics in the instance.

Element Description
conflation_ratio Ratio representing the amount of conflation for this topic.
interval Conflation interval
message_type Message type for this topic.
topic Name of this conflating topic replica.
total_executions Total number of times the conflation algorithm has been executed.
total_time Amount of time spent processing this topic.
underlying_topic Name of the underlying topic that this topic conflates.

Table 4.3: Conflated Topics

cpu

The CPU resource lists properties related to overall CPU usage of the AMPS instance. Selecting the items below give more specific information to the type of CPU utilization being consumed by the AMPS user.

Element Description
system_percent Percent of CPU utilization time consumed while executing kernel processes.
total_percent Total percent of CPU utilization.
user_percent Percent of CPU utilization time consumed while processing non-I/O events.

Table 4.4: CPU Statistics

cwd

The current working directory from which the AMPS instance was invoked.

lifetimes

Information about the lifetime of the AMPS instance, including historical information if stats.db is persisted. Each time an event related to startup or shutdown is logged, AMPS creates an entry in this resource. Each entry contains the following statistics:

Element Description
event The type of event logged, for example, started or shutdown.
timestamp The timestamp of the event.
version The AMPS version string for the instance that logged the event.

Table 4.5: Lifetimes Statistics

logging

The logging resource contains information about the resources consumed during various AMPS logging processes. Selecting a logging mechanism (console, file or syslog) will first list all logs of that particular type. Drilling down into one of those logs will pull up more granular information about logging. If a logging mechanism is not defined in the configuration, then the results will be blank when the logging resource is selected.

console

Below are the options available for reporting when console logging is enabled.

Element Description
bytes_written Number of bytes written to the console.
exclude_errors Errors which are excluded from logging.
include_errors Errors which are included during logging.
log_levels Log level used to control logging output.
target Console to which logging output is directed. Default is stdout.

Table 4.6: Console Logging Statistics

file

Below are the options available for reporting when file logging is enabled.

Element Description
bytes_written Number of bytes written to the log.
exclude_errors Errors which are excluded from logging.
file_name File defined in the configuration file where the log file is written to.
file_name_mask Mask of the logging output file name, if available.
file_system_free_percent Amount of file system available.
include_errors Errors which are included during logging.
log_levels Log level used to control logging output.
rotation Boolean representation denoting if log rotation is turned on.
rotation_threshold Log size at which log rotation will occur.

Table 4.7: File Logging Statistics

syslog

Below are the options available for reporting when syslog logging is enabled

Element Description
bytes_written Number of bytes written to syslog.
exclude_errors Errors which are excluded from logging.
facility Integer enumeration of the logging facility used by syslog.
ident Syslog name of the logging instance.
include_errors Errors which are included during logging.
log_levels Log level used to control logging output.
logopt Bitfield of possible log options included. These values are configured in the configuration file in the <Options> tag.

Table 4.8: System Logging Statistics

memory

AMPS can provide information regarding the process’s memory usage in its RSS and VMSize via the memory resource in the monitoring interface.

Element Description
caches Information about AMPS memory caches.
rss The resident set size of the AMPS process.
vmsize The virtual memory size of the AMPS process.

Table 4.9: AMPS Instance Memory

Element Description
allocations Number of memory allocations for this cache.
bytes Number of bytes allocated to this cache.
description Description of the cache.
efficiency Ratio of hits to requests for this cache.
entries Number of entries in this cache.
evictions Count of evictions from this cache.
fetches Count of fetches from this cache.

Table 4.10: AMPS Instance Memory Caches

message_types

Information regarding the message types used by AMPS are maintained in the message_types resource. AMPS can track the following information for all message types loaded into the instance.

Element Description
module The name of the module that implements the message type.
name The name of the message type.
options Any options provided to the module.
type The Type configured for the message type module. this configuration parameter is obsolete in 4.0 and later releases

Table 4.11: AMPS Instance Message Types

name

Name of the AMPS Instance.

pid

The process ID of the current ampServer process.

processors

Selecting the processors resource will list all the available message processors that the AMPS instance has invoked to handle messages. Each AMPS message processor will be listed individually, or selecting the all resource will list an aggregate of the available message processors. All AMPS message processors have the following attributes available:

Element Description
denied_reads Number of read requests which have been denied.
denied_writes Number of write requests which have been denied.
description Descriptor of the processors resource.
last_active Number of seconds since a processor was last active.
matches_found Number of messages found.
matches_found_per_sec Rate of messages found.
messages_received Number of messages received.
messages_received_per_sec Rate of messages received.
throttle_count Number of times the processor had to wait to add a message to the processing pipeline due to the instance reaching capacity limits on the number of in-progress messages.

Table 4.12: AMPS Message Processors

queues

The queues resource lists available information regarding the queues defined for this instance.

Element Description
age_of_oldest_lease The age of the oldest current lease, in microseconds.
backlog The number of leased messages awaiting acknowledgment.
expired_leases The number of leases that have expired for this queue.
max_backlog The configured MaxBacklog for the queue.
message_type The message type for the queue.
queue_depth Total number of unacknowledged messages in the queue.
seconds_behind Age of the oldest unacknowledged, unleased message in the queue.
topic Name of the queue topic.

Table 4.13: Queues

queries

The queries resource lists all available information regarding the query messages sent to AMPS.

queued_queries

A count of all queries which have not yet completed processing.

replication

Selecting the replication resource will display a list of available downstream replication instances used by this instance of AMPS. Selecting an individual replication instance will display the following statistics.

Element Description
authenticated_id The ID used to authenticate this connection.
bytes_out Number of bytes sent.
bytes_out_per_sec Rate of bytes sent.
client_type Specifies whether client is a replication source or destination.
connect_time Time connected to replication instance.
destination_admin_addr The admin address of the destination.
destination_group_name The group name of the destination.
destination_name The name of the destination.
disconnect_count Number of times replication destination has been disconnected.
disconnect_time Total amount of time in which the replication destination has been disconnected.
is_connected Boolean telling whether replication destination is currently connected.
messages_out Number of messages sent.
messages_out_per_sec Rate of messages sent.
name Name of replication configuration.
pass_through Boolean stating whether messages can only be sent to one client, or can messages be sent on to other downstream clients.
replication_type One of either sync or async.
seconds_behind The number of seconds the destination is behind, as measured by the oldest message which has not yet been replicated.

Table 4.14: Replication

The replication resource also provides options for managing replication instances. The following management functions are available.

Element Description
downgrade Change the replication type of this connection from sync to async.
reconnect Close and reopen the connection to the remote instance.

Table 4.15: Replication

sow

Clicking the sow link will list all available SOW topics for the AMPS instance. Selecting a single sow topic will list the following available statistics about the sow topic:

Element Description
delete_count Number of deletes processed by the SOW.
deletes_per_sec Number of deletes per second processed by the SOW.
historical_granularity The granularity at which this SOW maintains history, if one is set.
historical_window The window for which the SOW maintains history, if one is set.
insert_count Count of the number of records inserted into the SOW
inserts_per_sec Rate of inserts into the SOW.
memory_bytes The number of bytes of memory used for this SOW.
msg_type Message type for this topic.
path File system location of the SOW topics file store.
queries_per_sec Rate of queries for this SOW topic.
query_count Number of queries processed for this SOW.
record_size Configured record size for the SOW.
stored_bytes Number of bytes stored for this SOW
topic Name of this SOW topic.
update_count Number of updates processed by this SOW
updates_per_sec Number of updates each second
valid_keys Number of distinct messages in the SOW - defined by the SOW topic key.

Table 4.16: SOW Interface

statistics

The statistics resource contains information regarding how AMPS monitors its own statistics.

Element Description
disk_per_sample Amount of storage the stats database has grown since the last sample interval.
file_name Location where statistics are stored. Default is :memory:, which stores the statistics database in system memory.
file_size Size on disk of the statistics database.
interval Time in milliseconds between statistics database updates.
memory_used Size in bytes of the system memory consumption of the statistics database.
queries Number of queries processed from the statistics database.
time_per_sample Time taken to process each statistics database query.
total_commit_time Total amount of time spent committing statistics information to the database.
total_samples Number of statistics database updates that have taken place since the AMPS server started.
total_time Total amount of time spent publishing statistics, including the commit time.

Table 4.17: Statistics Interface

subscriptions

Each client that submits a subscribe command message is tracked by AMPS, and their relevant metrics are captured in the monitoring instance database. Selecting the subscriptions resource lists the available subscribers. Selecting a subscriber will list the available statistics below:

Element Description
backlog The current number of messages leased on this subscription. Applies to subscriptions to a queue.
client_id The ID of the subscribing client.
entitlement_filter The filter applied by the entitlement module, if any.
filter The filter requested on the subscription, if any.
is_replication Boolean value to determine if the subscription is applied to replication.
message_type Transport type of the subscription message. All return acknowledgments and messages use the same transport as the subscription.
max_backlog The maximum backlog set for the subscription: applies to subscriptions to a queue.
options The options string for the subscription.
seconds_behind For bookmark subscriptions, the number of seconds the subscription is running behind, as measured by the age of the last message enqueued for the client.
topic Subscription topic.

Table 4.18: Subscriptions Interface

transports

Clicking the transports link will give a list of the transports defined in the configuration file for the AMPS instance. Clicking a view will display the detailed resources for views.

Element Description
is_enabled Indicates whether the transport is enabled.
message_type The message type for this transport.
name The name of this transport.
options The options provided for this transport.
type The type of transport.

Table 4.19: Transports Interface

tuning

Clicking the tuning link will give a list of the tuning parameters for the instance. Clicking a parameter will give the current value for the instance.

Element Description
NUMA Indicates whether AMPS NUMA tuning is enabled.

Table 4.20: Tuning Interface

uptime

The length of time that the AMPS instance has been running, which conforms to a hh:mm:ss.uuuuuu format. This format is explained in the table below.

Element Description
hh hours
mm minutes
ss seconds
uuuuuu microseconds

Table 4.21: Time formatting used in uptime

user_id

The username for the owner for the ampServer process.

version

Version of the current running instance of AMPS.

views

Clicking the views link will give a list of the views defined in the configuration file for the AMPS instance. Clicking a view will display the detailed resources for views.

Element Description
grouping List of one or more fields, which are used to determine message aggregation.
message_type The message type of messages produced by this view.
projection The formula defined in the AMPS config for the computed transformation of one or more fields onto a new field.
queue_depth The number of messages in the view that have not yet completed processing.
topic The name of the new AMPS topic created by this view.
underlying_topic The source topic used to compute the projected view.

Table 4.22: Views Interface