Java 应用程序的基于上下文的监控

假设您的应用程序服务器上运行了三个 Java 应用程序。 

默认情况下,来自同一应用程序服务器的所有应用程序的事务都集中显示在 APM Insight的Web 事务选项卡下。

在下面引用的图像中,ZYLKER 是应用程序监视器名称,travel、cafetourism是运行在同一应用程序服务器上的三个上下文。

这三个应用程序的事务在Web Transaction选项卡中列出。

 

Transactions Tab

 

现在,通过基于上下文的监控,您可以分别监控在同一应用服务器中运行的所有单个应用程序的性能,这有助于您在更精细的级别上分析您的应用程序性能。

这意味着通过启用基于上下文的监控,可以分别查看travels, tourismcafe的事务。

 

Application Overview

 

继续阅读以了解 

如何启用基于上下文的监控:

  1. 登录到Site24x7
  2. 如果您还没有,请下载并安装APM Insight Java 代理
  3. 在apminsight.conf 文件中添加以下键: 
    • context.monitoring.enabled=true
  4. 重新启动服务器。
  5. 在相应的上下文中执行一些事务,以便代理将它们识别为单独的监视器。

注意:  每个上下文名称都以配置文件中提供的应用程序名称为前缀。

示例:如果配置文件中提供的应用程序名称为 ZYLKER,且各个上下文名称为travelcafetravels,则各个上下文将显示在 APM Insight 客户端中,如下所示:

如何重命名或分组上下文名称:

  要重命名上下文:

  1. 导航到APM Insight 代理目录
  2. 创建一个名为:
    • “context_naming_patterns_conf”
  3. 提供一个键值对,语法为key=value,其中:
    • Key 表示准确的上下文名称或匹配上下文名称的正则表达式。
    • 值表示用于重命名上下文的名称。

例子: 

  1. 当您想将上下文名称从sampleapp更改为jpetstore时,请提供key-value对作为sampleapp=jpetstore
  2. 当您有 /api/1、/api/2 之类的上下文并且您希望将它们作为单个应用程序进行监控时,可以将它们分组为/api/\d+=/api

注意:

  • 后台事务未针对单个上下文显示。由于无法确定哪个上下文触发了后台事务,因此在 JVM 级别捕获后台事务,并在应用程序级别显示数据。
  • 线程分析是针对整个 JVM 完成的,并不特定于上下文。无论从哪个上下文启动分析,它都会在整个 JVM 上执行并推送到主 APM 应用程序(在配置文件中提供名称的应用程序)。

注意:此功能仅适用于 APM Insight Java 代理版本 4.4 

禁用基于上下文的监控:

要禁用基于上下文的监控:

  1. 在您的apminsight.conf 文件中添加以下参数:
    • context.monitoring.enabled=false
  2. 在您的代理目录中,检查目录“apminsight_monitors”并删除它(如果存在)。
  3. 重新启动您的应用服务器。