The retry count of a function decorated by the retrying library in Python can be checked by accessing the last_attempt property of the RetryCallState object passed to the retry_error_callback function.

Here's an example:

import retrying

@retrying.retry(wait_fixed=1000, stop_max_attempt_number=3, retry_on_exception=retrying.retry_if_exception_type(RuntimeError))
def my_func():
    print('Trying...')
    raise RuntimeError('Something went wrong')

def retry_error_callback(exception, delay):
    print(f'Retrying after {delay} seconds...')
    print(f'Retry count: {exception.last_attempt.attempt_number}')

try:
    my_func()
except RuntimeError as e:
    print('Error:', e)

In the above example, the my_func function is decorated with the retrying library, which will retry the function call up to 3 times if a RuntimeError exception is raised. The retry_error_callback function is passed as a parameter to the retry decorator, which will be called on each retry attempt.

Inside the retry_error_callback function, the last_attempt property of the exception object is accessed to get the current retry count.

When you run this code, you should see output similar to the following:

Trying...
Retry count: 1
Trying...
Retry count: 2
Trying...
Error: Something went wrong
``
how to check retry count of a function decorated by retrying library in python

原文地址: https://www.cveoy.top/t/topic/dhoj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录