Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325
ó l]Œjc@sídZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z yddl Z ddl Z Wne k r³eZ nXddlmZmZdZejdkrèdZndZeaeed„Zd „Zd „Zd „Zd „Zd „Zd„ZejdejƒZ d„Z!de"fd„ƒYZ#de$fd„ƒYZ%de&fd„ƒYZ'de(fd„ƒYZ)de)fd„ƒYZ*e*Z+d„Z,ed„Z-d„Z.dS(s Configuration functions for the logging package for Python. The core package is based on PEP 282 and comments thereto in comp.lang.python, and influenced by Apache's log4j system. Copyright (C) 2001-2013 Vinay Sajip. All Rights Reserved. To use, simply 'import logging' and log away! iÿÿÿÿN(tThreadingTCPServertStreamRequestHandleriF#twin32iF'ihcCs¦ddl}|j|ƒ}t|dƒr:|j|ƒn |j|ƒt|ƒ}tjƒz7tjjƒtj 2t ||ƒ}t |||ƒWdtj ƒXdS(sD Read the logging configuration from a ConfigParser-format file. This can be called several times from an application, allowing an end user the ability to select from various pre-canned configurations (if the developer provides a mechanism to present the choices and load the chosen configuration). iÿÿÿÿNtreadline( t ConfigParserthasattrtreadfptreadt_create_formatterstloggingt _acquireLockt _handlerstcleart _handlerListt_install_handlerst_install_loggerst _releaseLock(tfnametdefaultstdisable_existing_loggersRtcpt formattersthandlers((s&/usr/lib64/python2.7/logging/config.pyt fileConfig5s     cCs�|jdƒ}|jdƒ}t|ƒ}x\|D]T}|d|}yt||ƒ}Wq1tk r„t|ƒt||ƒ}q1Xq1W|S(s)Resolve a dotted name to a global object.t.i(tsplittpopt __import__tgetattrtAttributeError(tnametusedtfoundtn((s&/usr/lib64/python2.7/logging/config.pyt_resolveTs    cCstd„|ƒS(NcSs |jƒS(N(tstrip(tx((s&/usr/lib64/python2.7/logging/config.pytcs(tmap(talist((s&/usr/lib64/python2.7/logging/config.pyt _strip_spacesbscCs t|tƒr|S|jdƒS(Nsutf-8(t isinstancetstrtencode(ts((s&/usr/lib64/python2.7/logging/config.pyt_encodedesc Cs|jddƒ}t|ƒs"iS|jdƒ}t|ƒ}i}xÓ|D]Ë}d|}|j|ƒ}d|kr�|j|ddƒ}nd }d|kr·|j|ddƒ}nd }tj}d|krü|j|dƒ} | rüt| ƒ}qün|||ƒ} | ||[a-z]+)://(?P.*)$s ^\s*(\w+)\s*s^\.\s*(\w+)\s*s^\[\s*(\w+)\s*\]\s*s^\d+$t ext_converttextt cfg_converttcfgcCs@t|ƒ|_||j_ttƒtjkr<t|_ndS(N(RxtconfigR{R}Rttypest FunctionTypetimporter(R‚R�((s&/usr/lib64/python2.7/logging/config.pyt__init__{s c Csô|jdƒ}|jdƒ}yy|j|ƒ}x_|D]W}|d|7}yt||ƒ}Wq7tk r�|j|ƒt||ƒ}q7Xq7W|SWnVtk rïtjƒd\}}td||fƒ}|||_ |_ |‚nXdS(s` Resolve strings to objects using standard import and attribute syntax. RiisCannot resolve %r: %sN( RRR“RRt ImportErrortsystexc_infoRtt __cause__t __traceback__( R‚R,RRR tfragtettbtv((s&/usr/lib64/python2.7/logging/config.pytresolve…s"    cCs |j|ƒS(s*Default converter for the ext:// protocol.(Rž(R‚Rƒ((s&/usr/lib64/python2.7/logging/config.pyRŒœscCsO|}|jj|ƒ}|dkr7td|ƒ‚n||jƒ}|j|jƒd}xê|rJ|jj|ƒ}|r–||jƒd}n‚|jj|ƒ}|r|jƒd}|j j|ƒsÝ||}qyt |ƒ}||}Wqt k r||}qXn|r1||jƒ}qatd||fƒ‚qaW|S(s*Default converter for the cfg:// protocol.sUnable to convert %risUnable to convert %r at %rN( t WORD_PATTERNRsR6RttendR�tgroupst DOT_PATTERNt INDEX_PATTERNt DIGIT_PATTERNtintt TypeError(R‚RƒtrestRvtdR‰R!((s&/usr/lib64/python2.7/logging/config.pyRŽ s2     cCs/t|tƒ r7t|tƒr7t|ƒ}||_nôt|tƒ rnt|tƒrnt|ƒ}||_n½t|tƒ r¥t|tƒr¥t|ƒ}||_n†t|tƒr+|j j |ƒ}|r+|j ƒ}|d}|j j |dƒ}|r(|d}t||ƒ}||ƒ}q(q+n|S(sé Convert values to an appropriate type. dicts, lists and tuples are replaced by their converting alternatives. Strings are checked to see if they have a conversion format and are converted if they do. tprefixtsuffixN(R)RxRyR{R~R\RRŠt basestringtCONVERT_PATTERNRst groupdicttvalue_convertersR3R6R(R‚RƒRvR¨R©t converterRª((s&/usr/lib64/python2.7/logging/config.pyR|Âs*         c Csâ|jdƒ}t|dƒ rUttdƒrUt|ƒtjkrU|j|ƒ}n|jddƒ}tg|D]"}t|ƒrq|||f^qqƒ}||�}|rÞx-|j ƒD]\}}t |||ƒq»Wn|S(s1Configure an object with a user-supplied factory.s()t__call__t ClassTypeRN( RRR‘R}R±RžR6RyRwtitemstsetattr( R‚R�R>tpropstktkwargsR„RRƒ((s&/usr/lib64/python2.7/logging/config.pytconfigure_customÞs45 cCs"t|tƒrt|ƒ}n|S(s0Utility function which converts lists to tuples.(R)R\RŠ(R‚Rƒ((s&/usr/lib64/python2.7/logging/config.pytas_tupleìs(R†R‡RˆtretcompileR¬RŸR¢R£R¤R®RR“R”RžRŒRŽR|R·R¸(((s&/usr/lib64/python2.7/logging/config.pyR‹gs"    "  tDictConfiguratorcBsheZdZd„Zd„Zd„Zd„Zd„Zd„Ze d„Z e d„Z e d „Z RS( s] Configure logging using a dictionary-like object to describe the configuration. cCsù|j}d|kr$tdƒ‚n|ddkrKtd|dƒ‚n|jdtƒ}i}tjƒzz|rõ|jd|ƒ}x¨|D] }|tjkr·td|ƒ‚q�yLtj|}||}|jddƒ}|r|j tj |ƒƒnWq�t k r.} td || fƒ‚q�Xq�W|jd |ƒ} xU| D]M}y|j || |t ƒWqLt k r˜} td || fƒ‚qLXqLW|jd dƒ} | ræy|j| t ƒWqòt k rî} td | ƒ‚qòXqænñ|jdt ƒ} tjjƒtj2|jd|ƒ} xU| D]M}y|j| |ƒ| |RÎtcnameRStthRµR¶R„RÏ((s&/usr/lib64/python2.7/logging/config.pyRǾsb 4     5 cCs]xV|D]N}y|j|jd|ƒWqtk rT}td||fƒ‚qXqWdS(s.Add handlers to a logger from a list of names.RsUnable to add handler %r: %sN(R_R�RÁRt(R‚RmRRUR›((s&/usr/lib64/python2.7/logging/config.pyt add_handlersøs  cCs¼|jddƒ}|dk r7|jtj|ƒƒn|s¸x|jD]}|j|ƒqHW|jddƒ}|rŠ|j||ƒn|jddƒ}|r¸|j||ƒq¸ndS(sU Perform configuration which is common to root and non-root loggers. RDRR¾N( R3R6RIR RÀRR^RÞRÔ(R‚RmR�R½RDRURR¾((s&/usr/lib64/python2.7/logging/config.pytcommon_logger_configs cCsPtj|ƒ}|j|||ƒ|jddƒ}|dk rL||_ndS(s.Configure a non-root logger from a dictionary.R[N(R RdRßR3R6R[(R‚RR�R½RmR[((s&/usr/lib64/python2.7/logging/config.pyRÂs  cCs#tjƒ}|j|||ƒdS(s*Configure a root logger from a dictionary.N(R RdRß(R‚R�R½RX((s&/usr/lib64/python2.7/logging/config.pyRÃs ( R†R‡RˆRÍRÄRÅRÔRÇRÞR¿RßRÂRÃ(((s&/usr/lib64/python2.7/logging/config.pyR»òs Ÿ   :   cCst|ƒjƒdS(s%Configure logging using a dictionary.N(tdictConfigClassRÍ(R�((s&/usr/lib64/python2.7/logging/config.pyt dictConfig!scsptstdƒ‚ndtfd„ƒY}dtfd„ƒY}dtjf‡fd†ƒY‰ˆ|||ƒS(sW Start up a socket server on the specified port, and listen for new configurations. These will be sent as a file suitable for processing by fileConfig(). Returns a Thread object on which you can call start() to start the server, and which you can join() when appropriate. To stop the server, call stopListening(). s listen() needs threading to worktConfigStreamHandlercBseZdZd„ZRS(s¤ Handler for a logging configuration request. It expects a completely new logging configuration and uses fileConfig to install it. c Ss ddl}y@|j}|jdƒ}t|ƒdkrKtjd|ƒd}|jj|ƒ}x3t|ƒ|kr–||j|t|ƒƒ}qdWy>ddl}|j|ƒ}t|t ƒsÊt ‚t |ƒWnQt j |ƒ}yt|ƒWq)ttfk r‚q)tjƒq)XnX|jjrK|jjjƒqKnWnMtjk r›}t|jtƒsy‚qœ|jd} | tkrœ‚qœnXdS(sè Handle a request. Each request is expected to be a 4-byte length, packed using struct.pack(">L", n), followed by the config file. Uses fileConfig() to do the grunt work. iÿÿÿÿNis>Li(ttempfilet connectiontrecvR4tstructtunpacktjsontloadsR)RytAssertionErrorRát cStringIOtStringIORtKeyboardInterruptt SystemExitt tracebackt print_exctservertreadytsettsocketterrorRCRŠt RESET_ERROR( R‚RãtconntchunktslenRèR¨tfileR›terrcode((s&/usr/lib64/python2.7/logging/config.pythandle:s<  !    (R†R‡RˆRü(((s&/usr/lib64/python2.7/logging/config.pyRâ3stConfigSocketReceivercBs2eZdZdZdeddd„Zd„ZRS(sD A simple TCP socket-based logging config receiver. it localhostcSsLtj|||f|ƒtjƒd|_tjƒd|_||_dS(Nii(RR”R R tabortRttimeoutRò(R‚thosttportRÉRò((s&/usr/lib64/python2.7/logging/config.pyR”ks     cSs�ddl}d}xj|s~|j|jjƒggg|jƒ\}}}|r^|jƒntjƒ|j}tjƒqW|jj ƒdS(Niÿÿÿÿi( tselectRôtfilenoRthandle_requestR R RÿRtclose(R‚RRÿtrdtwrtex((s&/usr/lib64/python2.7/logging/config.pytserve_until_stoppedts     N(R†R‡Rˆtallow_reuse_addresstDEFAULT_LOGGING_CONFIG_PORTR6R”R (((s&/usr/lib64/python2.7/logging/config.pyRýds tServercs eZ‡fd†Zd„ZRS(csAtˆ|ƒjƒ||_||_||_tjƒ|_dS(N(tsuperR”trcvrthdlrRt threadingtEventRò(R‚RRR(R (s&/usr/lib64/python2.7/logging/config.pyR”„s    cSs~|jd|jd|jd|jƒ}|jdkrI|jd|_n|jjƒtjƒ|atj ƒ|j ƒdS(NRRÉRòii( RRRRòtserver_addressRóR R t _listenerRR (R‚Rñ((s&/usr/lib64/python2.7/logging/config.pytrun‹s    (R†R‡R”R((R (s&/usr/lib64/python2.7/logging/config.pyR ‚s(tthreadtNotImplementedErrorRRRtThread(RRâRý((R s&/usr/lib64/python2.7/logging/config.pytlisten&s 1cCs8tjƒztr%dt_danWdtjƒXdS(sN Stop the listening server which was created with a call to listen(). iN(R R RRÿR6R(((s&/usr/lib64/python2.7/logging/config.pyt stopListening™s    (/RˆR–R tlogging.handlersRôRætosRïR¹R‘RëRRR•R6t SocketServerRRR tplatformRöRRuRR"R(R-RRRRºtIRrRwRyRxR\R~RŠRtobjectR‹R»RàRáRR(((s&/usr/lib64/python2.7/logging/config.pyts@`         + \ % ‹ÿ.  s