Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No stack traces for read timeouts #84

Open
lkiesow opened this issue May 6, 2024 · 0 comments · May be fixed by #85
Open

No stack traces for read timeouts #84

lkiesow opened this issue May 6, 2024 · 0 comments · May be fixed by #85

Comments

@lkiesow
Copy link
Member

lkiesow commented May 6, 2024

Similar to #34, we don't need full stack traces for read timeouts.

We want something like

 ERROR:occameracontrol.metrics:Failed to communicate with camera 'arec-15-421' @ 'http://camera1-15-421.example.com': requests.exceptions.ReadTimeout: HTTPConnectionPool(host='camera1-15-421.example.com', port=80): Read timed out. (read timeout=5)

Instead of getting

 ERROR:occameracontrol.metrics:Failed to communicate with camera 'arec-15-421' @ 'http://camera1-15-421.example.com'
 Traceback (most recent call last):
   File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 446, in _make_request
     six.raise_from(e, None)
   File "<string>", line 3, in raise_from
   File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 441, in _make_request
     httplib_response = conn.getresponse()
   File "/usr/lib64/python3.9/http/client.py", line 1377, in getresponse
     response.begin()
   File "/usr/lib64/python3.9/http/client.py", line 320, in begin
     version, status, reason = self._read_status()
   File "/usr/lib64/python3.9/http/client.py", line 281, in _read_status
     line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
   File "/usr/lib64/python3.9/socket.py", line 704, in readinto
     return self._sock.recv_into(b)
 socket.timeout: timed out
 During handling of the above exception, another exception occurred:
 Traceback (most recent call last):
   File "/usr/lib/python3.9/site-packages/requests/adapters.py", line 439, in send
     resp = conn.urlopen(
   File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 756, in urlopen
     retries = retries.increment(
   File "/usr/lib/python3.9/site-packages/urllib3/util/retry.py", line 532, in increment
     raise six.reraise(type(error), error, _stacktrace)
   File "/usr/lib/python3.9/site-packages/urllib3/packages/six.py", line 709, in reraise
     raise value
   File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 700, in urlopen
     httplib_response = self._make_request(
   File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 448, in _make_request
     self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
   File "/usr/lib/python3.9/site-packages/urllib3/connectionpool.py", line 337, in _raise_timeout
     raise ReadTimeoutError(
 urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='camera1-15-421.example.com', port=80): Read timed out. (read timeout=5)
 During handling of the above exception, another exception occurred:
 Traceback (most recent call last):
   File "/usr/lib/python3.9/site-packages/occameracontrol/__main__.py", line 60, in control_camera
     camera.update_position()
   File "/usr/lib/python3.9/site-packages/occameracontrol/camera.py", line 147, in update_position
     self.move_to_preset(self.preset_inactive)
   File "/usr/lib/python3.9/site-packages/occameracontrol/camera.py", line 86, in move_to_preset
     response = requests.get(url, auth=auth, params=params, timeout=5)
   File "/usr/lib/python3.9/site-packages/requests/api.py", line 76, in get
     return request('get', url, params=params, **kwargs)
   File "/usr/lib/python3.9/site-packages/requests/api.py", line 61, in request
     return session.request(method=method, url=url, **kwargs)
   File "/usr/lib/python3.9/site-packages/requests/sessions.py", line 544, in request
     resp = self.send(prep, **send_kwargs)
   File "/usr/lib/python3.9/site-packages/requests/sessions.py", line 657, in send
     r = adapter.send(request, **kwargs)
   File "/usr/lib/python3.9/site-packages/requests/adapters.py", line 529, in send
     raise ReadTimeout(e, request=request)
 requests.exceptions.ReadTimeout: HTTPConnectionPool(host='camera1-15-421.example.com', port=80): Read timed out. (read timeout=5)
lkiesow added a commit that referenced this issue May 6, 2024
We don't need full stack traces for read timeouts.
This patch shortens the error logs to:

```
May 06 12:04:42 vm350.rz.uni-osnabrueck.de opencast-camera-control[523905]: ERROR:occameracontrol.metrics:Failed to communicate with camera 'arec-15-421' @ 'http://camera1-15-421.example.com': HTTPConnectionPool(host='camera1-15-421.example.com', port=80): Read timed out. (read timeout=5)
```

This fixes #84
@lkiesow lkiesow linked a pull request May 6, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant