summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorVinay Sajip <vinay_sajip@yahoo.co.uk>2013-01-23 09:32:32 (GMT)
committerVinay Sajip <vinay_sajip@yahoo.co.uk>2013-01-23 09:32:32 (GMT)
commit560eff173c82ab57f88df06f63e4207280fd7ce6 (patch)
treebf669c36031775464f2061fbb128177d6b81949a /Doc
parente9a63600b3a781f1ca744eaaa380fb4b05d43115 (diff)
parent9427b0313346fc629d9b3f5e0134fbacb8533c06 (diff)
downloadcpython-560eff173c82ab57f88df06f63e4207280fd7ce6.zip
cpython-560eff173c82ab57f88df06f63e4207280fd7ce6.tar.gz
cpython-560eff173c82ab57f88df06f63e4207280fd7ce6.tar.bz2
Merged doc update from 3.3.
Diffstat (limited to 'Doc')
-rw-r--r--Doc/howto/logging-cookbook.rst11
1 files changed, 9 insertions, 2 deletions
diff --git a/Doc/howto/logging-cookbook.rst b/Doc/howto/logging-cookbook.rst
index a61d24b..e9e56d6 100644
--- a/Doc/howto/logging-cookbook.rst
+++ b/Doc/howto/logging-cookbook.rst
@@ -1620,7 +1620,7 @@ Implementing structured logging
Although most logging messages are intended for reading by humans, and thus not
readily machine-parseable, there might be cirumstances where you want to output
messages in a structured format which *is* capable of being parsed by a program
-(without needed complex regular expressions to parse the log message). This is
+(without needing complex regular expressions to parse the log message). This is
straightforward to achieve using the logging package. There are a number of
ways in which this could be achieved, but the following is a simple approach
which uses JSON to serialise the event in a machine-parseable manner::
@@ -1645,6 +1645,9 @@ If the above script is run, it prints::
message 1 >>> {"fnum": 123.456, "num": 123, "bar": "baz", "foo": "bar"}
+Note that the order of items might be different according to the version of
+Python used.
+
If you need more specialised processing, you can use a custom JSON encoder,
as in the following complete example::
@@ -1653,6 +1656,7 @@ as in the following complete example::
import json
import logging
+ # This next bit is to ensure the script runs unchanged on 2.x and 3.x
try:
unicode
except NameError:
@@ -1675,7 +1679,7 @@ as in the following complete example::
s = Encoder().encode(self.kwargs)
return '%s >>> %s' % (self.message, s)
- _ = StructuredMessage
+ _ = StructuredMessage # optional, to improve readability
def main():
logging.basicConfig(level=logging.INFO, format='%(message)s')
@@ -1688,3 +1692,6 @@ When the above script is run, it prints::
message 1 >>> {"snowman": "\u2603", "set_value": [1, 2, 3]}
+Note that the order of items might be different according to the version of
+Python used.
+