IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

Sentry: 错误日志集中管理

idv2 2013-03-03 23:33:40 累计浏览 5,408 次
本机暂存

Sentry是个很好用的错误日志服务器,可以将程序错误的详细情况集中捕获,并提供一个很漂亮的Web界面来浏览错误。 Sentry本身是用python写的,但它支持python、php、ruby、iOS等多种语言。

要使用Sentry,你需要一台服务器来运行Sentry服务器,然后需要在代码中插入Sentry客户端的代码。服务器安装方法如下:

$ sudo pip install sentry

目前(2013/1/22)安装过程中可能会发生找不到某些依赖的情况,比如无法安装Django-1.4.3等, 可能需要手工下载Django-1.4.3的代码、编译安装后再重新执行上述命令。

我遇到的另一个问题是,代码使用的是django-1.3,而sentry要求django-1.4,而且我打算在应用服务器上运行sentry, 所以不得不使用virtualenv来安装sentry。

装好之后需要使用以下命令建立配置文件:

$ mkdir ~/.sentry$ sentry init ~/.sentry/sentry.conf.py

然后打开~/.sentry/sentry.conf.py,按照需要修改。我在SENTRY_WEB_OPTIONS中加了一项daemon: True, 使sentry以daemon模式运行。

然后启动sentry服务器即可。

$ sentry start

执行该命令会让你输入管理帐号和密码。

用浏览器访问 http://localhost:9000/,即可看到sentry的Web界面。登录之后建立一个项目,然后即可配置客户端。 对于使用django框架的项目,客户端可以如下配置:

$ sudo pip install raven       # 如果项目和sentry位于不同服务器,可能需要安装raven

打开django的settings.py,加入:

SENTRY_DSN = 'xxxxxxx'         # 在sentry的Web界面中建立项目后即可查看                               # for django的配置文档,从中可以找到`SENTRY_DSN`的值INSTALLED_APPS = {    ....    'raven.contrib.django',    # 加入这一行    ....}

这样django项目中产生的异常就都会集中到sentry服务器上了。

如果不想自己搭建sentry服务器,还可以使用官方提供的服务,价格也不算太高。

同分类推荐文章

  1. 等了十年的 Go 链式管道,终于来了:seq 让你像写 Scala 一样写 Go (2026-06-25 18:38:18)
  2. Go 实验特性详解 (2026-06-21 10:05:27)
  3. amd64 微架构级别对 Go 程序性能提升多少? (2026-06-21 09:38:49)

查看更多 后端 文章 →

建议继续学习

  1. 用Hyer来进行网站的抓取 (累计阅读 158,250)
  2. 配置Nginx+uwsgi更方便地部署python应用 (累计阅读 107,164)
  3. 程序员技术练级攻略 (累计阅读 35,468)
  4. python实现自动登录discuz论坛 (累计阅读 32,833)
  5. python编程细节──遍历dict的两种方法比较 (累计阅读 20,370)
  6. 每个程序员都应该学习使用Python或Ruby (累计阅读 17,917)
  7. Chrome和goagent的配置方法,你懂的 (累计阅读 16,842)
  8. 30分钟3300%性能提升――python+memcached网页优化小记 (累计阅读 13,740)
  9. 使用python爬虫抓站的一些技巧总结:进阶篇 (累计阅读 13,299)
  10. 我的PHP,Python和Ruby之路 (累计阅读 13,146)