Add --req-limit-storage redis support

This commit is contained in:
Piero Toffanin 2022-10-14 13:27:34 -04:00
commit 70c4571067
5 changed files with 15 additions and 0 deletions

View file

@ -161,6 +161,7 @@ def create_app(args):
default_limits=get_routes_limits(
args.req_limit, args.daily_req_limit, api_keys_db
),
storage_uri=args.req_limit_storage,
)
else:
from .no_limiter import Limiter

View file

@ -56,6 +56,11 @@ _default_options_objects = [
'default_value': -1,
'value_type': 'int'
},
{
'name': 'REQ_LIMIT_STORAGE',
'default_value': 'memory://',
'value_type': 'str'
},
{
'name': 'DAILY_REQ_LIMIT',
'default_value': -1,

View file

@ -28,6 +28,13 @@ def get_args():
metavar="<number>",
help="Set the default maximum number of requests per minute per client (%(default)s)",
)
parser.add_argument(
"--req-limit-storage",
default=DEFARGS['REQ_LIMIT_STORAGE'],
type=str,
metavar="<Storage URI>",
help="Storage URI to use for request limit data storage. See https://flask-limiter.readthedocs.io/en/stable/configuration.html. (%(default)s)",
)
parser.add_argument(
"--daily-req-limit",
default=DEFARGS['DAILY_REQ_LIMIT'],