Collecting All Parameters and Values for Large SQL Queries

by Alex Fedotyev 7. July 2010 22:42

Now that we’ve addressed an easy configuration change that one of our customers made in order to collect the full command text for large SQL queries, it seems appropriate to provide a quick tip for further fine tuning of AVIcode’s monitoring and data collection related to SQL queries.

 

By default, AVIcode’s solutions are configured to collect only the first 20 parameters and associated values within a SQL command. There are cases, though, where an application passes more than 20 parameters, and application performance troubleshooting efforts require you to extend this diagnostic data collection.

 

This is a straight forward configuration change, much as collecting the full command text change described earlier:

 

1.      Locate, backup and edit the configuration file on the monitored server: %Program Files%/AVIcode/Intercept/Agent/%Version%/Configuration/

a.      If using the .NET 1.1 framework, the configuration file is PMonitor.default.config

b.      If using .NET 2.0 or later, the configuration file is PMonitor2_0.default.config

2.      Next, find the class with the command definition related to the database provider. For example, System.Data.SqlClient.SqlCommand or System.Data.Odbc.OdbcCommand.

3.      Within the command definition, edit the detailLevel value for the parameters member. The default value is “3/20”, where the second number is the maximum number of parameters collected. AVIcode recommends changing the value to “3/40”, but depending on your specific needs, a different number may be required.

4.      Finally, save the configuration file and recycle IIS to start collecting all parameters values for the SQL queries and stored procedures .

Application monitoring requirements vary greatly between applications and organizations. There is no one-size-fits-all approach. AVIcode’s application performance monitoring solutions are designed to be highly scalable and easily configurable in order to meet varied and evolving monitoring needs.  This quick tip demonstrates just another example of AVIcode’s extensibility and flexibility.

Share or Bookmark this post…
  • Digg
  • TweetThis
  • Facebook

Collecting Full Command Text Values for Large SQL Queries

by Alex Fedotyev 29. June 2010 22:09

Detecting, identifying and diagnosing the root cause of application failures or performance bottlenecks can be a challenge without an application performance monitoring solution that is suited for in-production, always-on monitoring.  The problem resolution challenges are further complicated when you take into consideration the distributed nature of applications and the multiple dependencies of that application.

AVIcode’s low-overhead APM solutions are uniquely suited for in-production monitoring. Recently, we had a customer tell us about the value of monitoring in-production when it came to an issue with a dependency on a database.  AVIcode was able to help that customer detect the details of a performance issue, including the SQL command text. The challenge for the customer was that AVIcode’s default configuration limited the command text to collect only the first 4KB of data, which is generally enough to isolate a problem. But, in this situation, the application in question was using very large queries, instead of stored procedures, and extending the default collection limits was the best option.

Fortunately, this was an easy configuration change: 

1.       The customer located, backed up and edited the configuration file in this folder on the monitored server: %Program Files%/AVIcode/Intercept/Agent/%Version%/Configuration/.  If using .NET 1.1, the file to modify is PMonitor.default.config. In this case, and with .NET 2.0 and later framework versions, the file to modify is PMonitor2_0.default.config.

2.       Next, the customer found the class with the command definition related to the used database provider like SQL, ODBC, DB2, OleDb. For example, this could be System.Data.SqlClient.SqlCommand or System.Data.Odbc.OdbcCommand.

3.       Within the command definition, the stringLimit value for the cmdText member was edited. The default value is “4196”, and we recommended adjusting this value to “10240” for the large SQL statement.

4.       The last step was to save the configuration file and recycle IIS. The full SQL command text was then received.

 

With this easy configuration change, AVIcode's customer was able to capture the full command text valuesof their SQL queries and quickly identify and resolve their application performance issue.

Share or Bookmark this post…
  • Digg
  • TweetThis
  • Facebook

Quick Tip: Repeat Monitoring

by Shawn Gibbs 11. May 2010 13:40

We occasionally see situations where it is necessary to duplicate the exact same monitoring configuration from one server to another.  For example, this is sometimes required when a client would want to undo changes made during testing. Repeating a monitoring setup is straightforward. AVIcode's management console snap-in modification of XML-based monitoring agent configuration files. These files are unique in that they are not server-centric, in other words, they are not aware of server-specific configurations like server name or IP address. Rather, the configuration files are application-specific.

As a best practice, we recommend clients make backups of their main configuration files for the the various types of servers being monitored. These files are typically located in the %Program Files%/AVIcode/Intercept/Agent/%Version%/Configuration/ folder on the monitored system. A local network share should be created called //AVIcode/Backups and folders created for each type of monitoring being performed.  In one recent implementation, an AVIcode customer simply created a "Production" folder for the backup configuration files for production systems and a "QA" folder for the files from their QA servers.

These backups become the catalyst for employing repeat monitoring configurations. When you deploy a new agent, simply start the management console snap-in (agent configuration utility) and test its connectivity. This is a required step in order to apply configurations, and should be done both before and after xcopy.  Next, copy the appropriate "backup" files to the new server or desktop configuration directory. Consider the option of configuring a scheduled xcopy job to either pull the backups or push them out to reset the servers on a set schedule. That's all there is to it - enabling repeat monitoring configurations is quick and simple.

Share or Bookmark this post…
  • Digg
  • TweetThis
  • Facebook

News: AVIcode Included in Magic Quadrant on APM

by Marty Brandwin 24. February 2010 20:58

AVIcode was recently included in Gartner Inc.'s first "Application Performance Monitoring"1 Magic Quadrant market study. AVIcode is "regarded as the market leader in the management of .NET based applications", and the company offers a broad range of solutions covering all five of the Gartner-defined "dimensions" of application performance monitoring.

The Magic Quadrant positions vendors according to their "Ability to Execute" and their "Completeness of Vision."

All vendors were evaluated on the five most recognized dimensions of the application performance monitoring (APM) market:

  • End user experience monitoring
  • User-defined transaction profiling
  • Application component discovery and modeling
  • Application component deep dive monitoring
  • Application Performance Monitoring database

In order to be qualified for inclusion in the magic quadrant, a vendor must have at least 50 customers who use its APM products actively in the production environment for at least two of the APM dimensions or functionalities listed above, adn the vendor must have a global sales presence. AVIcode addresses all five dimensions and provides customers with a complete keybaord-to-eyeball solution. In addition, AVIcode has extensive indirect and direct sales channels that provide the company with a worldwide presence.

As the acknowledged market leader, AVIcode is honored to be recognized by Gartner and represented in the first Magic Quadrant for the Application Performance Monitoring space. To learn more about the magic quadrant, or to discuss how AVIcode's solutions for .NET, SharePoint, BizTalk and SQL Reporting services monitoring were evaluated, please contact us directly - http://blog.avicode.com/contact.aspx.

Share or Bookmark this post…
  • Digg
  • TweetThis
  • Facebook

Welcome

by Marty Brandwin 7. December 2009 09:43

Welcome to AVIcode's new company blog. We hope to provide you with a range of valuable information related to your end-to-end application performance monitoring efforts, including news, opinions, real-world case studies and application monitoring resources. In addition, AVIcode's technologists are eager to share their experiences and best practices in order to help you ensure the availability and reliability of your critical business applications. We welcome your comments, suggestions and requests. We will do our best to respond in a timely and informed manner. Please check back often or subscribe to our feed so you can be assured of receiving the latest and most timely information.

Share or Bookmark this post…
  • Digg
  • TweetThis
  • Facebook
©2009 AVIcode Inc.   All Rights Reserved