ohoh
OhOh is a debugger for your WSGI applications. Using OhOh, you can inspect the stack frames of a wsgi app that’s thrown an exception.
Usage
Use this command to serve your wsgi app in debug mode:
> ohoh "package.module:wsgi_app" -s localost:5000
For a full range of options, see ohoh -h
OhOh provides a plug-in for the httpie utility. You can install httpie using pip install httpie. Once you send a request that results in an exception, you will enter the debugger automatically:
> http localhost:5000
HTTP/1.0 500 Internal Server Error
Date: Fri, 24 Jul 2015 23:41:20 GMT
Server: WSGIServer/0.2 CPython/3.4.2
Content-Type: text/plain; charset=utf-8
OhOh-Debug-Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1N [Truncated (5061 chars) ...]
Location: http://localhost:5000/ohoh-debug/
Content-Length: 454
Traceback (most recent call last):
File "c:\dev\ohoh\build\lib\ohoh\middleware.py", line 57, in __call__
return self._app(environ, start_response)
File "tests\mock_app.py", line 6, in simple_err_app
path.join("foo bar", 475564)
File "C:\Python34\lib\ntpath.py", line 110, in join
p_drive, p_path = splitdrive(p)
File "C:\Python34\lib\ntpath.py", line 159, in splitdrive
if len(p) > 1:
TypeError: object of type 'int' has no len()
OhOh Interactive Debugger v0.1.dev28+n8ec9121
(odb) up
> c:\python34\lib\ntpath.py(110)join()
-> p_drive, p_path = splitdrive(p)
(odb)
Commands
The following commands are supported by the command interpreter (you can type help at the debugger prompt for online help with commands):
Command |
Description |
|---|---|
Client commands |
|
quit |
Exit the debugger. |
token |
View the current debug server token. |
url |
View or set the url to which debug requests are sent. |
version |
View the version number of the debugger. |
Debug commands |
|
! |
Execute a one-line statement in the current context. |
args |
Print the argument list to the current function. |
p |
Print the value of an expression. |
pp |
Pretty print the value of an expression. |
where |
Print the stack trace, with the most recent call last. |
up |
Move up one frame in the stack. |
down |
Move down one frame in the stack. |
Metadata
Release files for ohoh 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distributions (sdists)
| File | Size | Uploaded | |
|---|---|---|---|
| ohoh-0.1.0.zip | 23.4 kB | Details | |
| ohoh-0.1.0.tar.gz | 15.6 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ohoh-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
| ohoh-0.1.0-py2-none-any.whl | Python 2 | none | any | Details |
Total release size: 65.7 kB
Release files / ohoh-0.1.0.zip
| Download URL | ohoh-0.1.0.zip |
|---|---|
| Size | 23.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
115c7e34d6782388174b2859043746729753c50272b1ac31520cb0dcdf9a8469
|
|
BLAKE2b-256 checksum How to use checksums |
8ad421f94837a8af351e0968bdbcbe62c68a470af42ea826600e069edd9b1a06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / ohoh-0.1.0.tar.gz
| Download URL | ohoh-0.1.0.tar.gz |
|---|---|
| Size | 15.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5662fc24db80a57fd68a43e9670dbd8b5bae62754ca5592fb93f24c781b9e954
|
|
BLAKE2b-256 checksum How to use checksums |
876d116633ff375b3ff1dc187a8fbb247aff141d48286c24e9d4f128ea528dd8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / ohoh-0.1.0-py3-none-any.whl
| Download URL | ohoh-0.1.0-py3-none-any.whl |
|---|---|
| Size | 11.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3c373201003b0acd992d419332508d65da7099cf1c03b45a51448e9aeb2280e5
|
|
BLAKE2b-256 checksum How to use checksums |
9d335f264d42a5d993513ea708e4bd41bf13a49d3ab30ca78e0a6e66a7d089ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / ohoh-0.1.0-py2-none-any.whl
| Download URL | ohoh-0.1.0-py2-none-any.whl |
|---|---|
| Size | 14.9 kB |
| Tags | Python 2 |
|
SHA-256 checksum How to use checksums |
781779103da3501874977ce575e60d2346c677840f14f77f72d5baf063e205d8
|
|
BLAKE2b-256 checksum How to use checksums |
4c9cf188a7d88993d2c8635117559db8b874291c63d61fb055efcb7d8ee41046
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |