This section includes the following topics:

About developing an Add-on AppTier

To describe the Add-on AppTier development process, we will use an imaginary example of an Add-on AppTier application named Generic Mail Server (GMS). GMS provides email services to organizations and enterprises. It was developed by an independent software vendor here-named GMS-ISV.
GMS users are recognized by the application through their login user name. GMS users can log into the application using various devices and from various locations, such as: from their workstation, home desktop computer, laptop computer, or even their cell phone. The system monitors the user's current connection by logging the IP network address for the client device. GMS users can send and receive mail messages which can include attachments such as: documents, pictures, and various other types of files.

There are three options available for developing an Add-on AppTier:

About the development process

Developing an Add-on AppTier is a complex process that requires completing the following software development phases: design, code development, testing, packaging and distribution.

The following is a list of phases you must perform for successful development and delivery of an Add-on AppTier.

About designing an Add-on AppTier

There are two stages in Add-on AppTier design: functional and technical design.

During functional design, the Add-on AppTier developer needs to answer the following questions:

About prerequisites for Add-on AppTier design

To design an Add-on AppTier well, the Add-on AppTier developer must be knowledgeable in the following areas:

About typical Precise AppTier components

A typical Precise AppTier contains several types of entities and counters.

About entity classifications

Entities and their attributes identify information that is passed between the client and server. There are two aims for classifying entities:

The following is a complete list of entity classifications as they appear in the Insight Display list:

About defining an Activity or Super Activity

An Activity is the atomic (most basic) unit (entity) which defines an action. The following are some examples of an activity:

A Super Activity is an entity which invokes other Activities. For example, a program that activates SQL statements in a database tier is a Super Activity.

About counter classifications

Counters are classified into Service Time, Statistical counters, and Executions, all used for similar purposes:

About Grouping

Grouping is a feature that enables Precise users to aggregate multiple values of performance measurement for one entity into a single line in a graph, according to a textual pattern. You use this feature to group entity values according to business functions.

After you have defined a grouping for an entity, a new graph and table appear in Insight. For example, Insight displays performance calculations for the Senders grouping. Each displayed line indicates the sum of all performance calculations for Senders that belong to this group.

NOTE    Report Manager lets you define custom reports for grouped entities. Groups for Client IP entities are called Locations and are defined using a separate settings dialog in AdminPoint.

About Insight and Report Manager standards and restrictions

Insight and Report Manager impose certain standards and restrictions to AppTiers:

About functional design of an Add-on AppTier

The functional design of an Add-on AppTier involves setting how the Add-on AppTier will be displayed in Insight and Report Manager; whether to set it as a standalone AppTier, or in multi-AppTier environments.

Consider the following issues when performing a functional design:

About guidelines for the functional design of an Add-on AppTier

The following are guidelines you should follow for entities:

The following are guidelines you should follow for counters:

Functional attributes    There are four functional attributes for a counter to consider:
•    Counter name. The Counter name is used as an Insight Tool Tip in the Compared by drop-down list and in the report Manager Y-axis legend.
•    Counter classification. The Counter classification defines Service Time counters, the Executions counter, and Statistical counters.
•    Counter color. Both Insight and Report Manager support a pre-defined color palette.
•    Unit of measure. This attribute affects the display format for counter values in Insight and Report Manager. Service Time counters are always time based while the Executions counter is always a number.
However, Statistical counters can represent either a number of Bytes. If Bytes, they are summed as KiloBytes, MegaBytes, and so on.
The following are general guidelines:
Add-on AppTier name    The Add-on AppTier name is used during plug-in installation of the Add-on AppTier and in StartPoint, AdminPoint, Insight, and Report Manager screens.
SLA applicability    You can give Precise users the ability to define SLA levels for activities.
If provided, Precise used can define SLA levels in AdminPoint for the average Service Time for activities. Insight will calculate the SLA breaches for performance data that is received from the Add-on or Insight SDK Collector.
About technical design of an Add-on AppTier
The technical design of an Add-on AppTier involves setting how data will flow from the Add-on AppTier or Insight SDK Collector to Insight, and how the data will be stored in the PMDB.
Consider the following issues when performing a technical design:
Use ARM of file-based collection    You must decide what mode of collection to use. See About guidelines for the technical design of an Add-on AppTier on page 18 for more information.

Design the Collector file    Whether you use ARM (Application Response Measurement) or file-based collection, the Collector XML file becomes the vehicle by which the Add-on AppTier or Insight SDK Collector provides data for Precise installation.
Insight must know how to correctly read and parse the Collector file before it is loaded into the PMDB.


About guidelines for the technical design of an Add-on AppTier
The following are guidelines you should follow for the technical design:
ARM collection mode    ARM (Application Response Measurement) is an industry standard that is growing in popularity.
Implementing the ARM standard in the monitored application will open up the monitored application to all monitoring and tuning tools that support this standard. It also allows the tools to probe the monitored application and display performance calculations and perform application analysis.
Using the ARM standard API solution involves code instrumentation. This is possible only if the Add-on AppTier developer has access to the source code for the monitored application. For example, the Generic Mail Server vendor can implement the ARM standard API by incrementing the application's code.
Using the ARM standard API, the Insight SDK Collector creates a Collector XML file (a complex process) and aggregates the information after every time slice (every 15 minutes).
Currently you can implement the ARM standard API for an Add-on AppTier using C language only.
For more details regarding the ARM standard, refer to http://www.opengroup.org/management/arm/.

File collection mode    In the file collection mode, the task of developing the Add-on AppTier Collector rests on the shoulders of the Add-on AppTier developer.
The Add-on AppTier developer can monitor the application and collect performance data any way that suits his needs. He is not limited by restrictions, such as: API standards, language support, platform support, and so on.
The Add-on AppTier Collector must create Collector XML files using Precise format and file naming conventions.
See About ETD file application-level entities on page 30 for more information.
The Add-on AppTier Collector aggregates performance measurement into 15-minute time slices that are then written into separate Collector files.
Entity and counter technical attributes    There are two technical attributes to consider:
•    Database column name. This is the name of the database column in the PMDB that stores entity or counter values.
•    XML tag name in the Collector file. This is the name of the XML tag in the Add-on AppTier or Insight SDK Collector file that holds values for the entity or counter.
About developing and testing the Add-on AppTier installation package
The Add-on AppTier plug-in installation package is a series of metadata XML files that contain all functional and technical attributes for Add-on AppTier entities and counters.
Testing the Add-on AppTier installation package gives the Add-on AppTier developer his first glimpse into how the Add-on AppTier will display in Insight and Report Manager. The Add-on AppTier installation package also contains the technical specifications to the Add-on AppTier or Insight SDK Collector file.
About prerequisites for developing an Add-on AppTier installation package
You need the following prerequisites to develop and test the Add-on AppTier installation package:
•    Functional and technical specifications for the Add-on AppTier
•    Add-on AppTier installation package specifications, as described in see Add-on AppTier installation package descriptor file on page 27.
•    Insight and Report Manager FocalPoints installed

About testing the Add-on AppTier installation package
Perform the following to test the Add-on AppTier installation package:
Plug-in the Add-on AppTier package    Plug-in the Add-on AppTier installation package using AdminPoint. This will test whether the installation package is correct and complete. See About installing the Add-on AppTier plug-in installation package on page 21 for more information.

Manually create a Collector file and load it to the PMDB    After plugging-in the Add-on AppTier installation package has finished, you need to wait until data is loaded into the PMDB before any information displays through Insight or Report Manager.
Consequently for testing, you must supply an Add-on AppTier Collector XML file with a sample file. In most cases, a Collector XML file will not exist until you develop the Add-on AppTier Collector. Manually create the Collector XML file according to the XML tag names specified in the Add-on AppTier installation package, and according to file name conventions.
See About the XML Collector file on page 44 for file name conventions.
After your Collector XML file is successfully loaded into the PMDB, and Insight and Report Manager display the correct information, the sample Collector file can be used as a reference for the following phases in developing the Add-on AppTier or Insight SDK Collector.
About developing and testing the Insight SDK Collector
After testing the Add-on AppTier installation package and an sample Collector file is available as reference, you can write the code for an Insight SDK Collector.
The Insight SDK Collector collects application-specific information using an ARM (Application Response Measurement) standard API (Application Programming Interface) in the application. It correlates the transactions it receives from the Insight ARM extension dynamic library, within the application, and creates performance files.
Initializing the Insight ARM extension dynamic library
Initializing the Insight ARM extension dynamic library begins when the Add-on AppTier application calls to the arm_init function.
WARNING    Before installing the Insight ARM extension dynamic library, copy the original ARM dynamic library to another directory.
To initialize the Insight ARM extension dynamic library
1.    Create or attach to the shared memory segment holding the configuration.
2.    Connect to the IPC channel. The IPC channel passes transactions information from the Insight ARM extension dynamic library to the Insight SDK Collector. The IPC channel (UDP port) number is stored in the shared memory.
3.    Initialize the application and user-defined properties within the parameters for the arm_init function.
4.    Initialize the transaction hash. This hash includes all user-defined transactions defined while the Add-on AppTier application is running.

About testing the complete Add-on AppTier solution
Testing the complete Add-on AppTier solution involves completing the following cycle:
•    Plugging-in the Add-on AppTier using the Add-on AppTier installation package
•    Defining instances and invoking the Insight SDK Collector
Place Collector files in the correct directory, where the Precise harvester automatically puts the files into the appropriate directory on the Precise FocalPoint Server.
Other aspects, such as: performance and scalability for the Add-on AppTier can now be addressed.
About packaging, deployment, and distribution of an Add-on AppTier
These are the final steps in developing the Add-on AppTier solution.
Other aspects, such as: documentation, versioning, licensing, distribution and support should now be addressed.
About Add-on AppTier registration
Before distributing an Add-on AppTier installation package to Precise users, send the newly developed and tested Add-on AppTier installation package to the Precise research and development team for review, validation, and certification.
Your new Add-on AppTier will be allocated a unique tech-code and a user interface titles range to be specified in the ETD file.
NOTE    For development and testing, you can use a list of pre-allocated tech-code and a user interface titles range specified in, see About the titles file or files on page 40.

The following information must be sent to the research and development team:
•    A high-level document describing the monitored application
•    A high-level description describing the purpose and functionality of the Add-on AppTier solution
•    If using the ARM API option, describe the instrumented transactions and their properties (as passed to the ARM API)
•    The Add-on AppTier installation package
•    Optional: target customer and use cases
•    Contact details for the Add-on AppTier developer
Email the required information to: dl-rnddevelopment-tpmteamleaders@precise.com

Precise. Performance intelligence from click to storage. Learn more > >
Precise WebsiteSolutionsSupportSupport PortalCommunityAbout UsLegal