在Ubuntu 16.04上通过Python设置Sentry

介绍

Sentry是用于错误跟踪的开源解决方案。Sentry跟踪来自应用程序的异常和其他有用消息,这些消息和消息通常会写入日志文件,而是使用用户友好的界面。

先决条件

运行Sentry所需的一些基本先决条件:

安装

首先更新您的系统:

sudo apt-get update

创建将运行软件的哨兵用户:

sudo adduser sentry
sudo adduser sentry sudo

安装pythonbuild-essential打包:

sudo apt-get install -y python build-essential

创建文件/etc/apt/sources.list.d/pgdg.list

sudo touch /etc/apt/sources.list.d/pgdg.list

导入签名密钥并更新软件包列表:

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update

安装PostgreSQL:

sudo apt-get install postgresql-9.5

下载最新的Redis 4.x来源:

wget http://download.redis.io/releases/redis-4.0.1.tar.gz

将Redis源文件解压缩到其自己的文件夹中,以便我们可以cd在下一步中进行构建:

tar -xvf redis-4.0.1.tar.gz

从源代码构建:

cd redis-4.0.1
make

在后台运行Redis:

src/redis-server --daemonize yes

安装pip和相关库:

cd ~
sudo apt-get install python-setuptools python-dev libxslt1-dev gcc libffi-dev libjpeg-dev libxml2-dev libxslt-dev libyaml-dev libpq-dev python-pip

安装Python虚拟环境:

sudo pip install -U virtualenv

安装postgresql-contrib

sudo apt-get install postgresql-contrib-9.5

postgres用户身份登录并启用citext扩展名:

sudo su - postgres
$ psql -d template1 -U postgres
psql (9.5.12)
Type "help" for help.
template1=# create extension citext;
CREATE EXTENSION
template1=# \q

创建sentry数据库:

$ createdb sentry_db
$ createuser sentry --pwprompt
$ psql -d template1 -U postgres

template1=# GRANT ALL PRIVILEGES ON DATABASE sentry_db to sentry;
GRANT
template1=# ALTER USER sentry WITH SUPERUSER;
ALTER ROLE
template1=# \q
exit

sentry用户身份登录并为Sentry创建虚拟环境:

sudo su - sentry
virtualenv ~/sentry_app/
source ~/sentry_app/bin/activate

在计算机上安装Sentry:

pip install -U sentry

初始化哨兵:

sentry init

此命令将在目录中创建配置文件~/.sentry/

打开配置文件~/.sentry/sentry.conf.py

nano ~/.sentry/sentry.conf.py

然后添加数据库凭据。它应类似于以下示例:

DATABASES = {
    'default': {
        'ENGINE': 'sentry.db.postgres',
        'NAME': 'sentry_db',
        'USER': 'sentry',
        'PASSWORD': 'securedpassword',
        'HOST': 'localhost',
        'PORT': '5432',
        'AUTOCOMMIT': True,
        'ATOMIC_REQUESTS': False,
    }
}

初始化数据库:

sentry upgrade

将哨兵作为服务运行

注销sentry用户:

exit

安装主管:

sudo apt-get install -y supervisor

将Sentry服务器配置为使用引导时启动supervisord。将以下配置放入文件中/etc/supervisor/conf.d/sentry.conf

[program:sentry-web]
directory=/home/sentry/sentry_app/
environment=SENTRY_CONF="/home/sentry/.sentry"
command=/home/sentry/sentry_app/bin/sentry run web
autostart=true
autorestart=true
redirect_stderr=true
user=sentry
stdout_logfile=syslog
stderr_logfile=syslog

[program:sentry-worker]
directory=/home/sentry/sentry_app/
environment=SENTRY_CONF="/home/sentry/.sentry"
command=/home/sentry/sentry_app/bin/sentry run worker
autostart=true
autorestart=true
redirect_stderr=true
user=sentry
stdout_logfile=syslog
stderr_logfile=syslog

[program:sentry-cron]
directory=/home/sentry/sentry_app/
environment=SENTRY_CONF="/home/sentry/.sentry"
command=/home/sentry/sentry_app/bin/sentry run cron
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=syslog
stderr_logfile=syslog

保存文件并重新加载Supervisor:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start all

Sentry现在已配置并在port上侦听9000http://you_server_ip:9000在您喜欢的浏览器中导航到以完成Sentry的设置。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息