-
Notifications
You must be signed in to change notification settings - Fork 5.3k
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
OpenTracing support #5188
OpenTracing support #5188
Conversation
Codecov Report
@@ Coverage Diff @@
## master #5188 +/- ##
==========================================
+ Coverage 91.68% 91.78% +0.09%
==========================================
Files 271 272 +1
Lines 17547 17649 +102
Branches 1520 1530 +10
==========================================
+ Hits 16088 16199 +111
+ Misses 1063 1050 -13
- Partials 396 400 +4
Continue to review full report at Codecov.
|
Here is the report for 2302502 (mirumee/saleor @ feature/opentracing) No differences were found. (click me)
# api.benchmark checkout
test name left count right count duplicate count
------------------------------------------- ----------- ----------- ---------------
add billing address to checkout 34 34 20
add shipping to checkout 7 7 0
checkout payment charge 10 10 0
complete checkout 8 8 0
create checkout 5 5 1
# api.benchmark homepage
test name left count right count duplicate count
------------------------------------------- ----------- ----------- ---------------
retrieve main menu 5 5 0
retrieve product list 4 4 0
retrieve secondary menu 5 5 0
retrieve shop 2 2 0
# api.benchmark product
test name left count right count duplicate count
------------------------------------------- ----------- ----------- ---------------
product details 18 18 4
retrieve product attributes 9 9 0
# api.benchmark variant
test name left count right count duplicate count
------------------------------------------- ----------- ----------- ---------------
product variant bulk create 51 51 3
retrieve variant list 23 23 9
# api product sorting attributes
test name left count right count duplicate count
------------------------------------------- ----------- ----------- ---------------
sort product not having attribute data 21 21 0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM good work 👍
saleor/graphql/views.py
Outdated
with opentracing.global_tracer().start_span(operation_name="query") as span: | ||
span.set_tag("component", "db") | ||
span.set_tag("db.statement", sql) | ||
span.set_tag("db.many", many) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is many
and why do we need it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That indicates whether the ultimately invoked call is django execute() or executemany(). Thought it might become handy.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's usually obvious from the query itself (LIMIT 1 etc.).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yep, though defining a tag would allow to make it extra search criteria on external tracing platform. Well, on second thought it is unlikely somebody gonna ever make a use of it. Will drop that in a moment.
I want to merge this change because it resolves #4176
What is already implemented and working from whats pushed:
What is left to do:
NOTE: Example below is the one I got on DataDog during development. It might or might not be DD that we choose as the tracing provider (and this ticket is OpenTracing only).
Pull Request Checklist