diff options
Diffstat (limited to 'README.mkd')
-rw-r--r-- | README.mkd | 55 |
1 files changed, 54 insertions, 1 deletions
@@ -201,7 +201,8 @@ a specifier for generating 100 megabytes: @100m -The supported suffixes are: +Data is generated and served efficiently - if you really want to send a +terabyte of data to a client, __pathod__ can do it. The supported suffixes are: b = 1024**0 (bytes) k = 1024**1 (kilobytes) @@ -232,6 +233,58 @@ Supported data types are: ascii bytes +# API + +__pathod__ exposes a simple API, intended to make it possible to drive and +inspect the daemon remotely for use in unit testing and the like. The next +release will include a client-side library that makes this transparent. + +### /api/log + +Returns the current log buffer. At the moment the buffer size is 500 entries - +when the log grows larger than this, older entries are discarded. The returned +data is a JSON dictionary, with the form: + + { + 'logs': [ ENTRIES ] + } + +Where each entry looks like this: + + { + # Record of actions taken at specified byte offsets + 'actions': [(200, 'disconnect'), (10, 'pause', 1)], + # HTTP return code + 'code': 200, + # Request duration in seconds + 'duration': 0.00020599365234375, + # ID unique to this invocation of pathod + 'id': 2, + # The request that triggered the response + 'request': { + 'full_url': 'http://testing:9999/p/200:b@1000:p1,10:d200', + 'headers': { + 'Accept': '*/*', + 'Host': 'localhost:9999', + 'User-Agent': 'curl/7.21.4' + }, + 'host': 'localhost:9999', + 'method': 'POST', + 'path': '/p/200:b@1000:p1,10:d200', + 'protocol': 'http', + 'query': '', + 'remote_address': ('10.0.0.234', 63448), + 'uri': '/p/200:b@1000:p1,10:d200', + 'version': 'HTTP/1.1' + }, + # The response spec that was served. You can re-parse this to get full + # details on the response. + 'spec': '200:b@1000:p1,10:d200', + # Time at which response startd. + 'started': 1335735586.469218 + } + + # Installing |