Integration of python cprofile and postgresql logging collector for Odoo Check the Profiler menu in admin menu
To make use of the Postgres capabilities, enable Postgres logging and install PGbadger.
Python profiling will work out of the box.
For Python profiling we have two methods:
Full profiling: Profile anything that happens between A and B. For this method, start Odoo with workers=0, create a profile record and select Python method 'All activity'. Enable the profiler, do actions in Odoo, and disable again. Under 'Attachments' you can download the cProfile stats file.
Profile current session per HTTP request: Profile HTTP requests in the active user session. This method also works in multi-worker mode. Create a profile record and select Python method 'Per HTTP request'. Enable the profiler, do actions in Odoo, and see the list filling up with requests. After some time, disable. You can find your slow HTTP requests by sorting on the 'Total time' column, and download the cProfile stats file for further analysis.
Stats files can be analyzed visually for example with Snakeviz or Tuna.
- Moisés López <[email protected]>
- Tom Blauwendraat <[email protected]>
This module is maintained by the OCA.
OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.
To contribute to this module, please visit https://odoo-community.org.