Auspex
Auspex

Reputation: 2254

Profiling Plone/Zope

What is current best practice for profiling Plone/Zope applications on a Plone 4.1/Zope 2.13 system?

Products.ZopeProfiler and the Plone.org version of CallProfiler both fail at install time with:

Traceback (most recent call last):
  File "/home/derek/plone4/buildout-cache/eggs/Zope2-2.13.10-py2.6.egg/OFS/Application.py", line 689, in install_product
    initmethod(context)
  File "/home/derek/plone4/buildout-cache/eggs/Products.ZopeProfiler-2.0.1-py2.6.egg/Products/ZopeProfiler/__init__.py", line 8, in initialize
    control_panel = context._ProductContext__app.Control_Panel
AttributeError: 'NoneType' object has no attribute 'Control_Panel'

z3c.profiler wants to install a lot of apparently-incompatible dependencies (not surprising since it's intended for Zope3).

collective.profiler looks promising, and installs, but doesn't let me profile the __call__ method of a View, because the method doesn't have a __dict__ attribute.

Upvotes: 4

Views: 774

Answers (2)

do3cc
do3cc

Reputation: 204

The ZopeProfiler in Version 2.0.2 works just fine with Plone 4.1

Upvotes: 0

miano
miano

Reputation: 11

Have a look at repoze.profile and it's documentation. It runs as WSGI middleware component which aggregates profiling data across all requests to the WSGI application.

Upvotes: 0

Related Questions