Kibana|Kibana 启用 PHP APM
本篇文章主要是解释如何使用ES的APM功能进行获取运行状态。其实官网有安装流程,我仅仅是把我安装的过程记录下。
前言
因为阿里云有ARMS。正好跟网上的朋友沟通的时候知道了APM。突然发现阿里云的AMRS不就是APM么。又因为ARMS只最高支持PHP7.3,所以我特意过来看下ES的APM如何安装,因为它支持PHP8.0。支持的版本也比较新。
首先请按照前面两篇文章进行设置ubuntu 安装 ElasticSearch和ubuntu 安装 kibana。
安装所需的包
这里我们需要的是 apm-server。执行以下命令即可安装:
sudo apt install apm-server
【Kibana|Kibana 启用 PHP APM】最后执行启动命令即可。
管理命令 启动:
sudo systemctl start apm-server
停止:
sudo systemctl stop apm-server
重新启动:
sudo systemctl restart apm-server
设置开机启动:
sudo systemctl enable apm-server
取消开机启动
sudo systemctl disable apm-server
查看运行状态
sudo systemctl status apm-server
PHP Agent 这里需要安装一个扩展。首先的话是需要安装PHP的。这里有一篇安装 PHP8.0 的文章可以用来参考。
如果不是
apt
安装的 PHP,建议采用下面的
手动安装 的办法。
首先从 GitHub 包下载 中下载指定的 deb
包。然后执行命令安装
agent
:sudo dpkg -i .deb
安装成功后可编辑的配置文件地址为:
/etc/php/8.0/fpm/conf.d/99-elastic-apm-custom.ini
。手动安装 可以执行如下步骤进行编译安装。
首先我们需要将源代码存储到一个目录中。比如说
/usr/local/src
。首先就是下载文件并解压:
sudo wget -c https://github.com/elastic/apm-agent-php/archive/refs/tags/v1.3.tar.gz
sudo tar zxf v1.3.tar.gz
然后我们切入要编译的目录并执行编译命令
cd apm-agent-php-1.3/src/ext
sudo phpize
sudo CFLAGS="-std=gnu99" ./configure --enable-elastic_apm
sudo make
sudo make install
完成后在
php.ini
添加以下配置,以便启用 elastic_apm
。extension=elastic_apm.so
elastic_apm.bootstrap_php_part_file=/src/bootstrap_php_part.php
配置
elastic_apm.environment
testing
或者 production
。用来区分环境变量。elastic_apm.hostname
elastic_apm.server_url
http://localhost:8200
,如果 APM 服务器不在本机则需要进行设置。elastic_apm.service_name
api
项目, base
项目等。elastic_apm.service_node_name
php-1
等等。elastic_apm.service_version
commit ID
作为版本号。可以设置为 git rev-parse HEAD
或者使用简写 git log --pretty="%h" -n1 HEAD
。elastic_apm.transaction_sample_rate
1.0
,范围是 0.0
~ 1.0
之间,如果为不收集,则不记录上下文信息,标签或者跨度。最后 这样重启PHP,访问几个链接就可以在 Kibana 中查看到 APM 收集的相关信息了。
推荐阅读
- thinkphp|thinkphp 3.2 如何调用第三方类库
- CGI,FastCGI,PHP-CGI与PHP-FPM
- PHP开发-Mac搭建ThinkPHP5.0
- 依赖注入模块
- thinkphp3.2下实现阿里云视频点播实例(客户端JavaScript上传)
- php异常处理
- mac|mac php5.6+mongdb+Apache环境配置
- PHP简易规则引擎
- PHP|PHP 扩展开发检测清单(扩展开发必读)
- 算法系列教程(PHP演示)