บทนำ
Sentry เป็นโซลูชั่นโอเพ่นซอร์สสำหรับการติดตามข้อผิดพลาด Sentry ติดตามข้อยกเว้นและข้อความที่เป็นประโยชน์อื่น ๆ จากแอปพลิเคชันที่จะเขียนลงในไฟล์บันทึกและใช้อินเทอร์เฟซที่ใช้งานง่ายแทน
ข้อกำหนดเบื้องต้น
สิ่งที่จำเป็นต้องมีพื้นฐานบางอย่างที่คุณต้องการเพื่อเรียกใช้ Sentry:
การติดตั้ง
อัปเดตระบบของคุณก่อน:
sudo apt-get update
สร้างผู้ใช้ยามที่จะใช้งานซอฟต์แวร์:
sudo adduser sentry
sudo adduser sentry sudo
ติดตั้งpython
และbuild-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:
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 เป็นบริการ
ออกจากระบบของsentry
ผู้ใช้:
exit
ติดตั้ง Supervisor:
sudo apt-get install -y supervisor
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
บันทึกไฟล์และรีโหลดหัวหน้างาน:
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start all
9000
ยามมีการกำหนดค่าในขณะนี้และฟังบนพอร์ต นำทางไปยังhttp://you_server_ip:9000
เบราว์เซอร์ที่คุณชื่นชอบเพื่อสิ้นสุดการตั้งค่า Sentry