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
[trytond] Tracing and transaction info #2652
base: master
Are you sure you want to change the base?
Conversation
Any insight on how to test this is very welcome |
19604dc
to
b4ac2ce
Compare
Compatibility with newer versions was released https://foss.heptapod.net/tryton/tryton/-/issues/12234
This unblocks the roead for setting sentry up as trytond middleware (otherwise this integration would trigger circular import errors) https://docs.tryton.org/projects/server/en/latest/topics/configuration.html#wsgi-middleware
48fa779
to
823c31e
Compare
823c31e
to
83cb471
Compare
@pokoli sorry to bother you. Just pushed the tracing feature commit with a fair amount of metaprogramming black magic. I am still figuring out some typing annotation details but I'd enjoy your review on that part. It is working just fine in some production deployments but I may have missed some thoughts for multi-tenancy deployments. |
Due to the dynamic nature of Tryton's ORM, classes and methods can't be statically instrumented with Sentry's "functions_to_trace" parameter. Instead, add mixins that will instrument framework most relevant methods in the Pool post-setup phase.
83cb471
to
9728d8e
Compare
@n1ngu starting from 6.8 series there is a new log feature, which is used by the tryton server to log events from the user. |
Because that logging is implemented with a ModelStorage, any
because, unlike pool models, Transaction can be statically instrumented. I don't know if you meant to capture log events in sentry with |
Add tracing to the Trytond integration and extract transaction information from RPC request objects.