Changeset 2435
- Timestamp:
- 06/14/09 16:40:03
- Files:
-
- branches/python3/cherrypy/_cplogging.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/python3/cherrypy/_cplogging.py
r2390 r2435 7 7 logfmt = logging.Formatter("%(message)s") 8 8 import os 9 import email.utils 9 import email.utils 10 10 import sys 11 11 … … 78 78 outheaders = response.headers 79 79 inheaders = request.headers 80 if response.output_status is None: 81 status = "-" 82 else: 83 status = str(response.output_status.split(b" ", 1)[0], 'ISO-8859-1') 80 84 81 85 atoms = {'h': remote.name or remote.ip, … … 84 88 't': self.time(), 85 89 'r': request.request_line, 86 's': response.status.split(" ", 1)[0],90 's': status, 87 91 'b': outheaders.get('Content-Length', '') or "-", 88 92 'f': inheaders.get('Referer', ''), … … 96 100 # and backslash for us. All we have to do is strip the quotes. 97 101 v = repr(v)[2:-1] 98 102 99 103 # in python 3.0 the repr of bytes (as returned by encode) 100 104 # uses double \'s. But then the logger escapes them yet, again 101 105 # resulting in quadruple slashes. Remove the extra one here. 102 106 v = v.replace('\\\\', '\\') 103 107 104 108 # Escape double-quote. 105 109 atoms[k] = v

