文档首页> 云监控服务 CES> 用户指南(阿布扎比区域)> 常见问题> 主机监控> Agent状态切换或监控面板有断点该如何处理?
更新时间:2023-05-06 GMT+08:00

Agent状态切换或监控面板有断点该如何处理?

问题现象

当云监控服务的Agent进程出现以下现象时,可能是因为Agent负载过高,状态不稳定导致:

  • 管理控制台主机监控页面的“插件状态”参数在“运行中”和“故障”两个状态切换。
  • 监控指标面板中存在断点。

问题原因

为避免Agent负载过高,影响主机上的其他业务,云监控服务在Agent占用CPU或内存过高时,提供了熔断机制。当Agent负载过高时,会自动触发熔断,触发熔断机制后,Agent暂时停止工作,不上报监控数据。

熔断机制原理

默认情况下,Agent检测机制为:

1分钟查检测一次Agent是否超过第二阈值(占用CPU超过30%或占用内存超过700M)。如果CPU或内存任何一个超出,Agent直接退出:如果没有超过第二阈值,查看Agent是否超过第一阈值(占用CPU超过10%或占用内存超过200M),连续三次超过第一阈值,则退出Agent进程并记录。

退出后,守护进程会自动拉起Agent进程,首先检测退出记录,如果有连续三次退出记录,则休眠20分钟,休眠期间,不会采集监控数据。

当主机挂载磁盘数量较多时,Agent占用的CPU或内存可能较高。您可以根据实际观测主机的资源占用率,参考操作步骤配置Agent熔断机制中的第一阈值和第二阈值。

操作步骤

  1. 使用root帐号,登录Agent不上报数据的ECS或BMS。
  2. 执行以下命令,切换至Agent安装路径的bin下。

    cd /usr/local/telescope/bin

    Windows系统下为telescope_windows_amd64\bin目录。

  3. 修改配置文件conf.json。
    1. 执行以下命令,打开配置文件conf.json。

      vi conf.json

    2. 在conf.json文件中,添加如下四行参数,具体参数请参见表1
      表1 参数说明

      参数

      说明

      cpu_first_pct_threshold

      第一阈值(CPU),若Agent进程a的CPU使用率为20%左右,此处建议配置为35,单位为%。

      memory_first_threshold

      第一阈值(内存),若Agent进程使用的内存大小为100M左右,此处建议配置为314572800(300MB),单位为Byte。

      cpu_second_pct_threshold

      第二阈值(CPU),若Agent进程的CPU使用率为20%左右,此处建议配置为55,单位为%。

      memory_second_threshold

      第二阈值(内存),若Agent进程使用的内存大小为100M左右,此处建议配置为734003200(700MB),单位为Byte。

      aAgent的CPU使用率和内存使用率查询方法:

      • Linux:

        top -p telescope的PID

      • Windows:

        在任务管理器中查看Agent进程详情。

      {
          "InstanceId":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ProjectId": "b5b92ee0xxxxxxxxxxxxxxxxcab92396",
          "AccessKey": "QZ0XGJXFxxxxxxxxT65R",
          "SecretKey": "lEv2aXAGwxxxxxxxxxxxxxxxxxxxxF8t0Bf18Tn2",
          "RegionId": "ae-abudhabi-1",
          "ClientPort": 0,
          "PortNum": 200,
          "cpu_first_pct_threshold": 35,
          "memory_first_threshold": 314572800,
          "cpu_second_pct_threshold": 70,
          "memory_second_threshold": 734003200
      }
    3. 执行如下命令,保存并退出conf.json文件。

      :wq

  4. 请执行如下命令,重启Agent。

    /usr/local/telescope/telescoped restart

    Windows系统下:在Agent安装包存放目录下,先双击执行shutdown.bat脚本,停止Agent,再执行start.bat脚本,启动Agent。