@@ -331,6 +331,27 @@ sends logging output to a network socket. The base class uses a TCP socket.
331331 Send a pickled string *packet * to the socket. This function allows for
332332 partial sends which can happen when the network is busy.
333333
334+ .. method :: createSocket()
335+
336+ Tries to create a socket; on failure, uses an exponential back-off
337+ algorithm. On intial failure, the handler will drop the message it was
338+ trying to send. When subsequent messages are handled by the same
339+ instance, it will not try connecting until some time has passed. The
340+ default parameters are such that the initial delay is one second, and if
341+ after that delay the connection still can't be made, the handler will
342+ double the delay each time up to a maximum of 30 seconds.
343+
344+ This behaviour is controlled by the following handler attributes:
345+
346+ * ``retryStart `` (initial delay, defaulting to 1.0 seconds).
347+ * ``retryFactor `` (multiplier, defaulting to 2.0).
348+ * ``retryMax `` (maximum delay, defaulting to 30.0 seconds).
349+
350+ This means that if the remote listener starts up *after * the handler has
351+ been used, you could lose messages (since the handler won't even attempt
352+ a connection until the delay has elapsed, but just silently drop messages
353+ during the delay period).
354+ ^
334355
335356.. _datagram-handler :
336357
0 commit comments