iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python 实时日志平台 Sentry
  • 220
分享到

Python 实时日志平台 Sentry

实时平台日志 2023-01-31 05:01:35 220人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

简介     Sentry 是一个实时的事件日志和聚合平台,基于 Django 构建,其专注于错误监控以及提取一切事后处理所需信息而不依赖于麻烦的用户反馈。。Sentry 可以帮助你将 python 程序的所有 exception 自动记录


简介

     Sentry 是一个实时的事件日志和聚合平台,基于 Django 构建,其专注于错误监控以及提取一切事后处理所需信息而不依赖于麻烦的用户反馈。。

Sentry 可以帮助你将 python 程序的所有 exception 自动记录下来,然后在一个好用的 UI 上呈现和搜索。处理 exception 是每个程序的必要部分,所以 Sentry 也几乎可以说是所有项目的必备组件。


      无论测试如何完善的程序,bug总是免不了会存在的,有些bug不是每次都会出现,测试时运行好好的代码可能在某个用户使用时就歇菜了,可是当程序在用户面前崩溃时,你是看不到错误的,当然你会说:”Hey, 我有记日志呢”。 但是说实话,程序每天每时都在产生大量的日志,而且分布在各个服务器上,并且如果你有多个服务在维护的话,日志的数量之多你是看不过来的吧。等到某天某个用户实在受不了了,打电话来咆哮的时候,你再去找日志你又会发现日志其实没什么用:缺少上下文,不知道用户什么操作导致的异常,异常太多(从不看日志的缘故)不知如何下手 等等。


       Sentry就是来帮我们解决这个问题的,它是一款精致的DjanGo应用,目的在于帮助开发人员从散落在多个不同服务器上毫无头绪的日志文件里发掘活跃的异常,继而找到潜在的臭虫。


       Sentry是一个日志平台, 它分为客户端和服务端,客户端(目前客户端有Python, PHP,C#, Ruby等多种语言)就嵌入在你的应用程序中间,程序出现异常就向服务端发送消息,服务端将消息记录到数据库中并提供一个WEB节目方便查看。Sentry由python编写,源码开放,性能卓越,易于扩展,目前著名的用户有Disqus, Path, mozilla, Pinterest等。

Pip

pip是python的一个很好的包管理软件,类似npm对于nodejs的关系。似乎pip一般不随python自动安装,但是一个叫easy_install的命令一般都是自带的,所以我们可以通过

sudo easy_install pip

来安装,至于为什么不直接用easy_install来安装所有依赖,通俗一点来讲,pip更流行



一、Virtualenv环境

virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境

#pip install virtualenv

 

#virtualenv sentry

New python executable in/opt/sentry/bin/python

Please make sure you remove any previouscustom paths from your /root/.pydistutils.cfg file.

Installing setuptools, pip, wheel...done.

 

#source sentry/bin/activate

就能激活出一个新的环境,在这个新环境下我们在进行后续操作

#deactivate

退出环境

 

二、安装sentry
#pip install sentry==7.4.3

三、错误解决

错误

error: Python.h: No such file or directory

解决

yum install python-devel –y

 

错误

error: libxml/xmlversion.h: No such file ordirectory

error: libxml/xpath.h: No such file ordirectory

解决

yum install libxslt-devel –y

 

错误

error: openssl/opensslv.h: No such file ordirectory

解决

yum install openssl-devel –y

 

错误

Error loading Mysqldb module: No module namedmysqldb

pip install Mysql-python

 

错误

EnvironmentError: mysql_config not found

yum -y install mysql-devel 

 

错误

error: libpq-fe.h: No such file ordirectory

yum install postgresql-devel -y

 

四、        安装mysql

#service postgresql initdb

#/bin/systemctlstart  postgresql.service

# su – postgres

 

五、        安装Redis

yum install redis –y

systemctl start redis.service

 

六、        配置

初始化创建配置文件

# sentry init /sentry/sentry.conf.py

 

vim /sentry/sentry.conf.py

#修改mysql配置

#配置文件中你需要设置几处

#数据库配置,推荐Postgresql,其次是Mysql

#Redis配置

#邮件服务配置

#web服务配置

 
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'sentry',
        #'NAME': os.path.join(CONF_ROOT, 'sentry.db'),
        'USER': 'root',
        'PASSWord': '123456',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}
SENTRY_ADMIN_EMaiL = 'yy520it@163.com'
 
SENTRY_REDIS_OPTIONS = {
    'hosts': {
        0: {
            'host': '127.0.0.1',
            'port': 6379,
        }
    }
}
 
BROKER_URL = 'redis://localhost:6379'
SENTRY_URL_PREFIX = 'Http://10.1.1.1'
SENTRY_WEB_HOST = '0.0.0.0'
SENTRY_WEB_PORT = 9000
SENTRY_WEB_OPTIONS = {
    # 'workers': 3,  # the number of gunicorn workers
    # 'secure_scheme_headers': {'X-FORWARDED-PROTO': 'https'},
}
 
 
EMAIL_HOST = 'smtp.exmail.qq.com'
EMAIL_HOST_PASSWORD = 'w15034619520'
EMAIL_HOST_USER = 'wangyangyang@rqbao.com'
EMAIL_PORT = 25
SERVER_EMAIL = 'smtp.exmail.qq.com'

 

启动成功!

为sentry项目初始化数据

# sentry --config=/sentry/sentry.conf.py upgrade

创建新用户

# sentry --config=/sentry/sentry.conf.py createuser

然后就可以启动服务了

#sentry--config=/sentry/sentry.conf.py start

另外,还需要启动Worker

# sentry --config=/sentry/sentry.conf.py celery worker -B

 wKioL1eybz_AmlW5AADBjCUCoaY802.png-wh_50


 

浏览器访问:http://IP:9000


 wKiom1eyb0mgWaNkAABpQ59bldw168.png-wh_50


http://IP:9000/admin/

 wKiom1eyb1Ph4VkIAAAYHLRsFkw091.png-wh_50

 

复制api key链接


 wKioL1eyb26iln54AAC3Im-sYno915.png-wh_50


配置log4j(我配置的是log4j.properties)

#SentryAppender

log4j.rootLogger=WARN, Console, RollingFile,SentryAppender

log4j.appender.SentryAppender=net.kencochrane.raven.log4j.SentryAppender

log4j.appender.SentryAppender.dsn=http://9189bf0a8b064d6680eecec9f41538c0:634e759226b84ae5b745d5d9fefe55c9@10.1.0.1:9000/3

 

 

 

测试:

/root/sentry/bin/raven --help

wKiom1eyb3_w-5gwAAB3V-iEdIs317.png-wh_50

 

展示

wKioL1eyb5GzN7QlAADDVOdW3z8429.png-wh_50

wKiom1eyb5HScaggAAE0BvAQi4w002.png-wh_50



wKiom1eycBqRlmTcAAFKlhD51SU142.png-wh_50


--结束END--

本文标题: Python 实时日志平台 Sentry

本文链接: https://www.lsjlt.com/news/189258.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python 实时日志平台 Sentry
    简介     Sentry 是一个实时的事件日志和聚合平台,基于 Django 构建,其专注于错误监控以及提取一切事后处理所需信息而不依赖于麻烦的用户反馈。。Sentry 可以帮助你将 Python 程序的所有 exception 自动记录...
    99+
    2023-01-31
    实时 平台 日志
  • Python怎么实现日志实时监测
    这篇文章主要讲解了“Python怎么实现日志实时监测”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python怎么实现日志实时监测”吧!介绍观察者模式:是一种行为型设计模式。主要关注的是对象...
    99+
    2023-06-29
  • Python如何实现实时监控Linux日志?
    随着互联网和数据的快速发展,日志数据越来越重要。日志数据不仅可以用于问题排查和系统优化,还可以用于业务分析和安全检测等方面。在Linux系统中,日志数据是非常重要的,因为它可以记录系统的运行状况、应用程序的运行状态以及用户的操作行为等等。...
    99+
    2023-08-28
    实时 日志 linux
  • 【赵强老师】Kubernetes平台中日志收集方案
    一、K8s整体日志收集方案整体的日志收集方案,如下图所示:Filebeat是本地文件的日志数据采集器,可监控日志目录或特定日志文件(tail file),并将它们转发给Elasticsearch或Logstatsh进行索引、kafka等。带...
    99+
    2023-06-04
  • 如何使用 Python 处理实时 Apache 日志?
    随着互联网的发展,网络日志越来越成为了人们了解网站使用情况的重要途径。而 Apache 是使用最广泛的 Web 服务器之一,其日志记录功能也非常强大。本文将介绍如何使用 Python 处理实时 Apache 日志,以便更好地了解网站的使用情...
    99+
    2023-08-25
    实时 apache bash
  • 如何使用Python实时监控Linux日志?
    当我们在管理Linux系统时,日志文件是一个非常重要的工具。它们可以帮助我们了解系统的运行状况,检测错误和问题,并提供有用的信息来改进和优化系统。但是,手动监控日志文件是一项耗时的任务,并且可能错过重要信息。在本文中,我们将介绍如何使用Py...
    99+
    2023-08-28
    实时 日志 linux
  • Python实现日志实时监测的示例详解
    目录介绍观察者模式类图观察者模式示例1、创建订阅者类2、创建发布者类3、应用客户端-Map_server_client.py4、测试介绍 观察者模式:是一种行为型设计模式。主要关注的...
    99+
    2024-04-02
  • Shell实现根据web日志计算平均连接时间功能
    这篇文章主要讲解了“Shell实现根据web日志计算平均连接时间功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Shell实现根据web日志计算平均连接时间功能”吧!今天在网上看到一个求w...
    99+
    2023-06-09
  • 【Python】Python日志无延迟实
    我在用python生成日志时,发现无论怎么flush(),文件内容总是不能实时写入,导致程序意外中断时一无所获。 以下是查到的解决方案(亲测可行): open 函数中有一个bufferin的参数,默认是-1,如果设置为0是,就是无缓冲模...
    99+
    2023-01-31
    日志 Python
  • Lepus慢日志平台搭建与维护的方法是什么
    本篇内容介绍了“Lepus慢日志平台搭建与维护的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一...
    99+
    2024-04-02
  • 实时调试神器!Windows 平台 Python Leetcode 刷题必备!
    作为一名 Python 程序员,Leetcode 刷题是我们日常的必修课。而在刷题过程中,我们经常需要进行调试和测试,这时候一个实时调试神器就显得尤为重要了。本文将介绍一款 Windows 平台 Python 实时调试神器——Pdb++。 ...
    99+
    2023-09-24
    leetcode 实时 windows
  • ASP如何响应实时日志?
    随着互联网的快速发展和技术的不断进步,日志文件对于网站运营和维护变得越来越重要。ASP是一种非常流行的动态网站开发技术,而实时日志是一种非常有用的工具,可以帮助网站管理员更好地了解网站的运行情况,及时发现问题并进行处理。本文将介绍如何使用...
    99+
    2023-07-21
    响应 实时 日志
  • docker如何查看实时日志
    要查看Docker容器的实时日志,可以使用以下命令: docker logs -f [container_id] 其中,-f 参数...
    99+
    2024-04-03
    docker
  • 如何使用 Python 和 Bash 实时分析 Apache 日志?
    Apache 是使用最广泛的 Web 服务器软件之一,它的日志文件记录了每个请求的详细信息,包括请求的时间、请求的 URL、请求的状态码、请求的来源等等。这些信息可以帮助我们分析网站的流量、用户行为以及网站的性能等等。但是,日志文件往往非...
    99+
    2023-08-25
    实时 apache bash
  • 实时监控 Apache 日志,Python 是最佳选择吗?
    如果你是一名系统管理员或者开发人员,你可能需要监控 Apache Web 服务器的日志文件。Apache 日志文件可以提供有关网站访问情况的详细信息,例如访问者的 IP 地址、访问时间、请求的页面和响应代码。这些信息对于优化网站性能和安全...
    99+
    2023-08-25
    实时 apache bash
  • Linux平台下使用Java对象和日志记录的最佳实践是什么?
    在Linux平台下,Java应用程序开发已经成为了一种非常流行的方式。Java作为一种跨平台的编程语言,可以在不同操作系统中运行。在开发Java应用程序时,使用Java对象和日志记录是非常常见的操作。然而,如何在Linux平台下使用Java...
    99+
    2023-08-25
    linux 对象 日志
  • python和websocket构建实时日志跟踪器的步骤
    目录前言什么是 websocketwebsocket 通信原理和机制websocket 的特点构建实时日志跟踪的小例子前言 websocket 是一种网络传输协议。可在单个 TCP...
    99+
    2024-04-02
  • Python 和 Bash:哪个更适合实时处理 Apache 日志?
    Apache 日志是 Web 服务器生成的最重要的数据之一,记录着有关每个请求的详细信息,例如请求的时间、IP 地址、请求的 URL、响应代码和响应大小。实时处理 Apache 日志可以帮助您分析和监控 Web 服务器的活动,从而帮助您优...
    99+
    2023-08-25
    实时 apache bash
  • Bash 能够与 Python 一起实时处理 Apache 日志吗?
    Apache 是一个流行的 Web 服务器,而 Apache 日志则是记录访问网站时的信息,例如访问时间、请求的 URL、用户 IP 地址等。对于网站管理员来说,分析 Apache 日志非常重要,以便了解网站的访问情况、用户行为和性能瓶颈...
    99+
    2023-08-25
    实时 apache bash
  • centos7下如何查看实时日志
    centos7中查看实时日志的方法:1、打开centos7终端;2、在centos7终端命令行中输入“dmesg -wH”命令实时查看后台日志即可。具体操作步骤:在centos7系统桌面中使用快捷键【Ctrl+Alt+T】打开centos7...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作