App Parameters


Overview

App Parameters is a helpful feature that monitors important metrics in your application. With App Parameters, you can monitor the:

  • Size,  numeric value, or frequency of a variable.
  • Size or frequency of an operation in an application.

Let's say a simple web request involves an API call, a database (DB) operation, and a cache hit; a single request can invoke multiple resources, and multiple users can invoke multiple requests at once. In these instances, you can figure out how often the API was called, as well as the number of times the DB operation took place during a particular time interval. This helps you assess if the CPU or memory is being overloaded and how this is affecting your app performance for the given time interval. 

With real-world applications, the App Parameters feature comes in handy when monitoring the frequency of hits to DB calls, service calls, or user-defined framework calls. Based on the report in App Parameters, you can troubleshoot performance degradation caused by an overload of hits.  

Get started with App Parameters:

Operations involved

  1. Sum - The sum of all values passed in a specific interval for a parameter.
  2. Average - The average value passed in a specific interval for a parameter.

Every parameter will be sent with the below metrics to track its frequency:

Sum

Parameters Description
Param Name The parameter name provided by the user in the application.
Total Value The aggregated value for the corresponding parameter during a particular interval.

Average

Parameters Description
Param Name The parameter name provided by the user in the application.
Total Value The aggregated value for the corresponding parameter during a particular interval.
Minimum Value The minimum value captured in that particular interval.
Maximum Value The maximum value captured in that particular interval.
Total Count The total number of hits.

Note: App Parameter APIs are available for .NET, Java and Node.js agents.

Installation instructions for .NET applications

  1. Install the APM Insight .NET agent.
  2. Add the DotNetAgent.Api.dll file found in the installation path as a reference to your application.
  3. Include the following code snippet wherever required:
  4. Syntax

    Sum:

    Sum of values passed in a specific interval for a parameter. If the sum is an empty value, it will be incremented by 1. 

    DotNetAgent.Api.CustomTracker.Increment("keyName"); 
    DotNetAgent.Api.CustomTracker.Increment("keyName", value); 

    Average: 

    Average of values passed for a parameter in a specific interval.

    DotNetAgent.Api.CustomTracker.Average("keyName", value);

    Example

    public ActionResult Register()

    {
     DateTime st = DateTime.Now;
     double myKeyValue = Convert.ToDouble(Request.QueryString["mykey"]);

     //parameter "register" will be incremented by 1 and sent as SUM
     DotNetAgent.Api.CustomTracker.Increment("register");

     //parameter "mykey" will be incremented by myKeyValue and sent as SUM
     DotNetAgent.Api.CustomTracker.Increment("mykey", myKeyValue);

     double myKeyAvgValue = GetAverageValue();
     //parameter "myavgkey" will be incremented by value and sent as AVG
     DotNetAgent.Api.CustomTracker.Average("myavgkey", myKeyAvgValue);
     return View();

    }

  5. Publish the application to start tracking the parameters.

Installation instructions for Java applications

  1. Install the APM Insight Java agent.
  2. Ensure you meet the prerequisites. Bundle the API jar found in your application build path (apminsight-javaagent-api.jar file). The preferred location is WEB-INF/lib.
  3. Add the below code snippet wherever required:
  4. Syntax

    Sum:

    Value for the key will be incremented by 1. Key will be cleared on every agent polling interval.

    CustomMetric.increment("key_name")

    Value for the key will be increment by the specified value. Key will be cleared on every agent polling interval.

    CustomMetric.increment("key_name", value)

    Average:

    Value for the key will be aggregated and its count will be collected by the agent and pushed to Applications Manager's servers.

    CustomMetric.average("key_name", value)

    Example

    private void generateReport(String type)
    {
    CustomMetric.increment(type);
    // Other app operations
    double averageValue = getAverageValue();
    CustomMetric.average(type, averageValue);

  5. Publish the application to start tracking the parameters.

Viewing App Parameters

To view App Parameters,

  1. Log in to your Applications Manager account → Your application → App Parameters.
  2. App Parameters created for operations/variables will be listed on the right, along with the name you have provided and the type of parameter (Sum or Average).
  3. Click on the parameter you wish to view—you can create, save, and update views for future reference.