g3proxy: support json egress path in route_select escaper

This commit is contained in:
Zhang Jingqiang 2023-08-21 11:14:38 +08:00
parent 8e00ba9bef
commit ce915f1463
7 changed files with 200 additions and 38 deletions

View file

@ -37,6 +37,8 @@ The following egress path selection methods is supported:
.. note:: you should consider disable ipv4 / ipv6 at escaper level if the value in the egress path selection doesn't
support ipv4 / ipv6
.. versionadded:: 1.7.22
Config Keys
===========

View file

@ -29,6 +29,8 @@ The following egress path selection methods is supported:
The json value will be parsed as one (json map) or more (json array) :ref:`peer <config_escaper_dynamic_peer>`.
The peers passed here will overwrite the ones in the escaper config.
.. versionadded:: 1.7.22
Config Keys
===========

View file

@ -5,10 +5,19 @@ route_select
This escaper allows to select a next escaper based on the specified pick policy.
There is no path selection support for this escaper.
The following egress path selection methods is supported:
* :ref:`by json <proto_egress_path_selection_by_json>`
The json value will be parsed as :ref:`next_nodes <conf_escaper_route_select_next_nodes>` as below.
The select policy can only be set by :ref:`next_pick_policy <conf_escaper_route_select_next_pick_policy>`.
.. versionadded:: 1.7.22
No common keys are supported.
.. _conf_escaper_route_select_next_nodes:
next_nodes
----------
@ -18,6 +27,8 @@ Set the next escaper(s) those can be selected.
For *seq* value, each of its element must be :ref:`weighted name str <conf_value_weighted_name_str>`.
.. _conf_escaper_route_select_next_pick_policy:
next_pick_policy
----------------