Rocketmq Proxy Route Configuration

Rocketmq Proxy configuration overview.

extensions.filters.network.rocketmq_proxy.v3.RouteConfiguration

[extensions.filters.network.rocketmq_proxy.v3.RouteConfiguration proto]

{
  "name": "...",
  "routes": []
}
name

(string) The name of the route configuration.

routes

(repeated extensions.filters.network.rocketmq_proxy.v3.Route) The list of routes that will be matched, in order, against incoming requests. The first route that matches will be used.

extensions.filters.network.rocketmq_proxy.v3.Route

[extensions.filters.network.rocketmq_proxy.v3.Route proto]

{
  "match": "{...}",
  "route": "{...}"
}
match

(extensions.filters.network.rocketmq_proxy.v3.RouteMatch, REQUIRED) Route matching parameters.

route

(extensions.filters.network.rocketmq_proxy.v3.RouteAction, REQUIRED) Route request to some upstream cluster.

extensions.filters.network.rocketmq_proxy.v3.RouteMatch

[extensions.filters.network.rocketmq_proxy.v3.RouteMatch proto]

{
  "topic": "{...}",
  "headers": []
}
topic

(type.matcher.v3.StringMatcher, REQUIRED) The name of the topic.

headers

(repeated config.route.v3.HeaderMatcher) Specifies a set of headers that the route should match on. The router will check the request’s headers against all the specified headers in the route config. A match will happen if all the headers in the route are present in the request with the same values (or based on presence if the value field is not in the config).

extensions.filters.network.rocketmq_proxy.v3.RouteAction

[extensions.filters.network.rocketmq_proxy.v3.RouteAction proto]

{
  "cluster": "...",
  "metadata_match": "{...}"
}
cluster

(string, REQUIRED) Indicates the upstream cluster to which the request should be routed.

metadata_match

(config.core.v3.Metadata) Optional endpoint metadata match criteria used by the subset load balancer.