summaryrefslogtreecommitdiffstats
path: root/Lib/logging/handlers.py
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2014-11-24 02:36:44 (GMT)
committerBenjamin Peterson <benjamin@python.org>2014-11-24 02:36:44 (GMT)
commit43052a14c1412893ae76253f1323a41769d09b07 (patch)
tree1e7b9b2ecdfb9f54fb2830f17bf9dc902771ed2b /Lib/logging/handlers.py
parentf200498abe02aaeb451f115d828e938f2f366891 (diff)
downloadcpython-43052a14c1412893ae76253f1323a41769d09b07.zip
cpython-43052a14c1412893ae76253f1323a41769d09b07.tar.gz
cpython-43052a14c1412893ae76253f1323a41769d09b07.tar.bz2
add context parameter to HTTPHandler (closes #22788)
Diffstat (limited to 'Lib/logging/handlers.py')
-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 43cbb55..c67ac99 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