B
    3\                 @   s,   d dl Z d dlmZ ddlmZ dd ZdS )    N)
access_log   )prometheus_log_methodc             C   s   |   }| j}|dk s|dkr&tj}n&|dk r6tj}n|dk rFtj}ntj}d| j  }t||j	|j
|j|d}d}|dkr|jdd	|d
< |d }|dkr|dkr|tjt|jdd ||jf | t|  dS )a  log a bit more information about each request than tornado's default
    
    - move static file get success to debug-level (reduces noise)
    - get proxied IP instead of proxy IP
    - log referer for redirect and failed requests
    - log user-agent for failed requests
    i,  i0  i  i  g     @@)statusmethodZipurirequest_timez3{status} {method} {uri} ({ip}) {request_time:.2f}msZRefererNoneZrefererz referer={referer}i     )indentN)Z
get_statusrequestr   debuginfoZwarningerrorr   dictr   Z	remote_ipr   Zheadersgetjsondumpsformatr   )Zhandlerr   r   Z
log_methodr   nsmsg r   +lib/python3.7/site-packages/notebook/log.pylog_request   s0    r   )r   Ztornado.logr   Zmetricsr   r   r   r   r   r   <module>   s   