应用性能管理 APM
应用性能管理 APM
- 最新动态
- 功能总览
- 产品介绍(2.0)
- 计费说明(2.0)
- 快速入门(2.0)
-
用户指南(2.0)
- 使用导读
- 应用列表
- CMDB管理
-
应用指标监控
- 概述
- 应用监控详情
-
应用监控配置
- 配置详情
- 配置Mysql监控项
- 配置HttpClient监控项
- 配置url监控项
- 配置JavaMethod监控项
- 配置Druid连接池监控项
- 配置ApacheHttpAsyncClient监控项
- 配置Redis监控项
- 配置Jedis监控项
- 配置HBase监控项
- 配置ApacheHttpClient监控项
- 配置Tomcat监控项
- 配置EsRestClient监控项
- 配置Websocket监控项
- 配置KafkaProducer监控项
- 配置Hikari连接池监控项
- 配置异常日志监控项
- 配置线程监控项
- 配置GC监控项
- 配置JVM信息监控项
- 配置JVM监控监控项
- 配置探针监控项
- 配置Springbean监控项
- 监控项视图
- 实例
- 采集状态
- 组件设置
- 调用链
- 应用拓扑
- URL跟踪
- 资源标签管理
- 标签管理
- 告警管理
- 探针管理
- 前端监控
- 链路追踪
- App监控
- 系统管理
- SDK参考
- 权限管理
- 修订记录
- 最佳实践(2.0)
- API参考(2.0)
- 常见问题(2.0)
- 视频帮助(2.0)
- 产品介绍(1.0)
- 快速入门(1.0)
- 用户指南(1.0)
- 最佳实践(1.0)
- API参考(1.0)
- SDK参考(1.0)
- 视频帮助(1.0)
- 文档下载
- 通用参考
链接复制成功!
perf_event_open被限制导致的No access to perf events报错问题
问题现象
CPU Profiler依赖perf_event_open的系统调用,但因为Linux kernel的Syscall安全策略(seccomp)控制,可能会禁止进程调用特定Syscall。
错误提示如下:
[ERROR] xxxx Failed to execute 'start,jfr=7,jstackdepth=100,threads=true,event=cpu,interval=50ms,alloc=512k,wall=50ms,file=xxxx.jfr' [ERROR] xxxx Failed to start Continuous Profile Collector [ERROR] xxxx No access to perf events. Try --fdtransfer or --all-user option or 'sysctl kernel.perf_event_paranoid=1'
解决方案
- Docker环境:执行以下命令运行容器。如需配置更精细化的系统调用控制,请参见官方文档。开启特权容器存在容器逃逸风险,请评估后使用。
docker run --security-opt seccomp=unconfined XXX
- Kubernetes环境:配置特权容器参数privileged: true,特权容器始终保持为Unconfined。如果无法配置特权容器参数privileged: true,可以通过修改k8s的yaml文件中的securityContext配置,使用默认的系统调用控制,请参见官方文档。开启特权容器存在容器逃逸风险,请评估后使用。
apiVersion: v1 kind: Pod metadata: name: default-pod labels: app: default-pod spec: containers: - name: test-container image: hashicorp/http-echo:1.0 args: - "-text=just made some more syscalls!" securityContext: seccompProfile: type: RuntimeDefault capabilities: add: [ "SYS_ADMIN" ] privileged: false
父主题: Profiler性能分析常见问题