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

RFC about semantic conventions #107

Closed
AbhiPrasad opened this issue Oct 3, 2023 · 0 comments · Fixed by getsentry/rfcs#116
Closed

RFC about semantic conventions #107

AbhiPrasad opened this issue Oct 3, 2023 · 0 comments · Fixed by getsentry/rfcs#116
Assignees
Labels
RFC RFCs related work

Comments

@AbhiPrasad
Copy link
Member

We've been relying on a variety of sources of truth for conventions on data attached to Sentry events.

For errors/transactions we have:

For spans we have:

For breadcrumbs we have:

  • data: no format atm, but UI and replay product relies on certain format/values in breadcrumbs

For crons we have nothing atm.

For metrics (DDM) we have:

  • tags

Let's write an RFC that accomplishes the following:

  1. Establishes attributes field for spans/breadcrumbs/crons/metrics that is the top level key value store for arbitrary data about a sentry signal (we can alias to data for backwards compat). Attributes will be flattened and rely on keys for separation (http.X vs. db.Y).
  2. Defines attributes to follow conventions that are superset of OTEL's semantic conventions
  3. Formalizes attribute conventions via some format that will be consumed by Relay/Kafka/Backend/Frontend (we can make this rust/python/js library that we publish, or just a plain json schema)

Goals:

  1. There is a clear mapping between what exists today vs. attributes we want for our spans/metrics/breadcrumbs in the future
  2. Everything is backwards compatible - an old SDK sending data should still keep working with modern Sentry (exceptions can apply)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RFC RFCs related work
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant