diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2010-06-29 15:31:15 (GMT) |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2010-06-29 15:31:15 (GMT) |
commit | d31f363b480158a10182feae89a0a363d08ad0aa (patch) | |
tree | 0f4071c5e974ced8fa27612b6256842f054754d2 | |
parent | d751c2eafcc0204c98f90b4c528d97b0bd2274e0 (diff) | |
download | cpython-d31f363b480158a10182feae89a0a363d08ad0aa.zip cpython-d31f363b480158a10182feae89a0a363d08ad0aa.tar.gz cpython-d31f363b480158a10182feae89a0a363d08ad0aa.tar.bz2 |
Added information about pickle security and SocketHandler, and some cross-reference targets.
-rw-r--r-- | Doc/library/logging.rst | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/Doc/library/logging.rst b/Doc/library/logging.rst index 9df4794..e59c90c 100644 --- a/Doc/library/logging.rst +++ b/Doc/library/logging.rst @@ -1415,6 +1415,8 @@ When this script is run, the output should look something like this:: 2008-01-18 14:49:54,033 d.e.f WARNING IP: 127.0.0.1 User: jim A message at WARNING level with 2 parameters +.. _multiple-processes: + Logging to a single file from multiple processes ------------------------------------------------ @@ -1725,6 +1727,8 @@ subclasses. However, the :meth:`__init__` method in subclasses needs to call :exc:`NotImplementedError`. +.. _stream-handler: + StreamHandler ^^^^^^^^^^^^^ @@ -1758,6 +1762,8 @@ and :meth:`flush` methods). no output, so an explicit :meth:`flush` call may be needed at times. +.. _file-handler: + FileHandler ^^^^^^^^^^^ @@ -1766,7 +1772,7 @@ sends logging output to a disk file. It inherits the output functionality from :class:`StreamHandler`. -.. class:: FileHandler(filename, mode='a', encoding=None, delay=0) +.. class:: FileHandler(filename, mode='a', encoding=None, delay=False) Returns a new instance of the :class:`FileHandler` class. The specified file is opened and used as the stream for logging. If *mode* is not specified, @@ -1784,6 +1790,7 @@ sends logging output to a disk file. It inherits the output functionality from Outputs the record to the file. +.. _null-handler: NullHandler ^^^^^^^^^^^ @@ -1807,6 +1814,8 @@ for use by library developers. See :ref:`library-config` for more information on how to use :class:`NullHandler`. +.. _watched-file-handler: + WatchedFileHandler ^^^^^^^^^^^^^^^^^^ @@ -1845,6 +1854,7 @@ this value. changed. If it has, the existing stream is flushed and closed and the file opened again, before outputting the record to the file. +.. _rotating-file-handler: RotatingFileHandler ^^^^^^^^^^^^^^^^^^^ @@ -1885,6 +1895,7 @@ module, supports rotation of disk log files. Outputs the record to the file, catering for rollover as described previously. +.. _timed-rotating-file-handler: TimedRotatingFileHandler ^^^^^^^^^^^^^^^^^^^^^^^^ @@ -1894,7 +1905,7 @@ The :class:`TimedRotatingFileHandler` class, located in the timed intervals. -.. class:: TimedRotatingFileHandler(filename, when='h', interval=1, backupCount=0, encoding=None, delay=0, utc=False) +.. class:: TimedRotatingFileHandler(filename, when='h', interval=1, backupCount=0, encoding=None, delay=False, utc=False) Returns a new instance of the :class:`TimedRotatingFileHandler` class. The specified file is opened and used as the stream for logging. On rotating it also @@ -1937,6 +1948,9 @@ timed intervals. one is deleted. The deletion logic uses the interval to determine which files to delete, so changing the interval may leave old files lying around. + If *delay* is true, then file opening is deferred until the first call to + :meth:`emit`. + .. method:: doRollover() @@ -1948,6 +1962,8 @@ timed intervals. Outputs the record to the file, catering for rollover as described above. +.. _socket-handler: + SocketHandler ^^^^^^^^^^^^^ @@ -1994,6 +2010,11 @@ sends logging output to a network socket. The base class uses a TCP socket. Pickles the record's attribute dictionary in binary format with a length prefix, and returns it ready for transmission across the socket. + Note that pickles aren't completely secure. If you are concerned about + security, you may want to override this method to implement a more secure + mechanism. For example, you can sign pickles using HMAC and then verify + them on the receiving end, or alternatively you can disable unpickling of + global objects on the receiving end. .. method:: send(packet) @@ -2001,6 +2022,8 @@ sends logging output to a network socket. The base class uses a TCP socket. partial sends which can happen when the network is busy. +.. _datagram-handler: + DatagramHandler ^^^^^^^^^^^^^^^ @@ -2034,6 +2057,8 @@ over UDP sockets. Send a pickled string to a socket. +.. _syslog-handler: + SysLogHandler ^^^^^^^^^^^^^ @@ -2223,6 +2248,7 @@ extensions for Python installed. lookup to get the message ID. This version returns 1, which is the base message ID in :file:`win32service.pyd`. +.. _smtp-handler: SMTPHandler ^^^^^^^^^^^ @@ -2251,6 +2277,7 @@ supports sending logging messages to an email address via SMTP. If you want to specify a subject line which is record-dependent, override this method. +.. _memory-handler: MemoryHandler ^^^^^^^^^^^^^ @@ -2321,6 +2348,8 @@ should, then :meth:`flush` is expected to do the needful. Checks for buffer full or a record at the *flushLevel* or higher. +.. _http-handler: + HTTPHandler ^^^^^^^^^^^ @@ -2463,6 +2492,7 @@ Currently, the useful mapping keys in a :class:`LogRecord` are: just uses :func:`traceback.print_exception`. The resulting string is returned. +.. _filter: Filter Objects -------------- @@ -2488,6 +2518,7 @@ initialized with the empty string, all events are passed. yes. If deemed appropriate, the record may be modified in-place by this method. +.. _log-record: LogRecord Objects ----------------- @@ -2519,6 +2550,7 @@ made, and any exception information to be logged. Returns the message for this :class:`LogRecord` instance after merging any user-supplied arguments with the message. +.. _logger-adapter: LoggerAdapter Objects --------------------- |