Home

HomeContact UsSite Map

SolutionsNews and EventsPartnersServicesAbout Us





























AppMetrics Resource Center - FAQ's

Background - Commonly asked questions about AppMetrics

Installation - Commonly asked installation questions

SQL Server | SCOM | W2K8 | .NET | VMWARE

Product Comparisons - Some comparisons between AppMetrics and other monitoring tools

Older Issues

Background

What is AppMetrics?

What types of applications does Xtremesoft's AppMetrics monitor?

Which platforms are supported by AppMetrics?

What part of Windows does AppMetrics monitor?

Are source code modifications required?

How do I access AppMetrics on my network?

Does AppMetrics integrate with my existing enterprise management system?

How much load does the AppMetrics agent place on my application server while in production?

Can I detect component memory leaks with AppMetrics?

How can I use AppMetrics to handle hung components and applications?

Installation

What networking protocols does AppMetrics need to function? Will AppMetrics communication work across a firewall?

I have received the error "These console files saved with an earlier version of the MMC, do you want to update to MMC version 1.2 format?" What should I do?

How does AppMetrics allocate percent of CPU in a monitored multi-processor server?

When running reports for the first time I get an error "no data from machine has been loaded".

When running a Production Monitor and having the detail at "component" or "component and method", how come I can't see any data for transactions or components with COM+?

How do I control the size of the AppMetrics databases?

What kinds of credentials do I need with AppMetrics?

How do I access a AppMetrics database from another machine that is behind a firewall if I want to run AppMetrics reports remotely?

Is there any alternative gui from excel like a web client? Or excel reports that we can distribute to stakeholders?

How can I use AppMetrics between two domains that don't share a Trust Relationship?

How can I use the Custom Component notification feature of AppMetrics?

Do you have Sample reports I can look at?

When I try to create a monitor with AppMetrics I get the error: Create database for monitor "monitor_name" failed. What should I do?

Can I share AppMetrics reports with other people?

SQL Server | SCOM | W2K8 | .NET | VMWARE

Can AppMetrics be used with SQL Server 2008?

How to change Server Role settings for the AppMetrics user account in SQL Server 2000 and Server 2005?

Can AppMetrics be used with SQL Server 2005 Express?

The DBAs want to keep control over all of the SQL Server Databases - how can I accommodate them and use AppMetrics?

If I want to send AppMetrics alerts to SCOM, does each machine running the AppMetrics agent, require a Management License for SCOM?

Does AppMetrics support Windows Server 2008?

Why don’t I see the Client IP or ASP URL in the AppMetrics Reports with ASP.NET applications? I saw them with my ASP applications?

Why don’t I see any activity when monitoring one of my COM+ Applications that uses .NET Serviced Components?

What are .NET Serviced Components?

Can AppMetrics help me as I begin to migrate to .NET?

Does AppMetrics report correctly when VMWare is in use on a server?

Product Comparisons

Can you differentiate Xtremesoft's AppMetrics from Identify's AppSight for me?

Why do I need AppMetrics if I already have Application Center 2000?

Older Issues

I am using Windows Server 2003, and my disk is filling up with complustrace.log files in the \Windows\System32\Com folder. Why is it happening, and what can I do to clean up those files from the disk?

Does AppMetrics SNMP alerting share the same vulnerabilities listed in CERT Advisory CA-2002-03

How does AppMetrics work with a workgroup instead of a domain?

When I try to start up the monitor I am getting an error that tells me "Access Denied"?

Background

What is AppMetrics?

Xtremesoft AppMetrics is a product designed to monitor and analyze COM+ application performance. Depending on the stage of an application's lifecycle, AppMetrics will deliver statistical information (metrics) that provide an early warning system, production reports, diagnostics and capacity trends for COM+-built applications.

Back to top

Which types of applications does Xtremesoft's AppMetrics monitor?

AppMetrics monitors applications that are running as COM+ server or library applications.

These applications can be packaged applications written in-house or by third parties.

The applications must be registered with COM+, but need not be marked as "Transactional". To track aborted transactions, one must mark the component as "Transactional" however.

Back to top

Which platforms are supported by AppMetrics?

AppMetrics currently supports the following operating systems (listed by AppMetrics component);

AppMetrics Manager, Console, and Reports:

  • Windows XP Professional
  • Windows Vista Business
  • Windows 7 editions
  • Windows Server 2003 editions (32 bit and 64 bit)
  • Windows Server 2003 R2 editions (32 bit and 64 bit)
  • Windows Server 2008 editions (32 bit and 64 bit)
  • Windows Server 2008 R2 editions (32 bit and 64 bit)

AppMetrics Agent:

  • Windows 2000 Advanced Server
  • Windows Server 2003 editions (32 bit and 64 bit)
  • Windows Server 2003 R2 editions (32 bit and 64 bit)
  • Windows Server 2008 editions (32 bit and 64 bit)
  • Windows Server 2008 R2 editions (32 bit and 64 bit)

Please refer to Chapter 2: System Requirements of the AppMetrics Install Guide for further information.

Back to top

Which part of Windows does AppMetrics monitor?

AppMetrics focuses on the logic tiers of multi-tier applications. Typically, a three-tier application has a web browser in the first tier, business logic in a middle tier, and a database or legacy system as the third tier. Unlike system monitoring products, AppMetrics examines what's happening with the application. Instead of obtaining metrics on system data such as network traffic, AppMetrics helps you assess how successfully your business is being transacted by monitoring the activities of components running within COM+ applicatons.

Back to top

Are source code modifications required?

No modifications to the application are required for COM+ applications.

For .Net Serviced Components however, some attributes may need to be set and the interface needs to be made public in order for those components to be monitored. These are relatively minor changes. Please refer to the .Net Serviced Component guidelines in the AppMetrics Installation Guide (Appendix A) for more information.

Back to top

How do I access AppMetrics on my network?

AppMetrics provides a Microsoft Management Console (MMC) user interface, making it accessible remotely on your network. System management information is easy to access, easy to understand, and most importantly, easy to act upon.

Back to top

Does AppMetrics integrate with my existing enterprise management system?

AppMetrics can be used as an integral part of your enterprise management architecture and strategy. The product integrates seamlessly with most commercially available enterprise application frameworks.

For those using Microsoft Systems Center Operations Manager 2007 for system management, AppMetrics offers out-of-box integration allowing them to use the AppManager Console to alert, report, and store data for important mission critical metrics.

Users developing in-house management solutions can integrate with AppMetrics by querying against a fully documented database schema.

Back to top

How much load does the AppMetrics agent place on my application server while in production??

Xtremesoft AppMetrics utilizes an Agent/Manager architecture that is designed to minimize impact on system resources.Xtremesoft AppMetrics utilizes an Agent/Manager architecture that is designed to minimize impact on system resources.

The AppMetrics Agent resides on the COM+ server, where it collects data and routes it to the AppMetrics Manager. We have surveyed customers, and they report little impact from the AppMetrics Agent on their production applications.

The AppMetrics Manager resides on a separate machine, away from production servers. The AppMetrics Manager undertakes the data analysis, alerting, reporting and interpretation functions on its own, non-production machine.

When diagnostic detail is required, an authorized user can increase the amount of data the AppMetrics Agent collects in a controlled manner, one component at a time. The impact on the system during problem resolution can vary significantly, depending on the number of users, the number of components, and the relative length of each method call to the mix of calls. However, by ensuring precise control, problems are resolved efficiently while the impact to the system is low.

Back to top

Can I detect component memory leaks with AppMetrics?

Yes. This is the process used to detect component memory leaks:

  • Create a COM+ Server Application for each of the components currently residing in the COM+ Application exhibiting the leak.
  • Next, move each component to a one of these separate COM+ Applications. In other words, each component lives in its own COM+ Server Application.
  • Create a Production monitor in AppMetrics and configure it to monitor all of these new COM+ Applications.
  • Important: Set the Production monitor to "Component" level detail, NOT "Component and Method" detail.
  • Start the Production monitor.
  • Run some load against the business application for a fixed period, say 15 to 30 minutes.
  • Rotate the log files in the Production monitor.
  • Open the AppMetrics reports, specify the Production monitor and the period when it was active, click the reports tab, and then click "GO".
  • Switch to the Applications sheet.
  • Observe the Memory columns in the tabular data set at the bottom of the report.
  • Focus on individual Applications by selecting them in the floating picker dialog and clicking "Refresh".

--> Charts for Applications that are leaking should display a linear rise.

Back to top

How can I use AppMetrics to handle hung components and applications?

AppMetrics may be used to either recycle or shutdown hung COM+ applications. Please refer to the following link for more information.

Instructions for how to handle Hung Components and Applications

Back to top

Installation

Which networking protocols does AppMetrics use? Will AppMetrics communication work across a firewall?

AppMetrics uses the DCOM (Distributed COM) protocol to communicate. It is necessary to open up the DCOM Service Control Manager port 135, along with a specified range of dynamic ports in order for AppMetrics to communicate between the AppMetrics Manager and Agents properly.

The dynamic range depends on how many monitors you wish to use, and whether or not you intend to use another application which makes use of DCOM. You should always ensure that there are a sufficient number of ports available for your existing needs, then add the number of ports needed for AppMetrics to that value.

Here are some guidelines on what you need to do in order to ensure proper connectivity between the AppMetrics Manager and Agent computers, along with the number of dynamic ports you'll need to open in relation to the number of monitors you wish to run:

  • Basic IP connectivity. Test this by ensuring that you can PING the Manager from the Agent, and the Agent from the Manager.
  • DNS/Netbios connectivity (needed when entering a NETBIOS name for the application server when adding an agent to a monitor). Test this by PINGing the Manager with its computer name from the Agent, and PINGing the Agent with its computer name from the Manager.
  • DCOM port configuration. DCOM uses TCP port 135. Test that DCOM is using TCP as its default protocol by launching DCOMCNFG from the Windows command line, navigating to the Default Protocols tab, and selecting TCP as the highest order default protocol.
  • DCOM can be restricted to a user-specified subset of ports for its machine-to-machine communication. This minimizes the number of ports that need to be opened on the firewall.
  • AppMetrics uses two dynamic DCOM ports per monitor, and two dynamic DCOM ports for the console. Therefore, you need to reserve at minimum four DCOM ports in order to run one monitor, and a set of two more for each additional monitor. You should allow for a minimum of 100 ports however due to various Windows services and applications which also require use of DCOM ports.
  • Using the DCOMCNFG tool, select the DCOM Connection-orientated TCP/IP protocol on the Default Protocols tab, then select the Properties button.
  • You may then enter the desired port range. Ensure that both the Port range assignment and Default dynamic port allocation radio buttons are selected, then select the OK button. Further information on using this tool may be found in the AppMetrics Install Guide, Appendix B: Using AppMetrics with a Firewall.

The port range will then need to be configured in the firewall settings to allow TCP/IP connections within that range.

Note 1: It is recommended that port numbers in the range 49152–65535 be used for DCOM port allocation.

Note 2: A minimum of 100 ports should be assigned to DCOM, unless there are security concerns which require a smaller range. Some applications may fail if the number of available ports is too low, so if you notice errors after making this change, you can increase the value until the errors cease to occur.

Additional information can be found in the AppMetrics Installation Guide, Chapter 3: Security Requirements, Distributed COM (DCOM) Security

Back to top

I have received the error "These console files saved with an earlier version of the MMC, do you want to update to MMC version 1.2 format?" What should I do?

This error indicated that your MMC is a newer version than that in which AppMetrics created its MMC files. These MMC files were created in an older version to meet ‘lowest common denominator’. Click the OK button to this message, because there is no reason not to upgrade.

Back to top

How does AppMetrics allocate percent of CPU in a monitored multi-processor server?

AppMetrics will average the CPU utilization across all processors in the server. For example, if AppMetrics determines that package/application Foo is using 60% of one processor in a two-processor server configuration, it will average this utilization across all processors (i.e. divide by two) to yield a CPU percentage value of 30%.

Back to top

When running reports for the first time I get an error "no data from machine has been loaded."

What happens is the agent collects the data and sends it over to the manager, which keeps the collected data in log files. The default to upload this data into SQL Server is every fifteen minutes. If you would like to see this data sooner you can go to the "Logging Options" in the user interface of the monitor in question. There is a button called "Upload the AppMetrics Log files to the Database Now". If you click this button then all the data collected up to that point would then be uploaded into the SQL Server database.

Back to top

When running a Production Monitor and having the detail at "component" or "component and method", how come I can't see any data for transactions or components with COM+?

One thing to look at is whether the components of your application supports events and statistics. In order to do this you have to go into component services on the agent machine and open up the application that you are monitoring.

Open up the components in that application, and right click a component and go into the properties. There is an "activation" tab. click on that and then check to make sure the "components supports events and statistics" is checked. If it is not check it and click "apply". This change will not take effect until your application is shutdown and restarted.

Back to top

How do I control the size of the AppMetrics databases?

There is no easy answer to this question.

The size of your database depends on what is being monitored, for how long, how many applications, how many components per application and the detail requested. The eventing system generates a massive number of events per physical transaction, sometimes of the order of ten to one, so the only answer is to focus the requests as tightly as possible. Our field techs are experts in helping you in this area.

In general the lower detail results in smaller volumes of data. So that:

  • Aggregate - least amount of data
  • Component - more than aggregate but less than component and method
  • Component and method - Collects the most data for production monitor

The Diagnostic monitor collects all it can for everything it is monitoring and cannot be changed. In general time control is the major control.

Each one of these is a contributor to the size of your database

In the configuration of the monitors (Production and Diagnostic) you can configure the database for how many days of data to keep in the database. Once the data has reached that limit then the oldest days data will be purged from the database before the new days data is uploaded. At that time the database should not change in size and should be consistent.

Xtremesoft suggests collecting data for a specified amount of time to get an idea of how YOUR monitoring will affect the size of your database and then plan accordingly

Back to top

What kinds of credentials do I need with AppMetrics?

AppMetrics utilizes Windows Authentication for SQL Server db operations, so the AppMetrics service account will need to be given SQL Server access. This is done automatically at install time in most situations..

The AppMetrics service account does not need to be a domain account, but it is much easier to configure AppMetrics if it is. It may also run under the local system account with some additional configuration steps.

The service account needs to be placed into the Windows Administrators Group and the AppMetrics Administrators Group on the AppMetrics Manager and the AppMetrics Agent machines. This is done automatically at install time.

Further info is provided in the AppMetrics Installation Guide, Chapter 3: Security Requirements.

Back to top

How do I access a AppMetrics database from another machine that is behind a firewall if I want to run AppMetrics reports remotely?

We use ADO to access the report data from SQL Server. As such, the following MSDN article may help you configure your firewall in order to allow you to connect to your AppMetrics manager database from outside the firewall.

How To Use ADO to Connect to a SQL Server That Is Behind a Firewall

Back to top

Is there any alternative gui from excel like a web client? Or excel reports that we can distribute to stakeholders?

There are ways to embed Excel objects into a web client. Microsoft’s FMStocks example code shows how to go about embedding Excel objects into ASP pages.

As far as AppMetrics reports, you can easily bring up the AppMetrics.xls report file by opening the file in Internet Explorer. A URL to the file can be hyperlinked from a webpage and opened as long as the client has MS Excel installed, and there is connectivity to an AppMetrics database.

Additionally, report data can be stored in the AppMetrics Excel report file, and viewed by dismissing the report dialog and navigating the report tabs.

Back to top

How can I use AppMetrics between two domains that don't share a Trust Relationship?

In certain situations it may be necessary to install AppMetrics in environments where there is no trusted domain available. This can be accomplished as follows:

Create a local user account on both the Manager and Agent machines which will be used as a logon account to log into the machines for the purpose of running AppMetrics.

When creating the local user account, ensure that the passwords are the same on both the manager and agent machines.
After you’ve created the user account on both machines, place that account into the Administrators group on both machines.

Install AppMetrics onto the Manager and Agent machines, using the local user account as the service account, ensuring that the password is the same on all machines.

When entering the service account information during install, enter the local machine name in the Domain field.

Please contact AppMetrics support if you need assistance in this area.

Back to top

How can I use the Custom Component notification feature of AppMetrics?

AppMetrics comes with a sample component script already configured to respond to alerts. This feature is described in the AppMetrics documentation in Chapter 3, Page 37. The sample component script is called XSNotification.wsc, and is located in the AppMetrics program folder, which is \Program Files\Xtremesoft\AppMetrics for Transactions by default.

The work done by the sample component script is purely for illustration purposes – it writes out the parameters that have been passed to it into a log file (C:\XSNotificationLogFile.log). The work that you want the component to do is customizable by you.

You may also use the following provided scripts to either recycle or to shutdown hung COM+ applications;

  • XSHungComponent.wsc - shutsdown all instances of hung COM+ applications, allowing a fresh instance to be instantiated on next invocation
  • XSRecycleApplication.wsc - recycles all instances of hung COM+ applications, providing a fresh instance to new connections. It allows the hung application to terminate on its own, or once a predetermined time has elaspsed.

Back to top

Do you have sample reports I can look at?

You can find an Overview of Sample Reports here.

When I try to create a monitor with AppMetrics I get the error: Create database for monitor "monitor_name" failed. What should I do?

Check the name of the monitor you are trying to create. It is possible that the name is reserved in SQL such as "asc" and "desc". Beginning the monitor name with a number may also cause issues.

Try a different name for the monitor.

Can I share AppMetrics reports with other people?

Yes. Using Excel 2007 or higher, you can save a report page using the Save As function, selecting PDF as the file format.

This will generate a PDF file which you can then send to other people.

Back to top

SQL Server | SCOM | W2K8 | .NET | VMWARE

Can AppMetrics be used with SQL Server 2008?

Yes, both the 32-bit and 64-bit versions of SQL Server 2008 are supported. SQL Express and Workgroup editions are not supported however due to their lack of SQL Server Integration Services.

In order for AppMetrics to function correctly with SQL Server 2008 64-bit editions, the Management Tools - Complete feature needs to be selected at install time or added by running SQL Server setup in maintenance mode. This installs the 32-bit version of SQL Server Integration Services, which AppMetrics requires.

The Microsoft SQL Server 2005 Backward Compatibility Components package will need to be downloaded and run in order to install SQL Distributed Management Objects (SQL-DMO) and is necessary for the proper operation of AppMetrics.

The package is available on the SQL Server 2008 installation DVD, as well as from the Microsoft SQL Server 2008 Feature Pack webpage, located at the following link:

Microsoft SQL Server 2008 Feature Pack

Scroll down to the section entitled "Microsoft SQL Server 2005 Backward Compatibility Components". Select the appropriate link, depending on whether you are using 32-bit or 64-bit SQL Server 2008, and run the install file, SQLServer2005_BC.msi.

After accepting the license, the install program will display a selection screen. Ensure that the SQL Distributed Management Objects (SQL-DMO) item is selected. The other components are optional, and may be deselected if so desired.

Continue the install by clicking the Next button and following the remaining instructions given in the setup program.

Once finished, AppMetrics can then be installed. Please refer to the SQL Server section under the AppMetrics Manager Requirements in Chapter 2 of the AppMetrics Install Guide for additional details on requirements specific to your version of SQL Server.

Back to top

How to change Server Role settings for the AppMetrics user account in SQL Server 2005 or 2008?

Please refer to the SQL Server Security section in Chapter 3 of the AppMetrics Install Guide for information on SQL Server roles.

Back to top

The DBAs want to keep control over all of the SQL Server Databases - how can I accommodate them and use AppMetrics?

The AppMetrics Manager needs to have a SQL Server database instance present locally or remotely when it is installed. It is an integral part of the AppMetrics Application and is used for a variety of purposes.

If not already installed, install SQL Server onto a dedicated AppMetrics manager workstation or onto a separate computer reserved for use as an AppMetrics database server. The remote option may be desirable if large volumes of AppMetrics data are required to be stored for extended periods of time for analysis by multiple users.

Locating the AppMetrics database instance onto a different machine than production database servers is the optimum configuration, since there is no impact on production data integrity or performance. You can then set up security as desired without impacting the production environement.

AppMetrics data is derived from collected  COM+ events and process performance information from monitored applications. There is no customer or important internal data collected as such.

Additional AppMetrics SQL Server Security requirements are listed in the AppMetrics InstallGuide, Chapter 3.

If I want to send AppMetrics alerts to SCOM, does each machine running the AppMetrics agent, require a Management License for SCOM?

Effective April 1, 2007, Microsoft is implementing changes to the definition of "manage" that will broaden the requirements for Management Licenses and ensure consistency across products that work with System Center products. Purchases of any System Center products after this date will be subject to this new definition of manage, which is as follows:

For purposes of this paragraph, to “manage” a device means to

  • solicit or receive data about,
  • configure, or
  • give instructions to the device’s hardware or software, other than to discover the presence of a device.

You do not need a management license for any of your devices

  • licensed to run instances of the server (System Center product’s management server) software, or
  • functioning only as network infrastructure devices (OSI layer 3 or below).

This effectively means that no matter how information about any device on a network gets into a System Center product’s management data repository, that device will require a Management License, except for servers licensed to run the System Center product’s management server software, or devices functioning only as network infrastructure devices (OSI layer 3 or below).

Back to top

Does AppMetrics support Windows Server 2008?

Yes. Xtremesoft will continue to support new Microsoft OS's and architectures as they are deployed by our customers. We expect Windows Server 2008 to advance Microsoft’s success in the enterprise, support of it is therefore a priority for Xtremesoft.

Back to top

Why don’t I see the Client IP or ASP URL in the AppMetrics Reports with ASP.NET applications? I saw them with my ASP applications.

The implementation of ASP.NET is quite different from the implementation of ASP. There is more integration between ASP and COM+ than there is between ASP.NET and COM+. As a result, there are no COM+ Identity Events fired when ASP.NET is calling COM+ applications. AppMetrics depends on these COM+ events in order to report the Client IP and ASP URL.

Back to top

Why don’t I see any activity when monitoring one of my COM+ Applications that uses .NET Serviced Components?

For Server Applications:

For .NET Serviced Components, some attributes may need to be set to public in order for those components to be monitored. These are minor changes. Please refer to the .NET Serviced Component guidelines in the AppMetrics Installation Guide, Appendix A: Monitoring .Net Serviced Components with AppMetrics for more information.

For Library Applications:

Microsoft has confirmed that there is an issue with Library Applications implemented with .NET Serviced Components when more than one such Library Application is executed under the same process. The responsible Microsoft team has filed a design change request for Vista to address this issue. Note: This issue does not arise with .NET Serviced Components deployed as COM+ Server Applications.

So that your application can be managed, we recommend that you either use Server Applications instead of Library Applications for your .NET Serviced Components or use unmanaged code for your Library Application.

If you have only one Library Application being executed, then follow the process for Server Applications.

Back to top

What are .NET Serviced Components?

Click here to find out.

Back to top

Can AppMetrics help me as I begin to migrate to .NET?

Yes

  1. Prior to any .NET modification/migration, AppMetrics is a great tool to gather, understand, compare and establish baseline performance stats. prior to any change.
    1. Understand the business logic before you begin the change!
    • Often overlooked, but a core piece of AppMetrics is telling you how the logic flows in your application. So many Companies have lost the original application architect (we call him Fred) and really don't know how it, really, all fits together. This is core though - if you don't know where you came from, how do you know where you are going!
    1. Get the COM+ application to run at its very best before you begin the switch.
    • Some (optimistic) developers say, "We'll be replacing that, so getting it running correctly now is pointless". The fact remains, if you can't get it running properly in the relatively fast COM+ world, then .NET will eat you alive! Some architects have looked at what they offer in the CLR, for instance, in terms of transactional control and said no way can this architecture process what we need!
    1. Recognizing that not all of the application will run in the same way under the pure .NET umbrella.
    • Serviced components was recognized as a vital step for the big users who need more horsepower than pure .NET can provide! Your application will be a hybrid environment and you are going to need two views of it - the .NET performance view and the legacy view - fact of life for major Applications! That said establishing monitoring of .NET serviced components from the beginning is vital. They are the most prone to garbage control issues.
    1. Establishing a performance baseline prior to any changes.
    • Comes back to if you don't know where you are today, then how can you improve in the future?
    1. Establishing a realistic test usage scenario to run against new versions.
    • Few customers have a decent test harness to run against new versions of the application and fail as soon as it goes into production. Test generators are all well and good, but no one can beat a test that uses randomly selected real data in the test harness. AppMetrics can provide this data.
  2. During .NET modifications
    1. Set up alerts on critical components to see if they are under performing. See: Early Warnings
    2. Iterative comparison on the test bed of changes made. See: AppMetric Solutions for QA Test Professionals
    3. Manage component hangs during switch over phase. See: Hung Components
  3. After .NET Modifications
    1. Compare user experiences and validate with performance improvements.
    2. Compare to original baselines.

Back to top

Does AppMetrics report correctly when VMWare is in use on a server?

All reporting functions appear to be correct, though we do not warranty on this platform as we are not be in control of the internals of a third party product.

AppMetrics is an ideal way to measure the applications "before" and "after" performance after an implementation of VMWare.

The following may be of interest in this process:

Background

Assuming the server (Before and after) are running the same application, with a similar load then the only performance difference is that the server is now running one to six VMWare virtual machines.

As a reference, this blog points to how processing is degraded over multiple VMWare machines.

Our comments:

We believe that the AppMetrics timings are accurate and that you are simply observing what would be expected from an application running on a six-way virtual machine.

A virtual machine shares actual hardware resources on the physical machine with not only the physical machine itself, but with the other virtual machines running on that system. It is normal for processing times to increase since there is less actual CPU time available than when running by itself directly on the physical machine. The processing time would be directly proportional to the number of virtual machines running on any one physical machine.

Our conclusion:

AppMetrics is simply showing the real degradation of your application caused by utilizing one to six virtual machines. Remember one physical and six virtual machines result in a total of 7 slices of the CPU and associated overhead.

Showing you how an application, at its core, is impacted by server/OS/code changes is one of the major values of AppMetrics.

The document above shows how performance is adversely affected with each additional VM instance and we believe that AppMetrics is simply showing you what you would expect.

AppMetrics is performing its role in identifying the degradation in performance.

Back to top

Product Comparisons

Can you differentiate Xtremesoft's AppMetrics from Identity Software's AppSight for me?

Sometimes AppSight is mistakenly believed to provide the same capabilities as Xtremesoft’s AppMetrics, when in fact, the two products solve very different and separate problems.

AppMetrics focuses on the quantity, quality and performance of the Business Transactions that are taking place within a production application, with the goal of keeping that application running longer than it would without the software being present. (Incidentally, it does this job very well!) It alerts you when transactions are either failing, slowing down, or when there are too many transactions occurring at one time for the system to handle. AppMetrics does this by monitoring your COM+ components and then producing metrics representing these business transactions.

Identity Software's product is targeted at tracing application crashes. AppSight collects an application's system level interactions and creates a recording of all these low level operations. It enables a programmer to analyze what was going on when the crash occurred. Additional software also allows you to ‘playback’ what has happened. AppSight is development focused - it helps you trace the execution of the application through its interaction with system level operations.

In a production environment transactions can utterly fail without anything resembling an application crash even occurring. If, for instance, your credit card processing vendor’s system is running very slowly, or is not responding, this could cause a business transaction to fail. However, this is clearly a very serious and business critical application issue and the administrator needs to know of the problem, before they get a call from the business unit. AppMetrics is predominantly production focused - it keeps your application running better and longer. See our Customer story about a failed dot.com

Maintaining a healthy application using a product like AppMetrics improves the production uptime of your application. If crashes do appear in your production applications, then application development tools like AppSite or those from Numega can be employed to debug the crash.

Back to top

Why do I need AppMetrics if I already have Application Center 2000?

The main purpose of Application Center Server is for the deployment and maintenance of applications built on IIS and COM+. This includes setting up clusters of machines onto which Application Center Server can deploy content and configure load balancing for such applications.

Application Center Server has a module in it called "Health Monitor" which was developed by Xtremesoft under contract for Microsoft. Health Monitor collects performance information from a variety of sources, one of which is COM+. Health Monitor collects data on an COM+ Application-wide basis (e.g. total aborted transactions, total committed, etc.).

AppMetrics, on the other hand, lets you monitor on an individual-transaction basis (i.e. by each component within the COM+ Application, and in some cases provides detail down to a method-invoked level).

BBack to top

Older Issues

I am using Windows Server 2003, and my disk is filling up with complustrace.log files in the \Windows\System32\Com folder. Why is it happening, and what can I do to clean up those files from the disk?

The complustrace.log files are created when an application subscribes to COM+ instrumentation events. AppMetrics subscribes to those events in order to collect instrumentation data from monitored applications.

There is always at least one current log file plus any number of archived log files on the system, with a minimum of one, where ten is the default value.

The number of archived log files can be adjusted by editing the following registry key;

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\Instrumentation\TraceLogFilesLimit

This is mentioned on the following Microsoft support page;

http://support.microsoft.com/kb/883955

The manner in which these files are created is that whenever a COM+ subscription is made, such as starting an AppMetrics agent on an application server, the current log file is archived by appending a time stamp to the file name, the number of archived files are trimmed to the value set in the registry, and a new complustrace.log file is created.

When the subscription terminates, such as when an active AppMetrics agent is stopped, the current log file is closed. No further action takes place until a new subscription is made, where the above process repeats itself.

This is assuming that you are running Windows 2003 Service Pack 2, which resolves an earlier Microsoft issue with COM+ trace log files not being deleted. If you aren't running Service Pack 2, you'll either need to upgrade to that service pack, or install the following hotfix;

http://support.microsoft.com/kb/912818/

Back to top

Does AppMetrics SNMP alerting share the same vulnerabilities listed in CERT Advisory CA-2002-03?

No. AppMetrics does not invoke or contribute toward the vulnerabilities documented in CERT Advisory CA-2002-03.

This advisory documents decoding and processing vulnerabilities in SNMP Service handling of SNMP request messages (SNMP managers to SNMP agents), and SNMP trap messages (SNMP agents to SNMP managers).

AppMetrics does not decode SNMP request messages, and the processing vulnerabilities documented by CERT occur outside of the extension agent in the SNMP service (which processes request messages related to AppMetrics objects). AppMetrics does not decode or process SNMP traps.

Xtremesoft recommends the application of any appropriate patches from Microsoft and any other vendor's SNMP service they currently have implemented.

Back to top

How does AppMetrics work with a workgroup instead of a domain?

AppMetrics will work with workgroups. You need to create the same userid with the same password on each of the machines you are using. (Manager, Agent) Then during install you will use that userid for the "Run As" account and the local machine name for the domain name.

Back to top

When I try to start up the monitor I am getting an error that tells me "Access Denied"?

There are a few things to check in regards to security.

  1. Check that the AppMetrics Administrators local group on both the Manager and Agent machines have the correct user accounts.
  2. Check the "remote access" account that the AppMetrics service on both the Manager and Agent machines is using. To do this, go into the AppMetrics Console and:
    • Right click the "AppMetrics Console" and go into properties
    • Change the "view level" from basic to advanced and hit "Apply"
    • Right click the "AppMetrics Console" and pick refresh
    • Right click the "AppMetrics Console" and go into properties
    • Check the "remote access" tab for the ID that is being used for the "remote access" account.

Back to top




SolutionsNews and EventsPartnersServicesAbout UsHomeContact UsSite Map


CCopyright © 2011 Xtremesoft, Inc.