[BUG}: Handle refused connections #9

Open
opened 2025-01-24 15:26:38 +01:00 by jiriks74 · 1 comment
Owner

On Nextcloud downtime we might get Connection refused error.

Traceback
Traceback (most recent call last):
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connection.py", line 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/util/connection.py", line 85, in create_connection
    raise err
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/util/connection.py", line 73, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connection.py", line 214, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7fb53dd0e8d0>: Failed to establish a new connection: [Errno 111] Connection refused

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/adapters.py", line 683, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='nextcloud.example.com', port=443): Max retries exceeded with url: /ocs/v2.php/apps/notifications/api/v2/notifications (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fb53dd0e8d0>: Failed to establish a new connection: [Errno 111] Connection refused'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/jirka/nextcloud2ntfy/nextcloud2ntfy.py", line 307, in <module>
    main()
  File "/home/jirka/nextcloud2ntfy/nextcloud2ntfy.py", line 212, in main
    response = requests.get(
               ^^^^^^^^^^^^^
  File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/api.py", line 73, in get
    return request("get", url, params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/adapters.py", line 716, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='nextcloud.example.com', port=443): Max retries exceeded with url: /ocs/v2.php/apps/notifications/api/v2/notifications (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fb53dd0e8d0>: Failed to establish a new connection: [Errno 111] Connection refused'))

Do we want to:

  1. Ignore it?
  2. Send a notification about the error and then wait until it's back up?
On Nextcloud downtime we might get `Connection refused` error. <details> <summary>Traceback</summary> ```python Traceback (most recent call last): File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connection.py", line 199, in _new_conn sock = connection.create_connection( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/util/connection.py", line 85, in create_connection raise err File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/util/connection.py", line 73, in create_connection sock.connect(sa) ConnectionRefusedError: [Errno 111] Connection refused The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 789, in urlopen response = self._make_request( ^^^^^^^^^^^^^^^^^^^ File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 490, in _make_request raise new_e File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 466, in _make_request self._validate_conn(conn) File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 1095, in _validate_conn conn.connect() File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connection.py", line 693, in connect self.sock = sock = self._new_conn() ^^^^^^^^^^^^^^^^ File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connection.py", line 214, in _new_conn raise NewConnectionError( urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7fb53dd0e8d0>: Failed to establish a new connection: [Errno 111] Connection refused The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/adapters.py", line 683, in send resp = conn.urlopen( ^^^^^^^^^^^^^ File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/connectionpool.py", line 843, in urlopen retries = retries.increment( ^^^^^^^^^^^^^^^^^^ File "/nix/store/j2jwmcj5r20ch62zm4rx4k9iv0y3wlqd-python3.12-urllib3-2.2.3/lib/python3.12/site-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='nextcloud.example.com', port=443): Max retries exceeded with url: /ocs/v2.php/apps/notifications/api/v2/notifications (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fb53dd0e8d0>: Failed to establish a new connection: [Errno 111] Connection refused')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/jirka/nextcloud2ntfy/nextcloud2ntfy.py", line 307, in <module> main() File "/home/jirka/nextcloud2ntfy/nextcloud2ntfy.py", line 212, in main response = requests.get( ^^^^^^^^^^^^^ File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/api.py", line 73, in get return request("get", url, params=params, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/api.py", line 59, in request return session.request(method=method, url=url, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/nix/store/5giff6v311m4sqywc5pkdadfg3mzyfaz-python3.12-requests-2.32.3/lib/python3.12/site-packages/requests/adapters.py", line 716, in send raise ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPSConnectionPool(host='nextcloud.example.com', port=443): Max retries exceeded with url: /ocs/v2.php/apps/notifications/api/v2/notifications (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fb53dd0e8d0>: Failed to establish a new connection: [Errno 111] Connection refused')) ``` </details> Do we want to: 1. Ignore it? 2. Send a notification about the error and then wait until it's back up?
jiriks74 added the
bug
label 2025-01-24 15:26:38 +01:00
Collaborator

Mirrored on GitHub as #GH17.

Mirrored on GitHub as [#GH17](https://github.com/jiriks74/nextcloud2ntfy/issues/17).
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: jiriks74/nextcloud2ntfy#9
No description provided.