python方式部署sentry

python方式部署sentry

1.sentry介绍

Sentry是一个开源的实时错误收集报告工具,支持web前后端、移动应用以及游戏等,支持Python、JavaScript、Java、Go、Nodejs、Django、PHP等主流编程语言和框架平台,还提供了对GitHub、Gitlab等常见开发工具的集成及Mail邮件通知(收集到的错误告警),除此之外我们还可以自主开发插件以满足项目需求。

2.部署方式

  • 部署方式分俩种:docker方式和python方式。
  • docker方式部署操作比较简单,也是【Sentry官方】比较推崇的方式,直接按【Sentry On-Premise】提供的方式按部就班部署就好了。或者可直接参考【Docker部署Sentry监控Django应用并使用email+钉钉通知】即可。
  • 插入一句题外话,最初我也是使用docker方式部署在机器上的也成功部署和配置好了,当时考虑到使用docker部署的不可控风险等系列问题,加之项目工作需要转而改用python虚拟环境部署。
  • python方式部署相对比较麻烦但还是比较稳妥,可参考:【sentry官方提供的python安装方式】。下面我就以我后来使用的python方式部署sentry的过程做个详细介绍供他人借鉴。

3.python方式部署sentry具体过程

1.本文使用python虚拟环境的说明:如果我们要同时开发多个应用程序,每个应用可能需要各自拥有一套“独立”的python运行环境,我们可以使用virtualenv来解决这个问题,它可以为一个应用创建一套“隔离”的python运行环境以免相互影响干扰。
2.本文介绍具体过程的前提:
  • 涉及的环境工具:

  • Linux服务器(虚拟机安装一个即可。例如本人使用服务器:10.80.80.238)

  • python虚拟环境

  • Postgresql或者MySQL(本文使用MySQL)

  • Redis

  • 邮箱账号密码(用于配置邮件通知,如果需要配置邮件通知的话,就需要,否则不需要。本文是会进行配置的。)

  • 钉钉群机器人的webhook(用于配置钉钉通知)。具体如何获取配置钉钉群机器人的webhook:参考【获取自定义机器人webhook】

  • 说明:需保持本地网络通畅连接Internet。

3.具体安装配置步骤:
  • 1)安装常用开发工具:

    $yum -y groupinstall "Development Tools"    
    
  • 2)安装redis,可参考:【Redis的安装和部署】【在CentOS 7下安装Redis】。或者参考以下:

    $yum -y install tcl    
    $wget http://download.redis.io/releases/redis-3.2.5.tar.gz    
    $tar -zxvf redis-3.2.5.tar.gz  
    $cd redis-3.2.5/src/  
    $make test  
    $ls  /usr/local/bin/	##结果:redis-benchmark  redis-check-aof    redis-check-rdb  redis-cli  redis-sentinel  redis-server    
    $vim /etc/profile  
    	添加内容:  
    		##HISTSIZE
    		HISTSIZE=100000 #修改默认保存1000条history历史命令为100000条。
    		##redis
    		export PATH=$PATH:/usr/local/bin  
    $source /etc/profile
    $redis-server & #后台运行redis服务
    
  • 3)安装一套python虚拟环境:

    $pip install -U virtualenv #安装一套python虚拟环境
    $pip install virtualenvwrapper	#方便后续用来建立一个虚拟环境安装的存储目录
    $mkdir -p /www #/www:虚拟环境存储目录
    $vim /etc/profile
    	添加内容:
    		##配置python虚拟环境存储目录等
    		#if [ `id -u` != '0' ]; then
    		#若id -u为0表示是root用户
    		        export VIRTUALENV_USE_DISTRIBUTE=1            # <-- Always use pip/distribute
    		        export WORKON_HOME=/www               # <-- Where all virtualenvs will be stored
    		        source /usr/bin/virtualenvwrapper.sh
    		        export PIP_VIRTUALENV_BASE=$WORKON_HOME
    		        export PIP_RESPECT_VIRTUALENV=true
    		#fi
    $source /etc/profile
    $#vim /usr/bin/virtualenvwrapper.sh查看发现:(1)mkvirtualenv envDirName 创建虚拟环境(虚拟环境目录为envDirName)(1)workon 列举虚拟环境(2)workon envDirName 激活envDirName虚拟环境  
    $#/usr/bin/virtualenvwrapper.sh具体内容可参考:https://bitbucket.org/dhellmann/virtualenvwrapper/src/67108f0e2abdda349cb22997612b3e22a9178ab3/virtualenvwrapper.sh?at=master&fileviewer=file-view-default
    $#事实上virtualenvwrapper是对virtualenv的一次封装
    $virtualenv /www/sentry/  #/www/sentry:python虚拟环境工作空间(用于安装sentry),即创建sentry虚拟环境
    $source /www/sentry/bin/activate #激活进入sentry虚拟环境  
    $deactivate	#退出当前运行的虚拟环境。
    $workon #列举所有虚拟环境
    $workon sentry	#激活进入sentry虚拟环境,相当于source /www/sentry/bin/activate
    $deactivate	#退出当前运行的虚拟环境。
    
  • 4)安装sentry:

    $workon sentry #安装sentry前,得进入sentry虚拟环境
    $yum -y install python-devel
    $pip install -U sentry	#sentry源码位于:/www/sentry/lib/python2.7/site-packages/sentry/
    $#sentry官方源码位于:ht
  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值