~ubuntu-branches/ubuntu/trusty/swift/trusty-updates

« back to all changes in this revision

Viewing changes to swift/common/middleware/proxy_logging.py

  • Committer: Package Import Robot
  • Author(s): Chuck Short, James Page, Chuck Short
  • Date: 2013-08-13 10:37:13 UTC
  • mfrom: (1.2.21)
  • Revision ID: package-import@ubuntu.com-20130813103713-1ctbx4zifyljs2aq
Tags: 1.9.1-0ubuntu1
[ James Page ]
* d/control: Update VCS fields for new branch locations.

[ Chuck Short ]
* New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
77
77
from swift.common.utils import (get_logger, get_remote_client,
78
78
                                get_valid_utf8_str, config_true_value,
79
79
                                InputProxy)
 
80
from swift.common.constraints import MAX_HEADER_SIZE
80
81
 
81
82
QUOTE_SAFE = '/:'
82
83
 
112
113
        self.access_logger = get_logger(access_log_conf,
113
114
                                        log_route='proxy-access')
114
115
        self.access_logger.set_statsd_prefix('proxy-server')
 
116
        self.reveal_sensitive_prefix = int(conf.get('reveal_sensitive_prefix',
 
117
                                                    MAX_HEADER_SIZE))
115
118
 
116
119
    def method_from_req(self, req):
117
120
        return req.environ.get('swift.orig_req_method', req.method)
122
125
    def mark_req_logged(self, req):
123
126
        req.environ['swift.proxy_access_log_made'] = True
124
127
 
 
128
    def obscure_sensitive(self, value):
 
129
        if not value:
 
130
            return '-'
 
131
        if len(value) > self.reveal_sensitive_prefix:
 
132
            return value[:self.reveal_sensitive_prefix] + '...'
 
133
        return value
 
134
 
125
135
    def log_request(self, req, status_int, bytes_received, bytes_sent,
126
136
                    request_time):
127
137
        """
156
166
                status_int,
157
167
                req.referer,
158
168
                req.user_agent,
159
 
                req.headers.get('x-auth-token'),
 
169
                self.obscure_sensitive(req.headers.get('x-auth-token')),
160
170
                bytes_received,
161
171
                bytes_sent,
162
172
                req.headers.get('etag', None),