summaryrefslogtreecommitdiff
path: root/Lib/logging
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2014-11-23 20:38:13 -0600
committerBenjamin Peterson <benjamin@python.org>2014-11-23 20:38:13 -0600
commit6c22e65773c94ff810bd7adbb43c2b52e269598a (patch)
tree30307d736adb065bbe175560f7d6f8528d552673 /Lib/logging
parent83711e9bdf47d020d44997b74e1d24995130b992 (diff)
parent43052a14c1412893ae76253f1323a41769d09b07 (diff)
downloadcpython-git-6c22e65773c94ff810bd7adbb43c2b52e269598a.tar.gz
merge 3.4 (#22788)
Diffstat (limited to 'Lib/logging')
-rw-r--r--Lib/logging/handlers.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py
index 43cbb55c32..c67ac99cbf 100644
--- a/Lib/logging/handlers.py
+++ b/Lib/logging/handlers.py
@@ -1089,7 +1089,8 @@ class HTTPHandler(logging.Handler):
A class which sends records to a Web server, using either GET or
POST semantics.
"""
- def __init__(self, host, url, method="GET", secure=False, credentials=None):
+ def __init__(self, host, url, method="GET", secure=False, credentials=None,
+ context=None):
"""
Initialize the instance with the host, the request URL, and the method
("GET" or "POST")
@@ -1098,11 +1099,15 @@ class HTTPHandler(logging.Handler):
method = method.upper()
if method not in ["GET", "POST"]:
raise ValueError("method must be GET or POST")
+ if not secure and context is not None:
+ raise ValueError("context parameter only makes sense "
+ "with secure=True")
self.host = host
self.url = url
self.method = method
self.secure = secure
self.credentials = credentials
+ self.context = context
def mapLogRecord(self, record):
"""
@@ -1122,7 +1127,7 @@ class HTTPHandler(logging.Handler):
import http.client, urllib.parse
host = self.host
if self.secure:
- h = http.client.HTTPSConnection(host)
+ h = http.client.HTTPSConnection(host, context=self.context)
else:
h = http.client.HTTPConnection(host)
url = self.url