Introdução
O Sentry é uma solução de código aberto para rastreamento de erros. O Sentry rastreia exceções e outras mensagens úteis de aplicativos que tradicionalmente seriam gravadas em arquivos de log e, em vez disso, utilizam uma interface amigável.
Pré-requisitos
Alguns pré-requisitos básicos necessários para executar o Sentry:
Instalação
Primeiro atualize seu sistema:
sudo apt-get update
Crie o usuário sentinela que estará executando o software:
sudo adduser sentry
sudo adduser sentry sudo
Instalação pythone build-essentialpacotes:
sudo apt-get install -y python build-essential
Crie o arquivo /etc/apt/sources.list.d/pgdg.list:
sudo touch /etc/apt/sources.list.d/pgdg.list
Importe a chave de assinatura e atualize as listas de pacotes:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
Instale o PostgreSQL:
sudo apt-get install postgresql-9.5
Faça o download da fonte mais recente do Redis 4.x:
wget http://download.redis.io/releases/redis-4.0.1.tar.gz
Descompacte o código-fonte do Redis em sua própria pasta, para que possamos cdconstruí-lo na próxima etapa:
tar -xvf redis-4.0.1.tar.gz
Construa a partir da fonte:
cd redis-4.0.1
make
Execute o Redis em segundo plano:
src/redis-server --daemonize yes
Instale pipe bibliotecas relacionadas:
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
Instale o ambiente virtual Python:
sudo pip install -U virtualenv
Instalar postgresql-contrib:
sudo apt-get install postgresql-contrib-9.5
Faça o login como postgresusuário e ative a citextextensão:
sudo su - postgres
$ psql -d template1 -U postgres
psql (9.5.12)
Type "help" for help.
template1=# create extension citext;
CREATE EXTENSION
template1=# \q
Crie o sentrybanco de dados:
$ 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
Entre como sentryusuário e crie um ambiente virtual para o Sentry:
sudo su - sentry
virtualenv ~/sentry_app/
source ~/sentry_app/bin/activate
Instale o Sentry na máquina:
pip install -U sentry
Inicialize o Sentry:
sentry init
Este comando irá criar os arquivos de configuração no diretório ~/.sentry/.
Abra o arquivo de configuração ~/.sentry/sentry.conf.py:
nano ~/.sentry/sentry.conf.py
Em seguida, adicione as credenciais do banco de dados. Deve parecer com o seguinte exemplo:
DATABASES = {
    'default': {
        'ENGINE': 'sentry.db.postgres',
        'NAME': 'sentry_db',
        'USER': 'sentry',
        'PASSWORD': 'securedpassword',
        'HOST': 'localhost',
        'PORT': '5432',
        'AUTOCOMMIT': True,
        'ATOMIC_REQUESTS': False,
    }
}
Inicialize o banco de dados:
sentry upgrade
Executando o Sentry como um serviço
Saia do sentryusuário:
exit
Supervisor de instalação:
sudo apt-get install -y supervisor
Configure o servidor Sentry para inicializar sempre que o servidor inicializar usando supervisord. Coloque a seguinte configuração no arquivo /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
Salve o arquivo e recarregue o Supervisor:
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start all
O Sentry agora está configurado e escuta na porta 9000. Navegue http://you_server_ip:9000no seu navegador favorito para concluir a configuração do Sentry.