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

Project: Starfish Module: Queries #19

Closed
9 tasks done
AbhiPrasad opened this issue Jul 24, 2023 · 3 comments
Closed
9 tasks done

Project: Starfish Module: Queries #19

AbhiPrasad opened this issue Jul 24, 2023 · 3 comments

Comments

@AbhiPrasad
Copy link
Member

AbhiPrasad commented Jul 24, 2023

Project Board

To get an overview of this work across all SDKs, please visit:
https://github.com/orgs/getsentry/projects/135

Description

For the starfish db module it was determined that we need extra database attributes, specifically about the database connection attributes.

We're going to matching the otel db conventions. Either one of server.address or server.socket.address is required. If server.address is set, then server.port should be set. If server.port is different than server.socket.port, than server.socket.port should also be set. In addition, db.name should be set if possible. db.system should match the list in OpenTelemetry's well known conventions.

The main priority items are db.name and db.system

Attribute Type Description Examples Requirement Level
db.system string An identifier for the database management system (DBMS) product being used. mysql Required
db.name string This attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). customers; main Conditionally Required: If applicable.
server.address string Name of the database host. example.com Conditionally Required: See alternative attributes below.
server.port int Logical server port number 80; 8080; 443 Conditionally Required: [1]
server.socket.address string Physical server IP address or Unix socket address. 10.5.3.2 See below
server.socket.port int Physical server port. 16456 Recommended: If different than server.port.

These values should be set on span.data.

NOTE: For the Mobile SDKs only db.name and db.system is required

SDKs to update

  1. antonpirker
  2. 4 of 4
    Feature: Performance
    AbhiPrasad
  3. Type: Improvement
    cleptric
  4. bitsandfoxes
  5. enhancement
    sl0thentr0py
  6. Platform: Android Platform: Java
    romtsn
  7. Platform: Dart performance
    buenaflor
  8. Platform: Cocoa
    armcknight

RFC

No response

Slack-Channel

#discuss-starfish

Notion Document(s)

No response

Stakeholder(s)

@alexjillard and @gggritso

Team(s)

Web Backend, Web Frontend, Starfish

@marandaneto
Copy link

db.name applies to Mobile SDKs as well, added the Mobile label.

@AbhiPrasad
Copy link
Member Author

We've updated https://develop.sentry.dev/sdk/performance/span-data-conventions/#database to better reflect the new attributes we are setting here.

@AbhiPrasad
Copy link
Member Author

Opened getsentry/sentry-java#2930 as a follow up but does not block the starfish DB module so closing this issue.

@stephanie-anderson stephanie-anderson changed the title [Starfish] Project: Add db attributes to database span's span data for starfish v1 Project: [Starfish] Add DB attributes to span data for starfish v1 Sep 12, 2023
@stephanie-anderson stephanie-anderson changed the title Project: [Starfish] Add DB attributes to span data for starfish v1 Project: Starfish Module: Queries Feb 27, 2024
@stephanie-anderson stephanie-anderson added this to the Tracing milestone Jul 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants