应用参数
应用程序参数是一项有用的功能,可以监控应用程序中的重要指标。使用应用程序参数,您可以监控:
- 变量的大小、数值或频率。
- 应用程序中操作的大小或频率。
假设一个简单的 Web 请求涉及 API 调用、数据库 (DB) 操作和缓存命中;一个请求可以调用多个资源,多个用户可以同时调用多个请求。在这些情况下,您可以计算出调用 API 的频率,以及在特定时间间隔内发生 DB 操作的次数。这有助于您评估 CPU 或内存是否过载,以及这对给定时间间隔内的应用程序性能有何影响。
对于现实世界的应用程序,当监控对 DB 调用、服务调用或用户定义的框架调用的命中频率时,App 参数功能会派上用场。根据应用参数中的报告,您可以排查由于点击量过多导致的性能下降。
开始使用 App 参数:
1.总和
- 在特定时间间隔内为参数传递的所有值的总和。
2.平均
- 在特定时间间隔内为参数传递的平均值。
每个参数都将与以下指标一起发送以跟踪其频率:
和:
1.参数名称:
- 用户在应用程序中提供的参数名称。
2.总值:
- 特定时间间隔内相应参数的聚合值。
平均的:
1.参数名称:
- 用户在应用程序中提供的参数名称。
2.总值:
- 特定时间间隔内相应参数的聚合值。
3.最小值:
- 在该特定间隔中捕获的最小值。
4.最大值:
- 在该特定时间间隔内捕获的最大值。
5.总数:
- 总命中数。
应用程序参数 API 可用于 .NET 和 Java 代理。请按照以下说明开始。
- 安装 APM Insight .NET 代理。
- 添加在安装路径中找到的 DotNetAgent.Api.dll 作为对您的应用程序的引用。
- 在需要的地方添加此代码段:
Sum:
在特定间隔内为参数传递的值的总和。如果 sum 为空值,则加 1。
DotNetAgent.Api.CustomTracker.Increment("keyName");
DotNetAgent.Api.CustomTracker.Increment("keyName", value);
平均值:
在特定时间间隔内为参数传递的值的平均值。
DotNetAgent.Api.CustomTracker.Average("keyName", value);
示例:
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();
}
4. 发布应用程序开始跟踪参数。
- 安装APM Insight .NET Core 代理。
- 将包Site24x7.DotNetAgent.Api从 NuGet 包管理器添加到您的 Web 应用程序项目。
- 在需要的地方添加此代码片段:
求和:
在特定间隔中为参数传递的值的总和。如果 sum 为空值,则加 1。
Site24x7.Agent.Api.Increment("keyName");
Site24x7.Agent.Api.Increment("keyName", value);
平均值:
在特定时间间隔内为参数传递的值的平均值。
Site24x7.Agent.Api.Average("keyName", value);
示例:
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
Site24x7.Agent.Api.Increment("register");
//parameter "mykey" will be incremented by myKeyValue and sent as SUM
Site24x7.Agent.Api.Increment("mykey", myKeyValue);
double myKeyAvgValue = GetAverageValue();
//parameter "myavgkey" will be incremented by value and sent as AVG
Site24x7.Agent.Api.Average("myavgkey", myKeyAvgValue);
return View();
} -
发布应用程序以开始跟踪参数。
- 安装 APM Insight Java 代理
- 确保您满足先决条件。绑定在您的应用程序构建路径中找到的 API jar (apminsight-javaagent-api.jar)。 引用的位置是WEB-INF/lib 。
- 在需要的地方添加下面 的代码 片段。
Sum
CustomMetric.increment("key_name")
密钥的值将增加 1。密钥将在每个代理轮询间隔被清除。
CustomMetric.increment("key_name", value)
键的值将按指定值递增。密钥将在每个代理轮询间隔被清除。
Average
CustomMetric.average("key_name", value)
密钥的值将被聚合,其计数将由代理收集并推送到 Site24x7 的服务器。
示例:
private void generateReport(String type)
{
CustomMetric.increment(type);
// Other app operations
double averageValue = getAverageValue();
CustomMetric.average(type, averageValue);
- 登录到您的 Site24x7 帐户 > 您的应用程序 > 应用程序参数。
- 为操作/变量创建的应用程序参数将列在右侧,以及您提供的名称和参数类型(总和或平均值)。
- 点击您要查看的参数;您可以创建、保存和更新视图以供将来参考。