云服务器内容精选

  • 背景信息 在外部请求激增、负载突变等场景下,极易出现应用性能问题,比如外部请求响应变慢、部分请求异常等。快速识别发现、定位处理应用性能问题成为越来越常见的日常运维场景。 APM 作为云应用性能问题诊断服务,拥有强大的分析工具,通过拓扑图、调用链、事务分析可视化地展现应用状态、调用过程、用户对应用的各种操作,快速定位问题和改善性能瓶颈。 例如,通过APM拓扑功能可视化服务间的调用关系,迅速找到有问题的实例;通过APM调用链功能下钻到服务内部,抓取到有问题的方法调用链路,确认问题根因。
  • 产品规格差异 APM产品规格包括免费版和企业版,当前支持Java应用接入APM。各版本支持的功能详见下表。 版本 免费版 企业版 版本说明 完全免费,最多可接入10个Agent在线。 所有功能完全开放。 数据存储时长 7天 30天 应用拓扑 √ √ 调用链 链路追踪调用链公测期间仅支持2天存储,其它场景支持7天存储。 √ 指标监控 √ √ URL跟踪分析 √ √ 告警 √ √ CMDB √ √ 说明(是否支持,√表示支持,x表示不支持) 不支持企业版降级回免费版(基础版)。
  • 前提条件 部署APM Agent时,必须确保接入APM的机器与APM服务网络连通,Agent才能正常工作。 可使用Telnet命令测试目标机器与APM服务器网络是否连通。例如,以检查华北-北京四区域,且接入方式选择“增强型探针”的连通性为例,请登录应用所部署的机器,并输入命令telnet 100.125.12.108:41333,其他区域地址请参考接入地址。 Java语言支持增强型探针、OpenTelemetry和Skywalking。
  • 动态配置master.address以及AK/SK APM支持动态配置master.address以及AK/SK。 用户可以通过配置环境变量的方式,给APM_MASTER_ADDRESS、APM_AC CES S_KEY(apm-ak)以及APM_SECRET_KEY(apm-sk)赋值。获取AK/SK的具体操作,请参见为JAVA应用手工安装Agent,获取master.address,请参见接入地址。 如果javaagent配置文件和环境变量同时配置了AK、SK、master.address,那么环境变量配置的值优先生效。 Agent 2.3.19之后版本支持动态配置master.address以及AK/SK。
  • 前提条件 部署APM Agent时,必须确保接入APM的机器与APM服务网络连通,Agent才能正常工作。 可使用Telnet命令测试目标机器与APM服务器网络是否连通。例如,以检查华北-北京四区域,且接入方式选择“增强型探针”的连通性为例,请登录应用所部署的机器,并输入命令telnet 100.125.12.108:41333,其他区域地址请参考接入地址。 Node.js语言,支持增强型探针、Skywalking和OpenTelemetry。
  • 前提条件 部署APM Agent时,必须确保接入APM的机器与APM服务网络连通,Agent才能正常工作。 可使用Telnet命令测试目标机器与APM服务器网络是否连通。例如,以检查华北-北京四区域,且接入方式选择“增强型探针”的连通性为例,请登录应用所部署的机器,并输入命令telnet 100.125.12.108:41333,其他区域地址请参考接入地址。 Node.js语言,支持增强型探针、Skywalking和OpenTelemetry。
  • 使用说明 目前只支持部署CCE的JAVA应用。相关参数说明参见表1。 表1 性能管理配置参数列表 参数名称 参数说明 安装探针 选择安装探针。目前支持“不启动”“APM 2.0探针”。 探针类型 选择探针的版本类型。 探针升级策略 探针升级的方式、策略。默认为“重启自动升级”。 重启自动升级:每次都尝试重新下载镜像。 重启手动升级:如果本地有该镜像,则使用本地镜像,本地不存在时下载镜像。 APM环境 输入APM环境名称,该参数为选填。 APM应用 选择一个已有的APM应用。 子应用 输入APM子应用,该参数为选填。 接入密钥 将会自动获取APM服务的密钥信息,详情参见前提条件。 CCE新版UI为部署在CCE容器中的JAVA应用安装Agent的详细操作,请参考《用户指南》。
  • 配置示例 spec: replicas: 1 selector: matchLabels: app: vmall-admin version: v1 template: metadata: creationTimestamp: null labels: app: vmall-admin version: v1 spec: volumes: - name: vol-171526714525730640 hostPath: path: /vmall/vmall-deploy/vmall-data/app/vmall-admin/logs type: '' - name: paas-apm2 emptyDir: {} initContainers: - name: init-javaagent image: swr.cn-north-4.myhuaweicloud.com/op_svc_apm/javaagent:2.4.8-x86_64 command: - /bin/sh - '-c' - cd /paas-apm2/javaagent/apm-javaagent; /bin/sh init-config.sh -master_address https://100.125.12.108:41333 -app_name vmall-admin -access_key {AK} -access_value {SK} -business vmall-demo resources: limits: cpu: 250m memory: 250Mi requests: cpu: 250m memory: 250Mi volumeMounts: - name: paas-apm2 mountPath: /var/init/javaagent terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: Always monitorGroup: default containers: - name: vmall-admin image: swr.cn-north-4.myhuaweicloud.com/vmall-org/vmall-admin:1.0.0 env: - name: PAAS_APP_NAME value: vmall-admin - name: PAAS_NAMESPACE value: default - name: PAAS_PROJECT_ID value: e49731583bc54978aa7b4da1a2196e46 - name: CLOUDDEPLOY_SYS_INCREMENT value: '1719279081896' - name: JAVA_TOOL_OPTIONS value: '-javaagent:/paas-apm2/javaagent/apm-javaagent/apm-javaagent.jar' resources: limits: cpu: '1' memory: 2Gi requests: cpu: 500m memory: 1Gi volumeMounts: - name: vol-171526714525730640 mountPath: /var/logs - name: paas-apm2 mountPath: /paas-apm2/javaagent/ terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: Always restartPolicy: Always terminationGracePeriodSeconds: 30 dnsPolicy: ClusterFirst securityContext: {} imagePullSecrets: - name: default-secret schedulerName: default-scheduler tolerations: - key: node.kubernetes.io/not-ready operator: Exists effect: NoExecute tolerationSeconds: 300 - key: node.kubernetes.io/unreachable operator: Exists effect: NoExecute tolerationSeconds: 300
  • 操作步骤 编辑deployment.yaml。 在volumes中增加一个emptyDir。 volumes: - name: paas-apm2 emptyDir: {} 在containers.volumeMounts中增加moutPath。 volumeMounts: - name: paas-apm2 mountPath: /paas-apm2/javaagent/ 在env中增加JAVA_TOOL_OPTIONS环境变量。 env: - name: JAVA_TOOL_OPTIONS value: '-javaagent:/paas-apm2/javaagent/apm-javaagent/apm-javaagent.jar' 新增initContainers。 initContainers: - name: init-javaagent image: {swrAddress}/op_svc_apm/javaagent:{agentVersion} command: - /bin/sh - '-c' - cd /paas-apm2/javaagent/apm-javaagent; /bin/sh init-config.sh -master_address {masterAddress} -app_name {appName} -access_key {accessKey} -access_value {secretKey} -business {business} -env {env} resources: limits: cpu: 250m memory: 250Mi requests: cpu: 250m memory: 250Mi volumeMounts: - name: paas-apm2 mountPath: /var/init/javaagent terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: Always monitorGroup: default
  • CCE APM SK加密实践 生成一个含有解密方法的jar包,假设jar包名为demo.jar , 内置解密类为com.demo.DecryptDemo,解密方法为decrypt(注意decrypt得是静态方法)。然后将该jar打包一个镜像,上传到镜像仓,获取密钥方法参见访问密钥。 在CCE deployment yaml中添加一个initContainer属性,如下所示。 示例: 步骤1中上传的镜像地址为swr.cn-north-5.myhuaweicloud.com/hwstaff_pub_apmpaasw3/decrypt:v2 解密的类名为com.demo.DecryptDemo,解密方法为decrypt。 按如下方式添加一个initContainer,注意替换加粗部分。 initContainers: - name: init-secret image: swr.cn-north-5.myhuaweicloud.com/hwstaff_pub_apmpaasw3/decrypt:v2 command: - /bin/sh - '-c' - cp /root/com.demo.DecryptDemo.jar /var/init/secret/apm-javaagent/ext; sed -i 's%#decrypt.className=.*%decrypt.className=com.demo.DecryptDemo%g' /var/init/secret/apm-javaagent/apm.config; sed -i 's%#decrypt.methodName=.*%decrypt.methodName=decrypt%g' /var/init/secret/apm-javaagent/apm.config; resources: limits: cpu: 100m memory: 100Mi requests: cpu: 100m memory: 100Mi volumeMounts: - name: paas-apm2 mountPath: /var/init/secret 添加该initContainer可以实现将jar包复制到apm-javaagent/ext目录下,以及修改配置文件的目的。 在apm页面获取AK 和SK,然后对sk进行加密处理,将AK和加密后的SK替换yaml文件中的如下值。 保存配置对CCE实例进行升级即可。
  • APM JAVA探针支持操作系统 表4 APM JAVA探针(2.4.1版本)支持操作系统 探针类型 CPU架构 vCPUs 内存 规格名称 操作系统 系统版本 结果 自研探针 x86计算 2 4 s2.large.2 CentOS CentOS 8.1 64bit for GPU 支持 自研探针 x86计算 2 4 s2.large.2 CentOS CentOS 7.6 64bit for Tenant 20230712 支持 自研探针 x86计算 2 4 s2.large.2 CentOS CentOS 7.3 64bit 支持 自研探针 x86计算 4 16 Sit3.xlarge.4 CentOS CentOS 7.4 64bit 支持 自研探针 x86计算 2 4 s2.large.2 CentOS CentOS 6.8 64bit 支持 自研探针 x86计算 2 4 s2rm.2u.4g Debian Debian 11.1.0 64bit for Tenant 20221227 支持 自研探针 x86计算 2 4 s2.large.2 Ubuntu Ubuntu 22.04 server 64bit for Tenant 20230713 支持 自研探针 x86计算 2 4 s2.large.2 Ubuntu Ubuntu 16.04 server 64bit 支持 自研探针 x86计算 2 4 s2.large.2 Huawei Cloud EulerOS Huawei Cloud EulerOS 2.0 Standard 64 bit for Tenant 20230606 base 2.0.2303.1 支持 自研探针 x86计算 2 4 s2.large.2 Huawei Cloud EulerOS Huawei Cloud EulerOS 1.1 for CentOS 64 bit for op5 Tenant 20230217 base 1.1.2212.1 支持 自研探针 x86计算 2 4 s2.large.2 EulerOS EulerOS 2.9 64bit for Tenant 20230728 base 2.9.15 支持 自研探针 x86计算 2 4 s2.large.2 EulerOS EulerOS 2.5 64bit for Tenant 2023714 base 2.5.15 支持 自研探针 x86计算 2 4 s2.large.2 EulerOS EulerOS 2.2 64bit for Tenant 20210227 支持 自研探针 x86计算 2 4 s2.large.2 Windows Windows Server 2019 标准版 64位简体中文_40GB 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 Huawei Cloud EulerOS Huawei Cloud EulerOS 2.0 Standard 64 bit for ARM for Tenant 20230411 base 2.0.2303.1(40GiB)(bf7488b4-d9b3-4314-b2a9-e39094f573d2) 支持(默认jdk11.0.17) 自研探针 鲲鹏计算 2 4 kc1.large.2 CentOS CentOS 7.6 64bit with ARM 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 CentOS CentOS 7.5 64bit with ARM(40GiB) 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 CentOS CentOS 7.4 64bit with ARM(40GiB) 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 CentOS Kylin Linux Advanced Server (Kunpeng) V10(40GiB) 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 Ubuntu Ubuntu 18.04 64bit with ARM(40GiB) 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 EulerOS EulerOS 2.9 64bit with ARM for Tenant 20230419 base 2.9.14 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 EulerOS EulerOS 2.8 64bit with ARM for Tenant 20210309(40GiB) 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 EulerOS EulerOS 2.10 64bit with ARM for Tenant 20230404 base 2.10.7 支持 自研探针 鲲鹏计算 2 4 kc1.large.2 Fedora Fedora 29 64bit with ARM(40GiB) 支持
  • APM支持的JAVA类型 APM支持JAVA类应用,目前已支持多种主流Java框架、web服务器、通讯协议、数据库等,可实现应用轻松接入。 表1 自研探针JAVA组件和框架 探针类型 组件 JDK 1.8 JDK 17 自研探针 Dubbo 2.6.x 2.6.x 自研探针 Jedis 2.x.x-3.x.x 2.x.x-3.x.x 自研探针 Lettuce 5.x.x 5.x.x 自研探针 servicecomb 2.x.x - 自研探针 log4j 1.x.x 1.x.x 自研探针 log4j2 2.x.x 2.x.x 自研探针 httpclient 4.x.x 4.x.x~5.3.x(5.x.x仅支持同步场景) 自研探针 jdkhttpclient 1.6~1.8 17 自研探针 mariadb 2.x.x 2.x.x 自研探针 mysql 5.x.x~8.x.x 5.x.x~8.x.x 自研探针 okhttpclient 3.x.x 3.x.x 自研探针 tomcat 6.x.x~9.x.x 9.x.x 自研探针 jetty 8.x.x~9.x.x 9.x.x 自研探针 grpc 1.x.x 1.x.x 自研探针 reactor-netty 1.x.x - 自研探针 hbase 2.x.x 2.x.x 自研探针 mongodb 3.x.x~4.x.x 3.x.x~4.x.x 自研探针 redisson 3.12.x~3.26.x 3.13.x~3.26.x 自研探针 c3p0 0.9.x 0.9.x 自研探针 cassandra3 3.x.x 3.x.x 自研探针 clickhouse 0.2.x 0.2.x 自研探针 dbcp 2.x.x 2.x.x 自研探针 druid 1.x.x 1.x.x 自研探针 httpasyncclient 4.x.x 4.x.x 自研探针 jettyclient 9.x.x 9.x.x 自研探针 mariadb3 3.x.x 3.x.x 自研探针 mybatis 3.x.x 3.x.x 自研探针 netty 4.x.x 4.x.x 自研探针 postgresql 42.x.x 42.x.x 自研探针 rabbitmq 5.x.x 5.x.x 自研探针 websocket 9.x.x 9.x.x 自研探针 elasticsearch 7.x.x 7.x.x 自研探针 oracle 10.x.x 10.x.x 自研探针 rocketmq 4.x.x 4.x.x 自研探针 kafka 2.x.x 2.x.x 自研探针 springCloudGateway 2.1.x~3.1.x - 表2 skywalking探针JAVA组件信息 探针类型 组件 版本 skywalking探针 Tomcat 7~10 skywalking探针 Spring Boot Web 4.x skywalking探针 Spring MVC 3.x, 4.x 5.x with servlet 3.x skywalking探针 Spring MVC 6.x skywalking探针 Nutz Web Framework 1.x skywalking探针 Struts2 MVC 2.3.x~2.5.x skywalking探针 Resin 3~4 skywalking探针 Jetty Server 9.x~11.x skywalking探针 Spring WebFlux 5.x skywalking探针 Undertow 1.3.0~2.0.27 skywalking探针 RESTEasy 3.1.0~6.2.4 skywalking探针 Play Framework 2.6.x~2.8.x skywalking探针 Light4J Microservices Framework 1.6.x~2.x skywalking探针 Netty SocketIO 1.x skywalking探针 Micronaut HTTP Server 3.2.x~3.6.x skywalking探针 Jersey REST framework 2.x~3.x skywalking探针 Grizzly 2.3.x~4.x skywalking探针 WebSphere Liberty 23.x skywalking探针 Feign 9.x skywalking探针 Netflix Spring Cloud Feign 1.1.x~2.x skywalking探针 Okhttp 2.x~4.x skywalking探针 Spring RestTemplate 6.x skywalking探针 Jetty Client 9.x~11.x skywalking探针 Apache httpcomponent AsyncClient 4.x skywalking探针 AsyncHttpClient 2.1+ skywalking探针 JRE HttpURLConnection (Optional²) - skywalking探针 Hutool-http client 5.x skywalking探针 Micronaut HTTP Client 3.2.x~3.6.x skywalking探针 Spring Cloud Gateway 2.0.2.RELEASE~3.x skywalking探针 Apache ShenYu 2.4.x skywalking探针 Mysql Driver 5.x, 6.x, 8.x skywalking探针 H2 Driver 1.3.x~1.4.x skywalking探针 ShardingSphere 3.0.0, 4.0.0, 4.0.1, 4.1.0, 4.1.1, 5.0.0 skywalking探针 PostgreSQL Driver 8.x, 9.x, 42.x skywalking探针 Mariadb Driver 2.x, 1.8 skywalking探针 InfluxDB 2.5~2.17 skywalking探针 Mssql-Jtds 1.x skywalking探针 Mssql-jdbc 6.x~8.x skywalking探针 ClickHouse-jdbc 0.3.x skywalking探针 Apache-Kylin-Jdbc 2.6.x~ 4.x skywalking探针 Impala-jdbc 2.6.x skywalking探针 Dubbo 2.5.4~2.7.0 skywalking探针 Dubbox 2.8.4 skywalking探针 Apache Dubbo 2.7.x~3.x skywalking探针 Motan 0.2.x~1.1.0 skywalking探针 gRPC 1.x skywalking探针 Apache ServiceComb Java Chassis 1.x, 2.x skywalking探针 SOFARPC 5.4.0 skywalking探针 Armeria 0.63.0~1.22.0 skywalking探针 Apache Avro 1.7.0~1.8.x skywalking探针 Finagle 6.44.0~20.1.0 skywalking探针 Brpc-Java 2.3.7~3.0.5 skywalking探针 JSONRPC4J 1.2.0~1.6 skywalking探针 Nacos-Client 2.x skywalking探针 RocketMQ 3.x~5.x skywalking探针 RocketMQ-gRPC 5.x skywalking探针 Kafka 0.11.0.0~3.2.3 skywalking探针 Spring Kafka Consumer 1.3.x~2.3.x skywalking探针 ActiveMQ 5.10.0~5.15.4 skywalking探针 RabbitMQ 3.x~5.x skywalking探针 Pulsar 2.2.x~2.9.x skywalking探针 NATS 2.14.x~2.15.x skywalking探针 Aliyun ONS 1.x skywalking探针 aerospike 3.x~6.x skywalking探针 Jedis 2.x~4.x skywalking探针 redisson Easy Java Redis client 3.5.2+ skywalking探针 Lettuce 5.x skywalking探针 MongoDB Java Driver 2.13~2.14, 3.4.0~3.12.7, 4.0.0~4.1.0 skywalking探针 Spymemcached 2.x skywalking探针 Xmemcached 2.x skywalking探针 transport-client 5.2.x~5.6.x,6.2.3~6.8.4,7.0.0-7.5.2 skywalking探针 rest-high-level-client 6.7.1~6.8.4,7.0.0~7.5.2 skywalking探针 SolrJ 7.x skywalking探针 cassandra-java-driver 3.7.0~3.7.2 skywalking探针 hbase-client HTable 1.0.0-2.4.2 skywalking探针 Neo4j-java 4.x skywalking探针 Zookeeper 3.4.x skywalking探针 Spring Bean annotations 3.x~4.x skywalking探针 Spring Core Async SuccessCallback/FailureCallback/ListenableFutureCallback 4.x skywalking探针 Spring Transaction 4.x~5.x skywalking探针 Hystrix 1.4.20~1.5.18 skywalking探针 Sentinel 1.7.0~1.8.1 skywalking探针 Elastic Job 2.x skywalking探针 Apache ShardingSphere-Elasticjob 3.x skywalking探针 Spring @Scheduled 3.1+ skywalking探针 Quartz Scheduler 2.x skywalking探针 XXL Job 2.x skywalking探针 Canal 1.0.25~1.1.2 skywalking探针 GSON 2.8.x skywalking探针 Fastjson 1.2.x skywalking探针 Jackson 2.x skywalking探针 Vert.x Eventbus 3.2~4.x skywalking探针 Vert.x Web 3.x~4.x skywalking探针 Spring 4.x~5.x skywalking探针 Quasar 0.7.x skywalking探针 Ehcache 2.x skywalking探针 GuavaCache 18.~23.x skywalking探针 Coroutine 1.0.1~1.3.x skywalking探针 Graphql 8.0~17.x skywalking探针 Alibaba Druid 1.x skywalking探针 HikariCP 3.x~4.x skywalking探针 log4j 2.x skywalking探针 log4j2 1.2.x skywalking探针 logback 1.2.x skywalking探针 MyBatis 3.4.x~3.5.x skywalking探针 GuavaEventBus 19.x~31.x-jre skywalking探针 Undertow 2.1.x~2.6.x skywalking探针 Grizzly 2.3.x~4.x skywalking探针 Jetty 9.1.x~11.x 表3 opentelemetry探针JAVA组件信息 探针类型 组件 版本 opentelemetry探针 Dubbo 2.7+ opentelemetry探针 Jedis 1.4+ opentelemetry探针 Lettuce 4.0+ opentelemetry探针 log4j 1.2+ opentelemetry探针 log4j2 2.11+ opentelemetry探针 httpclient 2.0+ opentelemetry探针 tomcat 7.0.x, 8.5.x, 9.0.x, 10.0.x opentelemetry探针 jetty 9.4.x, 10.0.x, 11.0.x opentelemetry探针 grpc 1.6+ opentelemetry探针 mongodb 3.1+ opentelemetry探针 redisson 3.0+ opentelemetry探针 c3p0 0.9.2+ opentelemetry探针 cassandra3 3.0+ opentelemetry探针 dbcp 2.0+ opentelemetry探针 httpasyncclient 4.1+ opentelemetry探针 jettyclient 9.2+(not including 10+ yet) opentelemetry探针 netty 3.8+ opentelemetry探针 rabbitmq 2.7+ opentelemetry探针 undertow 1.4+ opentelemetry探针 elasticsearch 5.0+ opentelemetry探针 oracle 11.2+ opentelemetry探针 rocketmq 4.8+ opentelemetry探针 kafka 2.7+
  • 自定义统计采集 自定义统计采集(AppEvent)是自定义统计采集器,获取自定义统计相关信息。包括:类别、指标、指标名称、指标说明、单位、数据类型以及默认聚合方式。 表1 自定义统计采集(AppEvent)指标说明 指标类别 指标 指标名称 指标说明 单位 数据类型 默认聚合方式 自定义统计指标集(Event,自定义统计指标集相关信息。) total 自定义事件总次数 自定义事件总次数 - INT SUM k 自定义事件名 自定义事件名 - STRING LAST v 最后一次事件值 最后一次事件值 - STRING LAST avgV2 内容平均事件值 内容平均事件值 - DOUBLE AVG maxV2 内容最大事件值 内容最大事件值 - DOUBLE MAX minV2 内容最小事件值 内容最小事件值 - DOUBLE MIN 父主题: App
  • 网络请求列表 网络请求列表展示某个应用网络请求的相关信息,指标包括:API、请求方式、请求总数、请求耗时、慢请求次数、慢请求占比、错误次数、错误率以及操作。 图4 网络请求列表 表4 网络请求列表相关参数说明 参数名称 说明 API API信息。 请求方式 API请求方式。 请求总数 API请求总次数。 请求耗时 API请求耗时。 慢请求次数 API慢请求次数。 慢请求占比 调用API慢请求占比=调用API慢请求次数/调用API总次数。 错误次数 调用API错误次数。 错误率 调用API错误率=调用API错误次数/调用API总次数。 单击“API”列的某一行对应的“操作”列的“分析”按钮,展示某条网络请求的详细信息。包括:API失败率趋势图、调用平均耗时趋势图、网络请求列表以及请求状态码分布。 图5 网络请求详细信息 某条网络请求没有正确的Trace ID,因此找不到对应的调用链。此时,网络请求对应的“操作”列的“分析”按钮置灰。 单击“设备型号/ID”列的某一行对应的“操作”列的“查看详情”。展示该跳转至Trace ID对应的调用链详情页,调用链相关内容,请参见查看调用链详情。
  • API失败率趋势图 API失败率趋势图展示调用次数、慢请求占比以及API失败率的趋势图。鼠标停留在某个时间节点处,可以展示调用次数、慢请求占比以及API失败率。 图2 API失败率趋势图 表2 设备总览趋势图相关参数说明 参数名称 说明 调用次数 调用API次数。 慢请求占比 调用API慢请求占比=调用API慢请求次数/调用API总次数。 API失败率 调用API失败率=网络API失败次数/网络调用API总次数。