{"id":80621,"date":"2020-05-07T13:42:58","date_gmt":"2020-05-07T11:42:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka"},"modified":"2021-02-15T18:59:29","modified_gmt":"2021-02-15T16:59:29","slug":"sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka","title":{"rendered":"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h3 id=\"opisanie\">Kirjeldus<\/h3>\n<p><strong>Sentry<\/strong> \u2014 teie rakenduste vigade j\u00e4lgimise t\u00f6\u00f6riist,<\/p>\n<p><strong>P\u00f5hifunktsioonid:<\/strong><\/p>\n<ul>\n<li>lihtsalt integreeritav projekti,<\/li>\n<li>p\u00fc\u00fcdma vigu nii kasutaja brauseris kui ka teie serveris.<\/li>\n<li>Tasuta,<\/li>\n<li>Vigade loend uuendatakse reaalajas,<\/li>\n<li>Kui viga on m\u00e4rgitud lahendatuks ja see ilmub uuesti, siis luuakse see uuesti ja arvestatakse eraldi voos,<\/li>\n<li>Vead r\u00fchmitatakse ja kuvatakse esinemissageduse j\u00e4rjekorras,<\/li>\n<li>Vigu saab filtreerida staatuste, logimise allika, logimise taseme, serveri nime jms j\u00e4rgi.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/li>\n<\/ul>\n<p>V\u00f5rdlus ELK logidega: <strong>k\u00f5ige t\u00e4htsam on, et ELK-is on iga uus samat\u00fc\u00fcpi logi eraldi kirje. Sentrys on iga uus samat\u00fc\u00fcpi viga lihtsalt +1 selle kirje loendisse<\/strong><\/p>\n<p>Sentry toetab enamikku programmeerimiskeeli. Lisainfot <noindex><a rel=\"nofollow\" href=\"https:\/\/sentry.io\/platforms\/\">siin<\/a><\/noindex>.<\/p>\n<h3 id=\"zapusk-sentry-s-pomoschyu-docker-i-docker-compose\">Sentry k\u00e4ivitamine docker ja docker-compose abil<\/h3>\n<p>Saate Sentryt k\u00e4ivitada docker ja docker-compose abil nagu siin on kirjeldatud: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/getsentry\/onpremise\">https:\/\/github.com\/getsentry\/onpremise<\/a><\/noindex>. Kuid skript k\u00e4ivitab sellel samal serveril \u00fcheaegselt (ilma t\u00f5rke taastamiseta) lisateenuseid (Sentry versiooni 10.0.0 jaoks):<\/p>\n<ul>\n<li>data<\/li>\n<li>postgres<\/li>\n<li>redis<\/li>\n<li>zookeeper<\/li>\n<li>kafka<\/li>\n<li>clickhouse<\/li>\n<li>symbolicator<\/li>\n<\/ul>\n<p>Kui vajate t\u00f5rke taastamise funktsionaalsust, peate kas kasutama pilvepaketti v\u00f5i installima Sentry ilma selle skriptita.<\/p>\n<p>Selles postituses on kirjeldatud Sentry ja selle s\u00f5ltuvuste koostamise protsessi rpm formaadis. Kui peate installima Sentryt kohas, kus ei ole internetti, saate genereerida yum reposti koostatud rpm-dest.<\/p>\n<h3 id=\"vazhnoe-utochenie-po-sborke-i-ustanovke-paketov\">Oluline selgitus pakettide koostamise ja installimise kohta<\/h3>\n<p>M\u00f5ned paketid s\u00f5ltuvad teineteisest. Seet\u00f5ttu on koostamis- ja installimisprotsess jaotatud mitmeks etapiks.<\/p>\n<h4 id=\"todo\">TODO:<\/h4>\n<p>Selles postituses k\u00e4sitletakse Sentry versiooni 9.1.2 koostamist ja installimist. P\u00e4rast seda, kui arendajad v\u00e4lja annavad paar v\u00e4ikest versiooni, saab hakata koostama Sentry versiooni 10.X.Y. Paljud viimased commitid master'is on fix (parandused).<\/p>\n<h3 id=\"trebovaniya-k-serveru-dlya-sborki-rpm\">Serveri n\u00f5uded rpm koostamiseks<\/h3>\n<p>Mida rohkem on CPU-d, seda kiiremini toimub semaphore ja symbolic pakettide koostamine<\/p>\n<h3 id=\"vyklyuchaem-selinux\">K\u00e4ivitage Selinux<\/h3>\n<p>\u00dchenduse liikmed toetavad, kui keegi kirjutab Sentryle selinux poliitikad.<\/p>\n<pre><code class=\"plaintext\">sudo sed -i s\/^SELINUX=.*$\/SELINUX=disabled\/ \/etc\/selinux\/config\nsudo reboot<\/code><\/pre>\n<h3 id=\"podklyuchaem-repozitoriy-epel-release\">\u00dchendame epel-release reposti<\/h3>\n<pre><code class=\"plaintext\">sudo yum install -y epel-release git<\/code><\/pre>\n<h3 id=\"sobiraem-v-rpm-pip-zavisimosti-i-ustanavlivaem-ih-fayl-1general_dependenciessh\">Koostame rpm-pip s\u00f5ltuvused ja installime need. Fail 1general_dependencies.sh<\/h3>\n<pre><code class=\"plaintext\">echo \"Paigaldame s\u00f5ltuvused\"\nsudo yum install -y cargo gcc gcc-c++ libffi-devel libjpeg-devel libxml2-devel \nlibxslt libxslt-devel make mc openssl-devel python-devel memcached \npython-lxml python-nose python2-pip python34 rpm-build rpmdevtools \nruby-devel rubygems zlib-devel redis xmlsec1-openssl xmlsec1 \nlibtool-ltdl-devel xmlsec1-devel xmlsec1-openssl-devel openldap-devel\n\necho \"Kogume \u00fchised pip s\u00f5ltuvused rpm fpm kaudu\"\ngem install --no-document fpm\necho \"chardet==3.0.2 jaoks on vajalik setuptools&gt;=12\"\necho \"cryptography==2.8 jaoks on vajalik setuptools&gt;=18.5\"\nfpm -s python -t rpm setuptools==18.5\nsudo yum install -y python-setuptools-18.5-1.noarch.rpm\nfpm -s python -t rpm --name python2-pip pip==20.0.2\nsudo yum install -y python2-pip-20.0.2-1.noarch.rpm<\/code><\/pre>\n<h3 id=\"ustanavlivaem-i-zapuskaem-postgresql-96-dlya-sborki-python-psycopg2-binary-fayl-2psycopg2-binarysh\">Paigaldame ja k\u00e4ivitame PostgreSQL 9.6, et koguda python-psycopg2-binary. Fail 2psycopg2-binary.sh<\/h3>\n<p>PostgreSQL versiooni saate skriptis muuta.<\/p>\n<pre><code class=\"plaintext\">sudo yum install -y postgresql-devel\nfpm -s python -t rpm psycopg2-binary==2.7.7\nsudo yum install -y python-psycopg2-binary-2.7.7-1.x86_64.rpm\nsudo yum remove -y postgresql-devel postgresql postgresql-libs<\/code><\/pre>\n<h3 id=\"sobiraem-i-ustanavlivaem-python-dateutil-rpm-fayl-3dateutilsh\">Kogume ja installime python-dateutil rpm. Fail 3dateutil.sh<\/h3>\n<pre><code class=\"plaintext\">#!\/bin\/bash\n\necho \"Build and install python-dateutil rpm\"\nmkdir -p ~\/rpmbuild\/{BUILD,RPMS,SOURCES,SRPMS,SPECS}\nspectool -g -R spec\/python-dateutil.spec\nwget https:\/\/raw.githubusercontent.com\/patsevanton\/sentry-rpm\/master\/spec\/python-dateutil-system-zoneinfo.patch -P ~\/rpmbuild\/SOURCES\nwget https:\/\/raw.githubusercontent.com\/patsevanton\/sentry-rpm\/master\/spec\/python-dateutil-timelex-string.patch -P ~\/rpmbuild\/SOURCES\nrpmbuild --bb spec\/python-dateutil.spec\nsudo yum install -y ~\/rpmbuild\/RPMS\/noarch\/python-dateutil-2.4.2-1.el7.noarch.rpm<\/code><\/pre>\n<h3 id=\"sobiraem-i-ustanavlivaem-python-urllib3-rpm-fayl-4urllib3sh\">Kogume ja installime python-urllib3 rpm. Fail 4urllib3.sh<\/h3>\n<p><b class=\"spoiler_title\">Spoileri pealkiri<\/b><\/p>\n<pre><code class=\"plaintext\">echo \"Kogume pip s\u00f5ltuvused rpm fpm kaudu urllib3 jaoks\"\nfpm -s python -t rpm pycparser==2.19\nsudo yum install -y python-pycparser-2.19-1.noarch.rpm\nfpm -s python -t rpm cffi==1.14.0\nsudo yum install -y python-cffi-1.14.0-1.x86_64.rpm\nfpm -s python -t rpm cryptography==2.8\nsudo yum install -y python-cryptography-2.8-1.x86_64.rpm\nfpm -s python -t rpm idna==2.7\nsudo yum install -y python-idna-2.7-1.noarch.rpm\nsudo chmod +r \\\/usr\\lib\\\/python2.7\\\/site-packages\\\/idna-2.7-py2.7.egg-info\\\/PKG-INFO\nfpm -s python -t rpm pyOpenSSL==19.1.0\nsudo yum install -y python-pyopenssl-19.1.0-1.noarch.rpm\nfpm -s python -t rpm pbr==5.4.4\nsudo yum install -y python-pbr-5.4.4-1.noarch.rpm\nfpm -s python -t rpm mock==2.0.0\nsudo yum install -y python-mock-2.0.0-1.noarch.rpm\nfpm -s python -t rpm py==1.8.1\nsudo yum install -y python-py-1.8.1-1.noarch.rpm\nfpm -s python -t rpm six==1.10.0\nsudo yum install -y python-six-1.10.0-1.noarch.rpm\nfpm -s python -t rpm pluggy==0.6.0\nsudo yum install -y python-pluggy-0.6.0-1.noarch.rpm\nfpm -s python -t rpm attrs==19.3.0\nsudo yum install -y python-attrs-19.3.0-1.noarch.rpm\nfpm -s python -t rpm more-itertools==5.0.0\nsudo yum install -y python-more-itertools-5.0.0-1.noarch.rpm\nfpm -s python -t rpm pytest==3.5.1\nsudo yum install -y python-pytest-3.5.1-1.noarch.rpm\n\necho \"Kogume urllib rpm\"\nspectool -g -R spec\\\/urllib3-1.24.2.spec\nsudo yum-builddep -y spec\\\/urllib3-1.24.2.spec\nrpmbuild --bb spec\\\/urllib3-1.24.2.spec\nsudo yum install -y \\\/rpmbuild\\\/RPMS\\\/noarch\\\/python-urllib3-1.24.2-1.el7.noarch.rpm<\/code><\/pre>\n<h3 id=\"sobiraem-v-rpm-ostalnye-pip-zavisimosti-i-ustanavlivaem-ih-fayl-5other_dependenciessh\">Kogume rpm muud pip s\u00f5ltuvused ja installime need. Fail 5other_dependencies.sh<\/h3>\n<p><b class=\"spoiler_title\">Spoileri pealkiri<\/b><\/p>\n<pre><code class=\"plaintext\">echo \"K\u00e4ivita rpm fpm abil\"\nfpm -s python -t rpm jmespath==0.9.5\nsudo yum install -y python-jmespath-0.9.5-1.noarch.rpm\nfpm -s python -t rpm amqp==1.4.9\nsudo yum install -y python-amqp-1.4.9-1.noarch.rpm\nfpm -s python -t rpm anyjson==0.3.3\nsudo yum install -y python-anyjson-0.3.3-1.noarch.rpm\nfpm -s python -t rpm billiard==3.3.0.23\nsudo yum install -y python-billiard-3.3.0.23-1.x86_64.rpm\nfpm -s python -t rpm docutils==0.16\nsudo yum install -y python-docutils-0.16-1.noarch.rpm\nfpm -s python -t rpm Pillow==4.2.1\nsudo yum install -y python-pillow-4.2.1-1.x86_64.rpm\nfpm -s python -t rpm botocore==1.5.70\nsudo yum install -y python-botocore-1.5.70-1.noarch.rpm\nfpm -s python -t rpm boto3==1.4.5\nsudo yum install -y python-boto3-1.4.5-1.noarch.rpm\nfpm -s python -t rpm chardet==3.0.2\nsudo yum install -y python-chardet-3.0.2-1.noarch.rpm\nfpm -s python -t rpm croniter==0.3.31\nsudo yum install -y python-croniter-0.3.31-1.noarch.rpm\nfpm -s python -t rpm cssselect==1.1.0\nsudo yum install -y python-cssselect-1.1.0-1.noarch.rpm\nfpm -s python -t rpm cssutils==0.9.10\nsudo yum install -y python-cssutils-0.9.10-1.noarch.rpm\nfpm -s python -t rpm django-crispy-forms==1.4.0\nsudo yum install -y python-django-crispy-forms-1.4.0-1.noarch.rpm\nfpm -s python -t rpm django-jsonfield==0.9.13\nsudo yum install -y python-django-jsonfield-0.9.13-1.noarch.rpm\nfpm -s python -t rpm django-picklefield==0.3.2\nsudo yum install -y python-django-picklefield-0.3.2-1.noarch.rpm\nfpm -s python -t rpm django-sudo==2.1.0\nsudo yum install -y python-django-sudo-2.1.0-1.noarch.rpm\nfpm -s python -t rpm django-templatetag-sugar==1.0\nsudo yum install -y python-django-templatetag-sugar-1.0-1.noarch.rpm\nfpm -s python -t rpm djangorestframework==2.4.8\nsudo yum install -y python-djangorestframework-2.4.8-1.noarch.rpm\nfpm -s python -t rpm email-reply-parser==0.2.0\nsudo yum install -y python-email_reply_parser-0.2.0-1.noarch.rpm\nfpm -s python -t rpm enum34==1.1.9\nsudo yum install -y python-enum34-1.1.9-1.noarch.rpm\nfpm -s python -t rpm functools32==3.2.3.post2\nsudo yum install -y python-functools32-3.2.3_2-1.noarch.rpm\nfpm -s python -t rpm futures==3.3.0\nsudo yum install -y python-futures-3.3.0-1.noarch.rpm\nfpm -s python -t rpm hiredis==0.1.6\nsudo yum install -y python-hiredis-0.1.6-1.x86_64.rpm\nfpm -s python -t rpm honcho==1.0.1\nsudo yum install -y python-honcho-1.0.1-1.noarch.rpm\nfpm -s python -t rpm httplib2==0.17.0\nsudo yum install -y python-httplib2-0.17.0-1.noarch.rpm\nfpm -s python -t rpm jsonschema==2.6.0\nsudo yum install -y python-jsonschema-2.6.0-1.noarch.rpm\nfpm -s python -t rpm kombu==3.0.35\nsudo yum install -y python-kombu-3.0.35-1.noarch.rpm\nfpm -s python -t rpm celery==3.1.18\nsudo yum install -y python-celery-3.1.18-1.noarch.rpm\nfpm -s python -t rpm loremipsum==1.0.5\nsudo yum install -y python-loremipsum-1.0.5-1.noarch.rpm\nfpm -s python -t rpm lxml==4.5.0\nsudo yum install -y python-lxml-4.5.0-1.x86_64.rpm\nfpm -s python -t rpm milksnake==0.1.5\nsudo yum install -y python-milksnake-0.1.5-1.noarch.rpm\nfpm -s python -t rpm mistune==0.8.4\nsudo yum install -y python-mistune-0.8.4-1.noarch.rpm\nfpm -s python -t rpm mmh3==2.3.1\nsudo yum install -y python-mmh3-2.3.1-1.x86_64.rpm\nfpm -s python -t rpm exam==0.10.6\nsudo yum install -y python-exam-0.10.6-1.noarch.rpm\nfpm -s python -t rpm msgpack==0.6.2\nsudo yum install -y python-msgpack-0.6.2-1.x86_64.rpm\nfpm -s python -t rpm oauth2==1.9.0.post1\nsudo yum install -y python-oauth2-1.9.0.post1-1.noarch.rpm\nfpm -s python -t rpm oauthlib==3.1.0\nsudo yum install -y python-oauthlib-3.1.0-1.noarch.rpm\nfpm -s python -t rpm parsimonious==0.8.0\nsudo yum install -y python-parsimonious-0.8.0-1.noarch.rpm\nfpm -s python -t rpm requests==2.20.1\nsudo yum install -y python-requests-2.20.1-1.noarch.rpm\nfpm -s python -t rpm petname==2.0\nsudo yum install -y python-petname-2.0-1.noarch.rpm\nfpm -s python -t rpm python-utils==2.3.0\nsudo yum install -y python-utils-2.3.0-1.noarch.rpm\nfpm -s python -t rpm progressbar2==3.10.1\nsudo yum install -y python-progressbar2-3.10.1-1.noarch.rpm\nfpm -s python -t rpm pytest-django==2.9.1\nsudo yum install -y python-pytest-django-2.9.1-1.noarch.rpm\nfpm -s python -t rpm pytest-html==1.9.0\nsudo yum install -y python-pytest-html-1.9.0-1.noarch.rpm\nfpm -s python -t rpm python-memcached==1.59\nsudo yum install -y python-memcached-1.59-1.noarch.rpm\nfpm -s python -t rpm python-openid==2.2.5\nsudo yum install -y python-openid-2.2.5-1.noarch.rpm\nfpm -s python -t rpm python-u2flib-server==4.0.1\nsudo yum install -y python-u2flib-server-4.0.1-1.noarch.rpm\nfpm -s python -t rpm qrcode==5.3\nsudo yum install -y python-qrcode-5.3-1.noarch.rpm\nfpm -s python -t rpm querystring-parser==1.2.4\nsudo yum install -y python-querystring_parser-1.2.4-1.noarch.rpm\nfpm -s python -t rpm redis==2.10.5\nsudo yum install -y python-redis-2.10.5-1.noarch.rpm\nfpm -s python -t rpm rb==1.7\nsudo yum install -y python-rb-1.7-1.noarch.rpm\nfpm -s python -t rpm redis-py-cluster==1.3.4\nsudo yum install -y python-redis-py-cluster-1.3.4-1.noarch.rpm\nfpm -s python -t rpm requests-oauthlib==0.3.3\nsudo yum install -y python-requests-oauthlib-0.3.3-1.noarch.rpm\nfpm -s python -t rpm percy==2.0.2\nsudo yum install -y python-percy-2.0.2-1.noarch.rpm\nfpm -s python -t rpm selenium==3.141.0\nsudo yum install -y python-selenium-3.141.0-1.noarch.rpm\nfpm -s python -t rpm semaphore==0.4.65\nsudo yum install -y python-semaphore-0.4.65-1.x86_64.rpm\nfpm -s python -t rpm sentry-sdk==0.14.1\nsudo yum install -y python-sentry-sdk-0.14.1-1.noarch.rpm\nfpm -s python -t rpm setproctitle==1.1.10\nsudo yum install -y python-setproctitle-1.1.10-1.x86_64.rpm\nfpm -s python -t rpm simplejson==3.8.2\nsudo yum install -y python-simplejson-3.8.2-1.x86_64.rpm\nfpm -s python -t rpm sqlparse==0.1.19\nsudo yum install -y python-sqlparse-0.1.19-1.noarch.rpm\nfpm -s python -t rpm statsd==3.1\nsudo yum install -y python-statsd-3.1-1.noarch.rpm\nfpm -s python -t rpm strict-rfc3339==0.7\nsudo yum install -y python-strict-rfc3339-0.7-1.noarch.rpm\nfpm -s python -t rpm structlog==16.1.0\nsudo yum install -y python-structlog-16.1.0-1.noarch.rpm\nfpm -s python -t rpm symbolic==6.1.4\nsudo yum install -y python-symbolic-6.1.4-1.x86_64.rpm\nfpm -s python -t rpm toronado==0.0.11\nsudo yum install -y python-toronado-0.0.11-1.noarch.rpm\nfpm -s python -t rpm ua-parser==0.7.3\nsudo yum install -y python-ua-parser-0.7.3-1.noarch.rpm\nfpm -s python -t rpm uwsgi==2.0.18\nsudo yum install -y python-uwsgi-2.0.18-1.noarch.rpm\nfpm -s python -t rpm -n PyYAML pyyaml==3.11\nsudo yum install -y PyYAML-3.11-1.x86_64.rpm\nfpm -s python -t rpm django-auth-ldap==1.2.17\nsudo yum install -y python-django-auth-ldap-1.2.17-1.noarch.rpm<\/code><\/pre>\n<h3 id=\"sobiraem-v-rpm-sentry-i-ustanavlivaem-ego-fayl-6sentrysh\">Kogume rpm sentry ja installime selle. Fail 6sentry.sh<\/h3>\n<pre><code class=\"plaintext\">echo \"Paigaldame nodejs ja yarn\"\ncurl -sL https:\/\/rpm.nodesource.com\/setup_10.x | sudo bash -\nsudo yum install -y nodejs\nsudo sed -e '\/nodesource-source\/,+6d' -i \/etc\/yum.repos.d\/nodesource-el7.repo\ncurl -sL https:\/\/dl.yarnpkg.com\/rpm\/yarn.repo | sudo tee \/etc\/yum.repos.d\/yarn.repo\nsudo yum install -y yarn\n\ncp spec\/config.yml spec\/sentry.conf.py ~\/rpmbuild\/SOURCES\ncp spec\/sentry-cron.service spec\/sentry-web.service spec\/sentry-worker.service ~\/rpmbuild\/SOURCES\nspectool -g spec\/sentry-9.1.2.spec\nsudo yum-builddep -y spec\/sentry-9.1.2.spec\nrpmbuild -bb spec\/sentry-9.1.2.spec\nsudo yum install -y ~\/rpmbuild\/RPMS\/noarch\/python-sentry-9.1.2-1.el7.noarch.rpm<\/code><\/pre>\n<h2 id=\"ustanovka-sentry-rpm-s-zavisimostyami-na-drugom-servere\">Sentry rpm paigaldamine s\u00f5ltuvustega teisel serveril<\/h2>\n<h3 id=\"vyklyuchaem-selinux-1\">K\u00e4ivitage Selinux<\/h3>\n<pre><code class=\"plaintext\">sudo sed -i s\/^SELINUX=.*$\/SELINUX=disabled\/ \/etc\/selinux\/config\n#### sudo reboot<\/code><\/pre>\n<h3 id=\"podklyuchaem-repozitoriy-epel-release-1\">\u00dchendame epel-release reposti<\/h3>\n<pre><code class=\"plaintext\">sudo yum install -y epel-release git libjpeg-turbo redis\nsudo systemctl start redis<\/code><\/pre>\n<h4 id=\"ustanavlivaem-i-zapuskaem-postgresql-96-fayl-7postgresqlsh\">Paigaldame ja k\u00e4ivitame PostgreSQL 9.6. Fail 7postgresql.sh<\/h4>\n<pre><code class=\"plaintext\">sudo yum install -y https:\/\/download.postgresql.org\/pub\/repos\/yum\/reporpms\/EL-7-x86_64\/pgdg-redhat-repo-latest.noarch.rpm\nsudo yum install -y postgresql96 postgresql96-server postgresql96-contrib\nsudo \/usr\/pgsql-9.6\/bin\/postgresql96-setup initdb\nsudo systemctl start postgresql-9.6\nsudo -i -u postgres psql -c \"create user sentry with password 'password';\"\nsudo -i -u postgres psql -c \"create database sentry with owner sentry;\"\nsudo -i -u postgres psql -c \"alter role sentry superuser;\"\n\n# TODO: Kontrollida ilma superuser \u00f5igusteta rollile sentry\n#sudo -i -u postgres psql -c \"alter role sentry nosuperuser;\"\n#sudo -i -u postgres psql -c \"CREATE SCHEMA main AUTHORIZATION sentry;\"<\/code><\/pre>\n<h4 id=\"zapuskaem-migraciyu-sozdanie-shemy-bd-i-zapuskaem-servisy-fayl-8start_sentrysh\">K\u00e4ivitame migratsiooni (andmebaasi skeemi loomine) ja k\u00e4ivitame teenused. Fail 8start_sentry.sh<\/h4>\n<pre><code class=\"plaintext\">sudo systemctl start redis\nsudo -i -u sentry \/usr\/bin\/sentry --config \/etc\/sentry\/ upgrade\nsudo systemctl start sentry-worker\nsudo systemctl start sentry-cron\nsudo systemctl start sentry-web<\/code><\/pre>\n<h4 id=\"sozdaem-vnutrennego-administratora-sentry\">Loome Sentry sisemise administraatori<\/h4>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/forum.sentry.io\/t\/noninteractive-first-time-setup-of-user-via-upgrade\/164\">https:\/\/forum.sentry.io\/t\/noninteractive-first-time-setup-of-user-via-upgrade\/164<\/a><\/noindex><\/p>\n<pre><code class=\"plaintext\">sudo -i -u sentry \/usr\/bin\/sentry --config \/etc\/sentry\/ createuser <\/code><\/pre>\n<h3 id=\"sborka-sentry-v-rpm-ustanovka-nastroyka-dlya-lenivyh\">Sentry kogumine rpm, installimine, seadistamine laiskade jaoks<\/h3>\n<h4 id=\"vyklyuchaem-selinux-2\">K\u00e4ivitage Selinux<\/h4>\n<pre><code class=\"plaintext\">sudo sed -i s\/^SELINUX=.*$\/SELINUX=disabled\/ \/etc\/selinux\/config\nsudo reboot<\/code><\/pre>\n<h4 id=\"zapuskaem-skripty-dlya-sborki-i-ustanovki-sentry\">K\u00e4ivitame skriptid Sentry kogumiseks ja installimiseks<\/h4>\n<pre><code class=\"plaintext\">sudo yum install -y epel-release git\ngit clone https:\/\/github.com\/patsevanton\/sentry-rpm.git\ncd sentry-rpm\n.\/1general_dependencies.sh\n.\/2psycopg2-binary.sh\n.\/3dateutil.sh\n.\/4urllib3.sh\n.\/5other_dependencies.sh\n.\/6sentry.sh\nKopeerime rpm rpmbuild\/RPMS ja sentry-rpm juurserverisse. Loome yum repo. Paigaldame k\u00f5ik kogutud rpm paketid.\n.\/7postgresql.sh\n.\/8start_sentry.sh<\/code><\/pre>\n<h4 id=\"sozdaem-vnutrennego-administratora-sentry-1\">Loome Sentry sisemise administraatori<\/h4>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/forum.sentry.io\/t\/noninteractive-first-time-setup-of-user-via-upgrade\/164\">https:\/\/forum.sentry.io\/t\/noninteractive-first-time-setup-of-user-via-upgrade\/164<\/a><\/noindex><\/p>\n<pre><code class=\"plaintext\">sudo -i -u sentry \/usr\/bin\/sentry --config \/etc\/sentry\/ createuser <\/code><\/pre>\n<h3 id=\"testirovanie-otpravki-exception\">Erandi saatmise testimine<\/h3>\n<p>Testime Java projektiga. Laadime alla Java ja Maven.<\/p>\n<pre><code class=\"plaintext\">sudo yum install -y java-1.8.0-openjdk-devel git\nsudo wget http:\/\/repos.fedorapeople.org\/repos\/dchen\/apache-maven\/epel-apache-maven.repo -O \/etc\/yum.repos.d\/epel-apache-maven.repo\nsudo yum -y install apache-maven\ngit clone https:\/\/github.com\/getsentry\/examples.git\ncd examples\/java\/basic\nmvn compile exec:java<\/code><\/pre>\n<p>N\u00fc\u00fcd peame k\u00e4ivitama Java, edastades SENTRY_DSN<\/p>\n<pre><code class=\"plaintext\">SENTRY_DSN=https:\/\/public:private@host:port\/1 mvn exec:java<\/code><\/pre>\n<p>N\u00fc\u00fcd tuleb leida vaikimisi genereeritud SENTRY_DSN.<\/p>\n<p>Logime Sentry sisse. Liigume vaikesuunaga projektile <code>internal.<\/code><\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/e96517368c38665099f38b5c8daca554.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>v\u00f5i<\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/4c32d1648e7a44b52a74f340ba5ebea1.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Liigume projekti seadistuste juurde.<\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/66e823df5257057a4be9daa7b40ec75b.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Liigume Klientide v\u00f5tmete (DSN) juurde.<\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/4b954af756eb08acab5e05586357ac1c.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Kopeerime DSN. See on meie SENTRY_DSN.<\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/e02d120cfba7d36fa3062542f83213e0.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>K\u00e4ivitame Java selle parameetriga.<\/p>\n<pre><code class=\"plaintext\">SENTRY_DSN=http:\/\/633e7361061d4dcaaca53877c4c0e80a@172.26.9.34:9000\/1 mvn exec:java<\/code><\/pre>\n<p>N\u00e4eme sellist pilti.<\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/983320edf8893aaac8fd5f1058d9b998.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Kui liigume <code>UnsupportedOperationException<\/code>, n\u00e4eme laiendatud teavet.<\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/8403b7b9ac58edd870f6e974ba2df522.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p><img decoding=\"async\" alt=\"Sentry koos oma s\u00f5ltuvustega RPM-i koosseisu loomine. Sentry installimine RPM-ist, p\u00f5hiseaded\" src=\"\/wp-content\/uploads\/2020\/05\/82311a529e42117e2b615e15369bddb9.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<h4 id=\"sozdal-telegram-chat-po-sentry\">Loomine Telegrami vestlus Sentry kohta<\/h4>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/sentry_ru\">https:\/\/t.me\/sentry_ru<\/a><\/noindex><\/p>\n<h4 id=\"v-sleduyuschih-seriyah\">J\u00e4rgmistes osades:<\/h4>\n<ul>\n<li>LDAP testimine. Skript on juba valmistatud <code>9sentry-ldap-auth.sh<\/code><\/li>\n<li>Testida Sentry versioon 10.0.X p\u00e4rast m\u00f5ne v\u00e4ikese versiooni v\u00e4ljaandmist.<\/li>\n<\/ul>\n<h4 id=\"repozitoriy-so-skriptami\">Skriptide repo:<\/h4>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/patsevanton\/sentry-rpm\">https:\/\/github.com\/patsevanton\/sentry-rpm<\/a><\/noindex><\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/500632\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 Sentry \u2014 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 (exception), \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438: \u043b\u0435\u0433\u043a\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u043f\u0440\u043e\u0435\u043a\u0442, \u043b\u043e\u0432\u0438\u0442 \u043e\u0448\u0438\u0431\u043a\u0438 \u0438 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0438 \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435. \u0411\u0435\u0441\u043f\u043b\u0430\u0442\u0435\u043d, \u0421\u043f\u0438\u0441\u043e\u043a \u043e\u0448\u0438\u0431\u043e\u043a \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0415\u0441\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u043c\u0435\u0447\u0435\u043d\u0430 \u043a\u0430\u043a \u0440\u0435\u0448\u0435\u043d\u043d\u0430\u044f \u0438 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0441\u043d\u043e\u0432\u0430, \u0442\u043e \u043e\u043d\u0430 \u0441\u043d\u043e\u0432\u0430 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0438 \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u043f\u043e\u0442\u043e\u043a\u0435, \u041e\u0448\u0438\u0431\u043a\u0438 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u044e\u0442\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":80622,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-80621","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 Sentry \u2014 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 (exception), \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u0431\u043e\u0440\u043a\u0430 sentry \u0438 \u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432 rpm. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 sentry \u0438\u0437 rpm, \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 Sentry \u2014 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 (exception), \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-05-07T11:42:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-02-15T16:59:29+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Sentry ja selle s\u00f5ltuvuste kokku panemine rpm formaadis. Sentry paigaldamine rpm-st, p\u00f5hiseaded | ProHoster","description":"Kirjeldus Sentry - erandite (exception) ja vigade j\u00e4lgimise t\u00f6\u00f6riist teie rakendustes.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u0431\u043e\u0440\u043a\u0430 sentry \u0438 \u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432 rpm. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 sentry \u0438\u0437 rpm, \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 | ProHoster","og:description":"\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 Sentry \u2014 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 (exception), \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/sborka-sentry-i-ego-zavisimostej-v-rpm-ustanovka-sentry-iz-rpm-bazovaya-nastrojka","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-05-07T11:42:58+00:00","article:modified_time":"2021-02-15T16:59:29+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"80621","title":null,"description":"","keywords":"","keyphrases":null,"primary_term":null,"canonical_url":"","og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:14:36","updated":"2022-09-30 12:24:36","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/80621","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=80621"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/80621\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/80622"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=80621"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=80621"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=80621"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}