最近换了家公司,使用的PHP框架从yii2换成了Laravel,由于新公司是个初创公司,一些基本的运维工具还没有搭建起来,由于以前使用sentry关注线上异常成了习惯,没有了很不习惯,决定自己动手搭建一个:
我是在centos上面搭建的,基本都是centos的命令,其他系统仅作参考或自行百度,sentry搭建服务器的内存要够,不然你执行migration的内存不足,程序崩了一脸懵逼,完全不知道为什么(我在搭建开始的时候是用的阿里的1核1G的,一开始执行migration一直中断,由于不知道什么原因,一直重试安装,装了两天,后来一个朋友看了下觉得大概是内存不足。。。。后来把内存升级到4G就好了,我现在用的是1核2G的服务器,加了4G的SWAP已经是OK的了,http://115.159.59.248:9000(1109563194@qq.com,123456),有兴趣的可以玩一玩)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum -y install docker-ce
systemctl start docker
docker run hello-world
yum install epel-release
yum install -y python-pip
pip install docker-compose
# python2.7 安装这个,否则会报语法错误
pip install docker-compose==1.22.0
yum install git
git clone git@github.com:getsentry/onpremise.git
1、在执行 docker-compose xxxx 的命令的时候记得 systemctl start docker
2、执行 docker-compose run --rm web config generate-secret-key 的命令后生成一个密钥,需要复制到 docker-composer.yml 文件中
3、在23行:SENTRY_SECRET_KEY: ‘’ 这个里面,然后继续其他的命令
4、执行 docker-compose run --rm web upgrade 有几百条 migration,然后会让你填邮箱和密码,这个是初始登录的账号密码,如果没有正常执行完,就是内存不够了(试试加SWAP,或者升级机器)
5、执行 docker-compose up -d 这个命令是启动sentry
mkdir -p data/{sentry,postgres}
docker-compose build
docker-compose run --rm web config generate-secret-key
docker-compose run --rm web upgrade
docker-compose up -d
直接在新建项目的地方选择laravel,按照里面的描述,把代码复制进你的laravel项目里面就可以了
暂时就写了大概这么个方法,把warning记录到sentry上
class LogHelper
{
public static function warning($message, $params = [], $tack = false) {
if (app()->bound('sentry')) {
app('sentry')->captureMessage($message, $params, 'warning', $tack);
}
Log::warning($message);
}
}
主要会调用的两个方法 captureMessage、captureException
captureMessage 上报一个string的字符串
captureException 上报一个异常
具体的在 vendor/sentry/sentry/lib/Raven/Client.php 这个类中查看
https://blog.csdn.net/loongwong2011/article/details/52712671