ZOPEDEBUG
Zopeをdebugする方法あれこれ。
上2つ以外でも、付属のドキュメントを読んでおいてソンはないです。
そして、Zope Developer's Guide を読んでおくとハッピーに。
これらの内容のことは、おいおい書いていきます。
localhost から medusa monitor port に接続して、 インタラクティブな python プロンプト を使った デバッグができます。
Zopeの emergency user を作ります。:
$ python zpasswd.py access
Username:
Password:
Verift password:
Please choose a format form:
SHA - SHA-1 hashed password
CRYPT - UNIX-style crypt password
CLEARTEXT - no protection
ここで、暗号化をしない、CLEARTEXT を選択してください。
-m ポート番号
ZServer/medusa/monitor_client.py を実行します。 (Windowsユーザは、monitor_client_win32.py ):
$ python ./ZServer/medusa/monitor_client.py localhost ポート番号
Enter Password:
ここで、設定済みの emergency userの パスワードを入力します。すると、python の プロンプトが開きます。あとは以下のように Zope をインポートして、なんでもできますね。:
>>> import Zope
>>> app=Zope.app()
>>> dir(app.Control_Panel.Products)
['ExternalMethod', 'Hotfix_2002-03-01', 'MIMETools', 'MailHost', 'OFSP', 'PageTemplates', 'PluginIndexes', 'Poll', 'PythonScripts', 'Sessions', 'SiteAccess', 'StandardCacheManagers', 'TemporaryFolder', 'Transience', 'ZCatalog', 'ZGadflyDA', 'ZSQLMethods', 'ZopeTutorial', '_objects']
デバッグセッションを開いてから、最新のODBに合せるには、:
>>> app._p_jar.sync()
デバッグセッション側の操作を ODB に反映させるには、:
>>> get_transaction().commit()
とやれば、いいみたいです。
続きは、また。。。。
| Last edited Mon, 11 Sep 2006 13:59:42 +0900 | Edit this page |