.. _#ug-utilities:

22. Utilities 
===============

.. index:: Utilities, AMPS; utilities, Utilities; ampserr,
   amps_upgrade,

.. _AMPS Utilities Guide: ../../../utilities/html/index.html

AMPS provides several utilities that are not essential to message
processing, but can be helpful in troubleshooting or tuning an AMPS
instance. Some of the most commonly-used utilities are listed below.
Each of the following utilities is covered in greater detail in the
`AMPS Utilities Guide`_:

-  ``amps_upgrade`` : upgrades data files for existing AMPS instances to
   the current release of AMPS. This is not necessary for upgrading from
   versions of AMPS running 5.0.0.0 or later releases to upgrade to
   this version of AMPS. The utility is provided for compatibility with
   earlier versions of AMPS.

-  ``spark`` : a command-line client provided by AMPS. It is a useful tool for
   diagnostics, such as checking the contents of a SOW topic. The
   ``spark`` client can also be used for simple scripting to run
   queries, place subscriptions, and publish data.

-  ``ampserr`` : used to expand and examine error messages that may be
   observed in the logs. This utility allows a user to input a specific
   error code, or a class of error codes, examine the error message in
   more detail, and where applicable, view known solutions to similar
   issues.

- ``amps-grep`` : provides the ability to easily search AMPS error logs for
  literal terms or matches for regular expressions. This utility is aware
  of the structure of AMPS log messages, and returns the full content of
  the matching log message rather than just the line that matches. 

-  ``amps_queue_ack_dump`` : used to inspect the contents of the file that
   is used to quickly locate the head of a queue when AMPS restarts.

-  ``amps_sqlite3`` : provides a more convenient interface for querying
   AMPS statistics databases.

-  ``amps_sqlite3_report`` : provides a way to extract a subset of statistics,
   based on a date, from AMPS statistics databases.

-  ``amps_sow_dump`` : used to inspect the contents of a SOW topic
   store.

-  ``amps_journal_dump`` : used to examine the contents of an AMPS
   journal file during debugging and program tuning.

-  ``amps_file`` : used for identifying the filetype and version of
   files that AMPS persists (for example, ``AMPS sow 6.0`` for a SOW
   that uses version 6 of the SOW file format).

-  ``amps-report-minidump`` : used to submit minidump files for
   analysis by a member of the 60East Technologies team.
   