在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的设置。



Leave a Comment

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 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。