Application Profiler
This module provides a middleware that profiles each request with the cProfile module. This can help identify bottlenecks in your code that may be slowing down your application.
-
class werkzeug.middleware.profiler.ProfilerMiddleware(app, stream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>, sort_by=('time', 'calls'), restrictions=(), profile_dir=None, filename_format='{method}.{path}.{elapsed:.0f}ms.{time:.0f}.prof') -
Wrap a WSGI application and profile the execution of each request. Responses are buffered so that timings are more exact.
If
streamis given,pstats.Statsare written to it after each request. Ifprofile_diris given,cProfiledata files are saved to that directory, one file per request.The filename can be customized by passing
filename_format. If it is a string, it will be formatted usingstr.format()with the following fields available:-
{method}- The request method; GET, POST, etc. -
{path}- The request path or ‘root’ should one not exist. -
{elapsed}- The elapsed time of the request. -
{time}- The time of the request.
If it is a callable, it will be called with the WSGI
environdict and should return a filename.Parameters: - app – The WSGI application to wrap.
-
stream – Write stats to this stream. Disable with
None. -
sort_by – A tuple of columns to sort stats by. See
pstats.Stats.sort_stats(). -
restrictions – A tuple of restrictions to filter stats by. See
pstats.Stats.print_stats(). - profile_dir – Save profile data files to this directory.
- filename_format – Format string for profile data file names, or a callable returning a name. See explanation above.
from werkzeug.middleware.profiler import ProfilerMiddleware app = ProfilerMiddleware(app)
Changed in version 0.15: Stats are written even if
profile_diris given, and can be disable by passingstream=None.New in version 0.15: Added
filename_format.New in version 0.9: Added
restrictionsandprofile_dir. -
© 2007–2020 Pallets
Licensed under the BSD 3-clause License.
https://werkzeug.palletsprojects.com/en/0.15.x/middleware/profiler/