For the python dumpcatcher client I decided to go with the standard python logging infrastructure. While there was definitely something lacking in the python documentation for logging.py I found all the information I needed with a combination of the docs and the source code itself.
Creating a python client for the dumpcatcher is now pretty simple:
import handler # from dumpcatcher.clients.python.logging
logger = logging.getLogger('my_tag')
logger.setLevel(logging.DEBUG)
logger.addHandler(
DumpcatcherHandler('agtkdW1wY2F0Y2hlcnINCxIHUHJvZHVjdBgCDA',
'9b6c65910428419db0d0b730278b72e3',
'http://localhost:8080/add',
5))
try:
'a' + 1 # TypeError!
except Exception, e:
logger.exception('Oh man! Look at this!')
The output of which looks something like:
2009-06-21 06:36:57 |
demo |
40 |
handler.py:110:broken Oh man! Look at this! |
handler.py:110:broken Oh man! Look at this!
Traceback (most recent call last):
File "/home/jlapenna/code/dumpcatcher/clients/python/logging/handler.py", line 108, in broken
'a' + 1
TypeError: cannot concatenate 'str' and 'int' objects
File "/home/jlapenna/code/dumpcatcher/clients/python/logging/handler.py", line 110, in broken
logger.exception('Oh man! Look at this!') |
Looking at this now, it seems that all I have left is the java client and data aggregation before I'm feature complete!