def sanitize_url(url, hide_fields):
    '''
    Make sure no secret fields show up in logs
    '''
    if isinstance(hide_fields, list):
        url_comps = splitquery(url)
        log_url = url_comps[0]
        if len(url_comps) > 1:
            log_url += '?'
        for pair in url_comps[1:]:
            url_tmp = None
            for field in hide_fields:
                comps_list = pair.split('&')
                if url_tmp:
                    url_tmp = url_tmp.split('&')
                    url_tmp = _sanitize_url_components(url_tmp, field)
                else:
                    url_tmp = _sanitize_url_components(comps_list, field)
            log_url += url_tmp
        return log_url.rstrip('&')
    else:
        return six.text_type(url)
def sanitize_url ( url , hide_fields ) : if isinstance ( hide_fields , list ) : url_comps = splitquery ( url ) log_url = url_comps [ 0 ] if len ( url_comps ) > 1 : log_url += '?' for pair in url_comps [ 1 : ] : url_tmp = None for field in hide_fields : comps_list = pair . split ( '&' ) if url_tmp : url_tmp = url_tmp . split ( '&' ) url_tmp = _sanitize_url_components ( url_tmp , field ) else : url_tmp = _sanitize_url_components ( comps_list , field ) log_url += url_tmp return log_url . rstrip ( '&' ) else : return six . text_type ( url )
Make sure no secret fields show up in logs