Using the Archive Manager
The Archive Manager page allows you to periodically save older messages to a separate archive for long-term storage. The Archive Manager is deprecated. Instead of using the Archive Manager, you should use the Enterprise Message Bank, which enables you to archive messages from multiple productions. For an overview, see “Defining the Enterprise Message Bank” in Developing Ensemble Productions. Also see “Using the Enterprise Message Bank” in Monitoring Ensemble
To navigate to the Archive Manager page, click Ensemble > Manage > Local Archive Manager.
This chapter describes how to use this page. It contains the following topics:
The page displays the following archive settings for the active namespace:
Archive to namespace — The namespace to which Ensemble saves archived messages.
Archive manager class name — The class that acts as the Archive Manager. Use Ens.Archive.Manager or a custom class, if available.
See “Defining a Custom Archive Manager” in Developing Ensemble Productions.
Number of days before archiving — Messages older than this number of days are automatically archived when you run the archive operation.
If the Archive Manager performs purging, note that the activity of purging generates extra journaling, especially when you purge large volumes of data; see “First-time Purges,” earlier in this book.
The Archive Manager requires you to identify a namespace in which to keep the archive. InterSystems strongly recommends that you keep this archive in a namespace that meets both of the following criteria:
A separate namespace from those in which you run Ensemble productions. If you are running productions in more than one namespace, be aware that multiple namespaces can archive their messages into one shared target namespace.
An Ensemble-enabled namespace, so that you can use the Management Portal features such as the Message Viewer and Visual Trace whenever you have a reason to examine the archived messages. For details about Ensemble-enabled namespaces, see “Environmental Considerations” in Developing Ensemble Productions.
Click Edit to the right of the namespace to update these settings. Change the information in the fields and then click Save. If the save is successful, the page is refreshed with the new settings displayed. If the save failed, the form displays the error message from the server.
The Archive history display provides information about the last or current archive. For example:
Archive start time 2012-01-05 12:06:10 Archive stop time 2012-01-05 12:06:10 Total messages processed 70 - 100% finished Total messages archived 0 Total message headers deleted 0 Total message bodies deleted 0 Archive status idle
During this process, Ensemble scans the entire message header table. Accordingly, you should use this option when the performance impact is acceptable.
At the bottom of the page is the Run Archive command. This command is operable only if there is data in all three fields in the form and there is no previous archive operation still in progress. After clicking Run Archive, click OK to verify and begin the archive.
You cannot stop the archive operation.
The archive operation runs in the background and displays progress statistics while it is running. The numbers in the display update continuously, with count and percentage continuing to change until the result reaches 100%, status becomes idle, and a final stop time appears:
Archive start time: 2008-05-14 18:19:02 Archive stop time: Total messages processed 100 - 10% finished Total messages archived 3 Total message headers deleted 1 Total message bodies deleted 1 Archive status running
If errors occur during the archive operation, you see the following display.
Total number of errors XX [show error log]
[show error log] is a link that toggles with [hide error log]. You can click this link to show or hide the error log. The maximum number of errors displayed in the table is 1000. Each time you run an archive operation, it deletes the previous archive error log.
If you use the default class (Ens.Archive.Manager), Ensemble does the following for each message to be archived:
Copies the message header to the target namespace.
Copies the serialized message body (not the message body object) to the target namespace.
Deletes the message header and message body objects from the original namespace.
Messages cannot be restored once archived to another namespace.