2
0
Commit Graph

198 Commits

Author SHA1 Message Date
a2507c10e0 fix(superuser): Don't set INTERNAL_IPS to Docker network (#581)
`INTERNAL_IPS` is used to check whether to allow superuser access or not. Limiting this to the Docker internal network makes it impossible for anyone to reach admin pages with on-premise setup.

This is a follow up to #572 and it fixes #577.
2020-07-13 19:21:52 +03:00
75fe6c073b fix(ingest): Fix Relay auth issues and add e2e event ingestion test (#578)
This is a long-needed test that tests the whole pipeline from Nginx, Relay, to Kafka, and Snuba. The final missing piece is testing the Symbolicator integration.

This PR is also a follow up to #576 as it didn't solve the Relay issues fully (the earlier fix was a coincidence or is not as reliable as it seemed).

Fixes #486 (finally?).
2020-07-13 13:07:05 +03:00
1c9bfd9017 fix(relay): Fix relay cannot authenticate w/ Sentry (#576)
Fixes #486.

I finally figured out what the issue was: a missing `post-buffering` option to let Relay finish it's POST request for auth. This PR supersedes #543.
2020-07-11 00:08:14 +03:00
73213bc51f ref(relay): Remove PK and rely on INTERNAL_IPS (#572)
This patch adds `INTERNAL_IPS` definition to `sentry.conf.py` by sniffing the network from eth0 and relies on this for trusted Relays instead of the ALLOWLISTED PKs. This removes the necessity of syncing Relay PKs to `sentry.conf.py`.

This PR needs getsentry/sentry#19798 to work.
2020-07-10 23:53:50 +03:00
9d44b99c55 fix(slack): Point to newer docs, better defaults (#571)
* added new default going forward uncommented
* added link to new guide
* added support for new signing-secret
* slight rejig to config
2020-07-10 21:10:05 +03:00
96889a6175 Add volumed-out config directory for symbolicator. (#566)
I would like to be able to customize the configuration for my Sentry 10 symbolicator instance, which this change allows me to easily do.

See related: https://github.com/getsentry/symbolicator/issues/245

Co-authored-by: Burak Yigit Kaya <ben@byk.im>
2020-07-08 20:42:33 +03:00
a01d013617 fix(slack): Add note about legacy app flag for newly created bots (#563)
Co-authored-by: jack <jackc@strangeanimals.com.au>
2020-07-08 15:56:49 +03:00
a549ab1300 license: Update BSL change date (#557)
Co-authored-by: sentry-update-license-date[bot] <57668832+sentry-update-license-date[bot]@users.noreply.github.com>
2020-07-03 22:06:19 +03:00
e75e6f1dee fix(zookeeper): cp: cannot create regular file (#552)
Hi,

I've been through quite a few different ways of implementing this fix and settled on creating a variable to store the output of checking whether the zookeeper copy target folder exists and copying the snapshot file based on the copy target folder existing. I've ran quite a few manual tests for each option as well. Currently the PR sits on Option 3 from the below options.

**Option 1**
Judging from the [Jira issue](https://issues.apache.org/jira/browse/ZOOKEEPER-3056), it seems like the work around for zookeeper upgrades could be omitted entirely since the issue relates to upgrades from v3.4.10 to v3.5.4. I've tested removing the zookeeper workaround entirely and that install ran smoothly on a clean install of Sentry (no existing data) as well as an install of Sentry that currently has very minimal amount of log entries (roughly 100 log entries). Could we possibly remove the workaround entirely? 

**Option 2**
The second option was to simply add a check to the currently [existing line](https://github.com/getsentry/onpremise/blob/master/install.sh#L178) of whether the copy target folder exists and perform the snapshot file copy only if the copy target folder exists. This is the least amount of code and possibly the simpler fix while also setting the `ZOOKEEPER_SNAPSHOT_TRUST_EMPTY` env var to `true`, however, some unnecessary calculations will be done to determine the `ZOOKEEPER_LOG_FILE_COUNT` and `ZOOKEEPER_SNAPSHOT_FILE_COUNT`.

**Option 3**
I've created a variable to store whether the copy target folder exists and proceed with the zookeeper upgrade workaround only if the copy target folder exists. This means that if the copy target folder does not exist, the env var `ZOOKEEPER_SNAPSHOT_TRUST_EMPTY` will not be set.

Fixes #547.

Co-authored-by: chamirb <chamirb@globalkinetic.com>
2020-06-29 16:16:42 +03:00
131a324af2 docs: Rename title from 10 to Nightly 2020-06-17 20:56:24 +03:00
f66ca96fa7 build(gha): Add skip_prepare option for manual triggers 2020-06-16 23:11:09 +03:00
ea93a4b886 build(gha): Add GH status context 2020-06-16 22:58:52 +03:00
b2b497e619 build(gha): Workaround for Craft action params 2020-06-16 22:55:03 +03:00
d83aa55bf8 build(gha): Add name to release action 2020-06-16 22:49:00 +03:00
ea2c31f012 build(gha): Add GIT_*_NAME variables 2020-06-16 22:48:09 +03:00
2fc9811c74 build(gha): Add automated CalVer releases (#539) 2020-06-16 12:44:13 +03:00
cfaa368306 fix(gha): Add version to craft-action 2020-06-14 17:36:53 +03:00
8c7b633b90 fix(gha): Fix indent in yaml file 2020-06-14 17:29:34 +03:00
af502d0ba5 build(gha): Add Craft releases as a GitHub action (#538) 2020-06-14 17:27:41 +03:00
677e753c18 fix(relay): Increase Kafka message size limit to 50MB (#527)
Based on my forum post https://forum.sentry.io/t/sentry-native-and-kafka-messagesizetoolarge-error/9948
In short I tried to send minidumps more than 1mb(in fact 2mb), and relay service failed to store event, with kafka error `MessageSizeTooLarge`.
You can reproduce this if you recreate install this on local machine, create simple native project, and send minidump file more than 1mb via curl like suggested in docs or in web ui. And check the logs.

I reason selected value of 50mb on https://github.com/getsentry/onpremise/blob/master/docker-compose.yml#L87, like you already hardcoded on kafka service.
2020-06-11 22:33:36 +03:00
c2120aafc9 fix(zookeeper): Temp ZK fix should run in detached mode (#525)
Fixes #519.
2020-06-02 19:45:07 +03:00
ff057d1d2c feat: Add sessions snuba consumer to setup (#524)
Co-authored-by: Markus Unterwaditzer <markus@unterwaditzer.net>
Co-authored-by: Burak Yigit Kaya <byk@sentry.io>
2020-06-02 17:04:46 +03:00
3522a12325 ref(sentry): Remove explicit Discover v2 flags (#523)
Discover v2 is now enabled by default: getsentry/sentry#19023
2020-06-01 23:34:54 +03:00
41f8b0f149 license: Update BSL change date (#522)
Co-authored-by: sentry-update-license-date[bot] <57668832+sentry-update-license-date[bot]@users.noreply.github.com>
2020-06-01 18:05:19 +03:00
01bec99996 fix(nginx): Increase upload size back to 100M for Sentry too
Addresses https://github.com/getsentry/onpremise/pull/499#discussion_r431537129
2020-05-28 21:42:58 +03:00
85f267bec7 fix(nginx): Increase upload size back to 100M for store
Addresses https://github.com/getsentry/onpremise/pull/499#discussion_r431537129
2020-05-28 21:33:57 +03:00
83160e8bdb fix(gcb): We need to pull SENTRY_IMAGE on GCB
Follow up to #514.
2020-05-25 10:18:18 +03:00
3e7df7be17 fix(install): Skip pull when SENTRY_IMAGE is set (#514)
This also uses SENTRY_VERSION instead of hard-coding `:latest` as the tag when pulling (follow up to #509).
2020-05-25 01:11:19 +03:00
fe1f23f10f fix(zk): Fix zookeper upgrade to 5.5.0 (#511)
Fixes the "logs found but no snapshot" error when upgrading from a
short-lived older version. Fixes #472.

See https://issues.apache.org/jira/browse/ZOOKEEPER-3056.
2020-05-24 23:52:30 +03:00
9793bb7157 meta(versioning): Reword versioning sect. now that we have version tags (#510) 2020-05-23 22:49:31 +03:00
b651fc7fda fix(versioning): Fix leftover snuba:latest in cleanup
Follow up to #509.
2020-05-23 22:38:30 +03:00
e8d8cda688 feat(versioning): Add SENTRY_VERSION env var for sentry, snuba, relay (#509)
This is in preparation for the upcoming CalVer transition. Introduces a general `$SENTRY_VERSION` env variable, defaulting to `latest`.
2020-05-23 06:24:44 +03:00
9f39e3cea1 fix(uwsgi): Make sure uWSGI talks proper HTTP/1.1 (#499)
This patch brings back the HTTP/1.1 related settings for uWSGI to fix #486 as apparently Relay tries to talk to Sentry Web with keep alives where uWSGI terminates the connection unexpectedly. It also ports some configs for uWSGI and nginx from single-tenant.
2020-05-22 16:12:20 +03:00
c34484ddbf feat(kafka): Increase max message size (#497)
Fixes #402.
2020-05-18 19:22:54 +03:00
29c6ef58ad feat(snuba): Skip snuba migrate task (#495) 2020-05-18 09:16:30 +03:00
adda25ee23 feat: Instruct users to migrate TSDB (#430)
Tested this in a Ubuntu VM. The output of `date` is not too pretty but at least localized (so D/M vs M/D is not confusing)

## What is the TSDB migration?

We're effectively deprecating all TSDB backends but `sentry.tsdb.redissnuba.RedisSnubaTSDB`. We cannot reasonably support any other backend due to the fact that we would have to reimplement each of the backends in Relay, which is written in a different language. Also, like with deprecating mysql support, we don't really have the capacity to support things we do not use ourselves.

## Migration

`install.sh` should rewrite your configuration automatically and define a cutover date such that no data is lost. Before the cutover date, data is written to two backends at once, Redis and Snuba, and read from one, Redis. After the cutover date, event-related metrics will be read from Snuba which matches what we have on sentry.io.

## Manual migration guide for TSDB

In case `install.sh` is unable to migrate your files you will be given basic instructions on the console that essentially tell you to completely delete all TSDB config and paste the new, standard one. If for some reason you cannot say goodbye to your existing TSDB config, please create a new issue in this repo and cc @untitaker on it.
2020-05-12 12:02:40 +02:00
a74a0cb221 feat(slack-integration): add reference to guide (#484)
This PR simply adds a reference to the guide for setting up the Slack integration. The url was obtained from [#249](https://github.com/getsentry/onpremise/issues/249#issuecomment-547117033).
2020-05-09 23:11:11 +03:00
45320c6e86 fix(install.sh): skip checking for sse4 2 flag if kvm was detected (#485)
This PR disables checking for the SSE4.2 flag, which may not be present if the server is running in a VM even if SSE4.2 is in fact available to use (ClickHouse/ClickHouse#20). The KVM check was obtained from a [comment](https://github.com/ClickHouse/ClickHouse/issues/20#issuecomment-226849297) in that issue.

If SSE4.2 is not actually available in the VM, then the installation script may fail in an unpredictable way. Perhaps we can add a keyword argument to the script to let the user decide if they want to skip the check.
2020-05-09 23:10:08 +03:00
ad5b76fd29 Updating documentation link (#467)
Fixes #466.
2020-05-06 18:11:31 +03:00
b467e1c5b5 docs(sentry): Fix typo in example Sentry config (#471) 2020-05-06 17:54:00 +03:00
024024b198 ref(relay): More robust Relay credentials setting (#470)
This patch does two things:

1. Separate creating of Relay credentials from syncing them to Sentry config
2. Has a more flexible Relay credentials check and sync: look for the quoted public key in the config file, if it is there, assume this must be correctly set as it is very unlikely to have that random key in a different context with quotes around. The second one is to allow having other whitelisted relay keys by using an append method when adding the new key.
2020-05-04 21:44:34 +03:00
3c190eb138 upgrade(confluent): Upgrade cp-stack to 5.5.0 (#465)
Suggested [on the forum](https://forum.sentry.io/t/connection-to-kafka-failed-when-installing/9162/10?u=byk) and the [upgrade docs](https://kafka.apache.org/25/documentation.html#upgrade) suggest upgrading from `5.1.x` without a rolling upgrade should be fine by just upgrading the code.
2020-05-04 21:36:04 +03:00
74c0d4c257 fix(nginx): Fix proxy settings for Sentry (#463)
Fixes #447.

This patch should also fix issuer regarding large uploads such as minidumps by turning off any buffering.
2020-05-04 13:36:05 +03:00
4040e68267 upgrade(clickhouse): Use 19.17 as it seems to be fixing some issues (#464)
Fixes #433.
2020-05-02 08:07:12 +03:00
6308970ea7 license: Update BSL change date (#461) 2020-05-01 16:24:30 +03:00
3244a966ec fix(relay): Use Docker Hub as relay image registry (#462)
We regularly prune old Google Cloud Build images and also GCB registry is not accessible to everyone all the time (firewall settings, being in China, etc.)

Fixes #445.
2020-05-01 16:23:50 +03:00
8c053b661a feat(relay): Use a simpler hack for credentials (#452) 2020-04-27 21:35:59 +03:00
ecccb211aa fix(relay): Fix failed to write credentials (#450) 2020-04-27 20:54:59 +03:00
d31f46831e Use restart-policy for nginx & relay (#448) 2020-04-27 18:15:17 +03:00
67ef528168 ci(logs): Show docker-compose ps and logs on fail (#443) 2020-04-27 17:10:22 +03:00