We have a server that uses the python API to create tickets under certain conditions. Starting a few weeks ago, around 10% of the requests we make start failing with SSL errors. I can confirm it's not anything about the request itself, because due to the fact that we log all the requests coming to the server, I can re-send the exact same failed requests at a later time and it works fine. The python stacktrace is attached. Anyone else experiencing this or know how to resolve it?
[('SSL routines', 'ssl3_get_record', 'decryption failed or bad record mac')]
Traceback (most recent call last):
File "/var/www/TRportal/TRportal/backend/investigations_req.py", line 86, in make_ticket
jira_ticket = self.jira.create_ticket(issue_dict)
File "/var/www/TRportal/TRportal/backend/lib/jira_wrapper.py", line 22, in create_ticket
ticket = self.jira_api.create_issue(fields=issue_dict)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/jira/client.py", line 1107, in create_issue
r = self._session.post(url, data=json.dumps(data))
File "/var/www/TRportal/venv/lib/python3.7/site-packages/jira/resilientsession.py", line 154, in post
return self.__verb('POST', url, **kwargs)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/jira/resilientsession.py", line 125, in __verb
response = method(url, timeout=self.timeout, **kwargs)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/requests/sessions.py", line 581, in post
return self.request('POST', url, data=data, json=json, **kwargs)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
timeout=timeout
File "/var/www/TRportal/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 600, in urlopen
chunked=chunked)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 384, in _make_request
six.raise_from(e, None)
File "<string>", line 2, in raise_from
File "/var/www/TRportal/venv/lib/python3.7/site-packages/urllib3/connectionpool.py", line 380, in _make_request
httplib_response = conn.getresponse()
File "/usr/lib/python3.7/http/client.py", line 1336, in getresponse
response.begin()
File "/usr/lib/python3.7/http/client.py", line 306, in begin
version, status, reason = self._read_status()
File "/usr/lib/python3.7/http/client.py", line 267, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "/usr/lib/python3.7/socket.py", line 589, in readinto
return self._sock.recv_into(b)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 285, in recv_into
return self.connection.recv_into(*args, **kwargs)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1822, in recv_into
self._raise_ssl_error(self._ssl, result)
File "/var/www/TRportal/venv/lib/python3.7/site-packages/OpenSSL/SSL.py", line 1647, in _raise_ssl_error
_raise_current_error()
File "/var/www/TRportal/venv/lib/python3.7/site-packages/OpenSSL/_util.py", line 54, in exception_from_error_queue
raise exception_type(errors)
OpenSSL.SSL.Error: [('SSL routines', 'ssl3_get_record', 'decryption failed or bad record mac')]