APM(ApplicationPerformance Management)是一种应用性能监控工具,通过汇聚业务系统各处理环节的实时数据,分析业务系统各事务处理的交易路径和处理时间,实现对应用的全链路性能监测。目前主流的APM工具,基本都是参考了Google的Dapper(大规模分布式系统的跟踪系统)体系,通过跟踪业务请求的处理过程,完成对应用系统在前后端处理、服务端调用的性能消耗跟踪,提供可视化的界面来展示对跟踪数据的分析。
APM工具与传统的性能监控工具的区别在于,不仅仅提供一些零散的资源监控点和指标,其主要关注在系统内部执行、系统间调用的性能瓶颈分析,这样更有利于定位到问题的具体原因。
现在主要讲的是 skywalking。它被用于追踪、监控和诊断分布式系统,特别是使用微服务架构,云原生或容积技术。提供以下主要功能:
多语言探针或类库
多种后端存储:ElasticSearch, H2
支持
OpenTracing
轻量级、完善功能的后端聚合和分析
现代化Web UI
日志集成
应用、实例和服务的告警
1. 部署 ElasticSearch.
2. https://www.apache.org/dyn/closer.cgi/skywalking/7.0.0/apache-skywalking-apm-7.0.0.tar.gz
3. tar zxvf https://www.apache.org/dyn/closer.cgi/skywalking/7.0.0/apache-skywalking-apm-7.0.0.tar.gz
4. cd apache-skywalking-apm-bin/bin/
# 启动程序
5. ./start.sh
!!需要安装:protobuf、grpc。
1.pecl install skywalking
2. php.ini添加以下内容:
; Loading extensions in PHP
extension=skywalking.so
; enable skywalking
skywalking.enable = 1
; Set skyWalking collector version (5 or 6 or 7 or 8)
skywalking.version = 8
; Set app code e.g. MyProjectName
skywalking.app_code = MyProjectName
; sock file path default /tmp/sky-agent.sock
; Warning *[systemd] please disable PrivateTmp feature*
; Warning *Make sure PHP has read and write permissions on the socks file*
skywalking.sock_path=/tmp/sky-agent.sock
# 安装agent
3.git clone https://github.com/SkyAPM/SkyAPM-php-sdk
cd SkyAPM-php-sdk
go build -o sky-php-agent cmd/main.go
chmod +x sky-php-agent
cp sky-php-agent /usr/local/bin
4. 启动
/usr/local/bin/sky-php-agent --grpc=127.0.0.1:11800 --sky-version=8 --socket=/tmp/sky-agent.sock
微信扫一扫
关注该公众号