
­­­­­­­­­­­­­­­­­­
<!DOCTYPE html>
<html>
3
;j~                 @   s   d dl mZ d dlZd dlZd dlZd dlZd dlZddlmZm	Z	 ej
dZdd Zdd	d
ZdddZdddZdddZdddZdd Zdd Zdd Zd ddZdS )!    )print_functionN   )config	constantskcarec             C   s   t | tj tj|  d S )N)	_printlvlr   PRINT_DEBUGkcarelogdebug)message r   //usr/libexec/kcare/python/kcarectl/log_utils.pylogdebug   s    r   Tc             C   s   |rt | tj tj|  d S )N)r   r   
PRINT_INFOr	   info)r   	print_msgr   r   r   loginfo   s    r   c             C   s$   |rt | tjtjd tj|  d S )N)file)r   r   
PRINT_WARNsysstderrr	   warning)r   r   r   r   r   logwarn   s    r   c             C   s$   |rt | tjtjd tj|  d S )N)r   )r   r   PRINT_ERRORr   r   r	   error)r   r   r   r   r   logerror&   s    r   c             C   s&   |rt jtjkrtj  tj|  d S )N)r   r   r   PRINT_LEVEL	traceback	print_excr	   	exception)r   r   r   r   r   logexc,   s    r    c             C   s   |t jkrt| |d d S )N)r   )r   r   print)r   levelr   r   r   r   r   2   s    
r   c              C   s:   t jd} t jjdt jjjd}|jt j |j|  |S )Nz kcare %(levelname)s: %(message)sz/dev/log)addressZfacility)logging	FormatterhandlersZSysLogHandlerZLOG_USERsetLevelINFOsetFormatter)Zsyslog_formattersyslog_handlerr   r   r   get_syslog_handler7   s
    

r+   c             C   sn   t jd}tj dkrJt jjtjddd}|jt	| t j
 |j| |S t j }|j|  |j| |S d S )Nz&%(asctime)s %(levelname)s: %(message)sr   i      )ZmaxBytesZbackupCounti   )r$   r%   osgetuidr&   ZRotatingFileHandlerr   LOG_FILEr'   minr(   r)   StreamHandler)r"   Zkcare_formatterkcare_handlerr   r   r   get_kcare_handler?   s    



r3   c             C   s   g t jd d < yt| }t j| W n, tk
rP } zt j| W Y d d }~X nX tjjdryt	 }t j| W n, tk
r } zt j| W Y d d }~X nX d S )Nz/dev/log)
r	   r&   r3   
addHandler	Exceptionr   r-   pathexistsr+   )r"   r2   exr*   r   r   r   initialize_loggingP   s    r9   c             C   s"   |pd}t dj|t| | d S )Nz<route cannot be logged>z8Unable to fetch {0}. Please try again later (error: {1}))r   formatstr)r8   urlstdoutr   r   r   print_cln_http_errora   s    r>   )T)T)T)T)N)NT)
__future__r   r$   Zlogging.handlersr-   r   r    r   r   	getLoggerr	   r   r   r   r   r    r   r+   r3   r9   r>   r   r   r   r   <module>   s"   





