Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(normalization): bypass host scrubbing via allow list #3813

Merged
merged 11 commits into from
Aug 2, 2024

Conversation

aldy505
Copy link
Contributor

@aldy505 aldy505 commented Jul 12, 2024

As discussed on #3572. If this is okay, then someone would need to open a PR on sentry for additional relay config.

Legal Boilerplate

Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.

@aldy505 aldy505 requested a review from a team as a code owner July 12, 2024 02:31
Copy link
Member

@jjbayer jjbayer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for doing this! I left a few comments.

relay-dynamic-config/src/global.rs Outdated Show resolved Hide resolved
relay-event-normalization/src/event.rs Outdated Show resolved Hide resolved
@aldy505
Copy link
Contributor Author

aldy505 commented Jul 15, 2024

@Dav1dde @jjbayer Can any of you guys please approve the CI run? For some reasons I can't compile the relay_cabi on both Windows and Linux 🫤

/// ```
pub fn scrub_host(host: Host<&str>) -> Cow<'_, str> {
pub fn scrub_host<'a>(host: Host<&'a str>, allow_list: &'a [String]) -> Cow<'a, str> {
if allow_list.contains(&host.to_string()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

scrub_ipv4/6 below still have a hard-coded check to allow localhost. Should we put localhost as the default on sentry side instead, and remove the localhost special-case from the relay code?

@aldy505
Copy link
Contributor Author

aldy505 commented Jul 16, 2024

@Dav1dde @jjbayer Do you guys know why this happened? Do I need to setup anything other than running make setup? I'm using Ubuntu 24.04, latest Rust, gcc 13.2.0, CMake 3.28.3

❯ make check
All done! ✨ 🍰 ✨
59 files would be left unchanged.
    Checking openssl-sys v0.9.96
   Compiling openssl v0.10.60
   Compiling native-tls v0.2.11
   Compiling relay-crash v24.6.0 (/home/reinaldy/repo/personal/sentry-relay/relay-crash)
   Compiling rdkafka-sys v4.7.0+2.3.0
    Checking relay-filter v24.6.0 (/home/reinaldy/repo/personal/sentry-relay/relay-filter)
    Checking tonic v0.9.2
    Checking zstd-sys v2.0.7+zstd.1.5.4
   Compiling zstd-safe v6.0.4+zstd.1.5.4
    Checking axum-extra v0.7.7
    Checking tikv-jemalloc-sys v0.5.3+5.3.0-patched
    Checking relay-event-schema v24.6.0 (/home/reinaldy/repo/personal/sentry-relay/relay-event-schema)
    Checking generate-schema v0.1.0 (/home/reinaldy/repo/personal/sentry-relay/tools/generate-schema)
    Checking tikv-jemallocator v0.5.0
    Checking zstd v0.12.3+zstd.1.5.2
    Checking opentelemetry-proto v0.4.0 (https://github.com/open-telemetry/opentelemetry-rust?rev=dd4c13bd69ca4b24d5a8f21024a466fbb35cdd14#dd4c13bd)
error: failed to run custom build command for `relay-crash v24.6.0 (/home/reinaldy/repo/personal/sentry-relay/relay-crash)`

Caused by:
  process didn't exit successfully: `/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-862a2bd228b64d1b/build-script-build` (exit status: 101)
  --- stdout
  cargo:rustc-link-lib=dylib=stdc++
  CMAKE_TOOLCHAIN_FILE_x86_64-unknown-linux-gnu = None
  CMAKE_TOOLCHAIN_FILE_x86_64_unknown_linux_gnu = None
  HOST_CMAKE_TOOLCHAIN_FILE = None
  CMAKE_TOOLCHAIN_FILE = None
  CMAKE_GENERATOR_x86_64-unknown-linux-gnu = None
  CMAKE_GENERATOR_x86_64_unknown_linux_gnu = None
  HOST_CMAKE_GENERATOR = None
  CMAKE_GENERATOR = None
  CMAKE_PREFIX_PATH_x86_64-unknown-linux-gnu = None
  CMAKE_PREFIX_PATH_x86_64_unknown_linux_gnu = None
  HOST_CMAKE_PREFIX_PATH = None
  CMAKE_PREFIX_PATH = None
  CMAKE_x86_64-unknown-linux-gnu = None
  CMAKE_x86_64_unknown_linux_gnu = None
  HOST_CMAKE = None
  CMAKE = None
  running: cd "/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build" && CMAKE_PREFIX_PATH="" "cmake" "/home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native" "-DSENTRY_BACKEND=breakpad" "-DSENTRY_TRANSPORT=none" "-DBUILD_SHARED_LIBS=OFF" "-DSENTRY_BUILD_TESTS=OFF" "-DSENTRY_BUILD_EXAMPLES=OFF" "-DCMAKE_INSTALL_LIBDIR=lib" "-DCMAKE_INSTALL_PREFIX=/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out" "-DCMAKE_C_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_C_COMPILER=/usr/bin/cc" "-DCMAKE_CXX_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_COMPILER=/usr/bin/c++" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_ASM_COMPILER=/usr/bin/cc" "-DCMAKE_BUILD_TYPE=RelWithDebInfo"
  -- SENTRY_TRANSPORT=none
  -- SENTRY_BACKEND=breakpad
  -- SENTRY_LIBRARY_TYPE=STATIC
  -- SENTRY_SDK_NAME=
  -- Configuring done (0.1s)
  -- Generating done (0.0s)
  -- Build files have been written to: /home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build
  running: cd "/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build" && MAKEFLAGS="-j --jobserver-fds=7,8 --jobserver-auth=7,8" "cmake" "--build" "." "--target" "install" "--config" "RelWithDebInfo"
  gmake[1]: Entering directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  gmake[2]: Entering directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  gmake[3]: Entering directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  gmake[3]: Leaving directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  gmake[3]: Entering directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  [  1%] Building CXX object external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/handler/minidump_descriptor.cc.o
  [  3%] Building CXX object external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/minidump_writer/linux_dumper.cc.o
  [  4%] Building CXX object external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.o
  [  6%] Building CXX object external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc.o
  [  8%] Building CXX object external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/minidump_writer/pe_file.cc.o
  [  9%] Building CXX object external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc.o
  gmake[3]: Leaving directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  gmake[2]: Leaving directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'
  gmake[1]: Leaving directory '/home/reinaldy/repo/personal/sentry-relay/target/debug/build/relay-crash-436e0cbe82660211/out/build'

  --- stderr
  In file included from /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/minidump_writer/minidump_writer.cc:45:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:114:3: error: ‘uintptr_t’ does not name a type
    114 |   uintptr_t address_within_principal_mapping() const {
        |   ^~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:39:1: note: ‘uintptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
     38 | #include "common/using_std_string.h"
    +++ |+#include <cstdint>
     39 | 
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:118:7: error: ‘uintptr_t’ has not been declared
    118 |       uintptr_t address_within_principal_mapping) {
        |       ^~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:170:3: error: ‘uintptr_t’ does not name a type
    170 |   uintptr_t address_within_principal_mapping_;
        |   ^~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:170:3: note: ‘uintptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor()’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:56:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     56 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(const std::string&)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:65:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     65 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(int)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:76:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     76 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(const MicrodumpOnConsole&)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:86:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     86 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In member function ‘void google_breakpad::MinidumpDescriptor::set_address_within_principal_mapping(int)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:119:5: error: ‘address_within_principal_mapping_’ was not declared in this scope; did you mean ‘address_within_principal_mapping’?
    119 |     address_within_principal_mapping_ = address_within_principal_mapping;
        |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        |     address_within_principal_mapping
  In file included from /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc:31:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:114:3: error: ‘uintptr_t’ does not name a type
    114 |   uintptr_t address_within_principal_mapping() const {
        |   ^~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:39:1: note: ‘uintptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
     38 | #include "common/using_std_string.h"
    +++ |+#include <cstdint>
     39 | 
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:118:7: error: ‘uintptr_t’ has not been declared
    118 |       uintptr_t address_within_principal_mapping) {
        |       ^~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:170:3: error: ‘uintptr_t’ does not name a type
    170 |   uintptr_t address_within_principal_mapping_;
        |   ^~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:170:3: note: ‘uintptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor()’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:56:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     56 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(const std::string&)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:65:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     65 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(int)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:76:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     76 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(const MicrodumpOnConsole&)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:86:9: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     86 |         address_within_principal_mapping_(0),
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h: In member function ‘void google_breakpad::MinidumpDescriptor::set_address_within_principal_mapping(int)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.h:119:5: error: ‘address_within_principal_mapping_’ was not declared in this scope; did you mean ‘address_within_principal_mapping’?
    119 |     address_within_principal_mapping_ = address_within_principal_mapping;
        |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        |     address_within_principal_mapping
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc: In copy constructor ‘google_breakpad::MinidumpDescriptor::MinidumpDescriptor(const google_breakpad::MinidumpDescriptor&)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc:47:7: error: class ‘google_breakpad::MinidumpDescriptor’ does not have any field named ‘address_within_principal_mapping_’
     47 |       address_within_principal_mapping_(
        |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc:48:22: error: ‘const class google_breakpad::MinidumpDescriptor’ has no member named ‘address_within_principal_mapping_’; did you mean ‘set_address_within_principal_mapping’?
     48 |           descriptor.address_within_principal_mapping_),
        |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        |                      set_address_within_principal_mapping
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc: In member function ‘google_breakpad::MinidumpDescriptor& google_breakpad::MinidumpDescriptor::operator=(const google_breakpad::MinidumpDescriptor&)’:
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc:73:3: error: ‘address_within_principal_mapping_’ was not declared in this scope; did you mean ‘set_address_within_principal_mapping’?
     73 |   address_within_principal_mapping_ =
        |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        |   set_address_within_principal_mapping
  /home/reinaldy/repo/personal/sentry-relay/relay-crash/sentry-native/external/breakpad/src/client/linux/handler/minidump_descriptor.cc:74:18: error: ‘const class google_breakpad::MinidumpDescriptor’ has no member named ‘address_within_principal_mapping_’; did you mean ‘set_address_within_principal_mapping’?
     74 |       descriptor.address_within_principal_mapping_;
        |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        |                  set_address_within_principal_mapping
  gmake[3]: *** [external/CMakeFiles/breakpad_client.dir/build.make:300: external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/handler/minidump_descriptor.cc.o] Error 1
  gmake[3]: *** Waiting for unfinished jobs....
  gmake[3]: *** [external/CMakeFiles/breakpad_client.dir/build.make:384: external/CMakeFiles/breakpad_client.dir/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.o] Error 1
  gmake[2]: *** [CMakeFiles/Makefile2:144: external/CMakeFiles/breakpad_client.dir/all] Error 2
  gmake[1]: *** [Makefile:136: all] Error 2
  thread 'main' panicked at /home/reinaldy/.cargo/registry/src/index.crates.io-6f17d22bba15001f/cmake-0.1.49/src/lib.rs:1104:5:

  command did not execute successfully, got: exit status: 2

  build script failed, must exit now
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
make: *** [Makefile:109: lint-rust] Error 101

@jjbayer
Copy link
Member

jjbayer commented Jul 17, 2024

Do you guys know why this happened?

I haven't encountered this error before. breakpad is a submodule of sentry-native, which is a submodule of relay, so maybe you need to call git submodule --init --recursive, but this should run automatically with make setup.

@jjbayer
Copy link
Member

jjbayer commented Jul 24, 2024

@aldy505 any luck with your setup? If not, I'm happy to trigger your test runs manually.

@aldy505
Copy link
Contributor Author

aldy505 commented Jul 24, 2024

@aldy505 any luck with your setup? If not, I'm happy to trigger your test runs manually.

@jjbayer Nope. The last one will fail though. I usually ping @Dav1dde on discord if I need the CI run approval.

@aldy505 aldy505 requested a review from jjbayer July 27, 2024 12:08
Copy link
Member

@jjbayer jjbayer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@aldy505 I took the liberty of pushing some improvements:

  • Also use the allow list in span::processing, which is used for standalone spans not embedded in any transaction.
  • Parse into Host directly to save on conversions.

@jjbayer jjbayer merged commit ddc5546 into getsentry:master Aug 2, 2024
24 checks passed
@aldy505 aldy505 deleted the feat/host-scrubbing-allow-list branch August 4, 2024 07:58
jjbayer added a commit to getsentry/sentry that referenced this pull request Aug 5, 2024
…74195)

Complementary relay config for
getsentry/relay#3813, based on the discussion on
getsentry/relay#3572

### Legal Boilerplate

Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.

---------

Co-authored-by: Joris Bayer <[email protected]>
TheDevMinerTV added a commit to TheDevMinerTV/relay that referenced this pull request Aug 16, 2024
TheDevMinerTV added a commit to TheDevMinerTV/relay that referenced this pull request Aug 16, 2024
Dav1dde pushed a commit that referenced this pull request Aug 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants