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

docs(self-hosted): experimental external kafka #11847

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

aldy505
Copy link
Contributor

@aldy505 aldy505 commented Nov 17, 2024

DESCRIBE YOUR PR

Provides guide for using external Kafka for self-hosted use cases. Obviously Sentry employees are not obliged to support or answer to any kind of questions regarding this, since this falls on the "Experimental" category.

But fun fact: Removing Kafka from the default docker-compose.yml will save you around 50% of RAM usage. Kafka is that bad.

IS YOUR CHANGE URGENT?

Help us prioritize incoming PRs by letting us know when the change needs to go live.

  • Urgent deadline (GA date, etc.):
  • Other deadline:
  • None: Not urgent, can wait up to 1 week+

SLA

  • Teamwork makes the dream work, so please add a reviewer to your PRs.
  • Please give the docs team up to 1 week to review your PR unless you've added an urgent due date to it.
    Thanks in advance for your help!

PRE-MERGE CHECKLIST

Make sure you've checked the following before merging your changes:

  • Checked Vercel preview for correctness, including links
  • PR was reviewed and approved by any necessary SMEs (subject matter experts)
  • PR was reviewed and approved by a member of the Sentry docs team

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.

EXTRA RESOURCES

Copy link

vercel bot commented Nov 17, 2024

@aldy505 is attempting to deploy a commit to the Sentry Team on Vercel.

A member of the Team first needs to authorize it.

@BYK BYK self-assigned this Nov 17, 2024
Copy link

vercel bot commented Nov 18, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
develop-docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 18, 2024 6:40pm
2 Skipped Deployments
Name Status Preview Comments Updated (UTC)
changelog ⬜️ Ignored (Inspect) Visit Preview Nov 18, 2024 6:40pm
sentry-docs ⬜️ Ignored (Inspect) Visit Preview Nov 18, 2024 6:40pm

Copy link
Contributor Author

@aldy505 aldy505 left a comment

Choose a reason for hiding this comment

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

Missing single environment variable for vroom

@getsantry
Copy link
Contributor

getsantry bot commented Dec 12, 2024

This pull request has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you add the label WIP, I will leave it alone unless WIP is removed ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

@getsantry getsantry bot added the Stale label Dec 12, 2024
@aldy505
Copy link
Contributor Author

aldy505 commented Dec 12, 2024

ping @BYK

@getsantry getsantry bot removed the Stale label Dec 13, 2024
Copy link
Member

@BYK BYK left a comment

Choose a reason for hiding this comment

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

Very sorry for the extremely late review! Added some comments, please let me know what you think.

develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved
develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved

Sentry uses the confluent-kafka library, which leverages the [default Kafka config from librdkafka](https://github.com/confluentinc/librdkafka/blob/master/CONFIGURATION.md). Modify your `sentry.conf.py` file like so:

```python
Copy link
Member

Choose a reason for hiding this comment

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

Should we put these in the example config file too?


## Snuba

Although Snuba also uses confluent-kafka under the hood, not every configuration option is available. Modify your `docker-compose.yml` file like so:
Copy link
Member

Choose a reason for hiding this comment

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

Let's encourage the use of docker-compose.override.yml instead

Suggested change
Although Snuba also uses confluent-kafka under the hood, not every configuration option is available. Modify your `docker-compose.yml` file like so:
Although Snuba also uses confluent-kafka under the hood, not every configuration option is available. Modify your `docker-compose.override.yml` file as:

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I personally modify the original docker compose file, create another git branch on top of it. Everytime there's a new release, I'll merge the upstream release tag onto my branch.

Copy link
Member

Choose a reason for hiding this comment

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

More ammunition for my "this should be a patch file in the repo" suggestion below 💪🏻

develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved
develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved
develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved
develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved

As of the time of writing, Vroom does not support any kind of authentication.

Modify your `docker-compose.yml` file like so:
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
Modify your `docker-compose.yml` file like so:
Modify your `docker-compose.override.yml` file as:

develop-docs/self-hosted/experimental/external-kafka.mdx Outdated Show resolved Hide resolved
aldy505 and others added 7 commits December 18, 2024 05:32
Co-authored-by: Burak Yigit Kaya <[email protected]>
Co-authored-by: Burak Yigit Kaya <[email protected]>
Co-authored-by: Burak Yigit Kaya <[email protected]>
Co-authored-by: Burak Yigit Kaya <[email protected]>
Co-authored-by: Burak Yigit Kaya <[email protected]>
Co-authored-by: Burak Yigit Kaya <[email protected]>
Co-authored-by: Burak Yigit Kaya <[email protected]>
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