mirror of https://github.com/status-im/consul.git
afa1cc98d1
Fixes: #4222 # Data Filtering This PR will implement filtering for the following endpoints: ## Supported HTTP Endpoints - `/agent/checks` - `/agent/services` - `/catalog/nodes` - `/catalog/service/:service` - `/catalog/connect/:service` - `/catalog/node/:node` - `/health/node/:node` - `/health/checks/:service` - `/health/service/:service` - `/health/connect/:service` - `/health/state/:state` - `/internal/ui/nodes` - `/internal/ui/services` More can be added going forward and any endpoint which is used to list some data is a good candidate. ## Usage When using the HTTP API a `filter` query parameter can be used to pass a filter expression to Consul. Filter Expressions take the general form of: ``` <selector> == <value> <selector> != <value> <value> in <selector> <value> not in <selector> <selector> contains <value> <selector> not contains <value> <selector> is empty <selector> is not empty not <other expression> <expression 1> and <expression 2> <expression 1> or <expression 2> ``` Normal boolean logic and precedence is supported. All of the actual filtering and evaluation logic is coming from the [go-bexpr](https://github.com/hashicorp/go-bexpr) library ## Other changes Adding the `Internal.ServiceDump` RPC endpoint. This will allow the UI to filter services better. |
||
---|---|---|
.. | ||
acl | ||
agent | ||
catalog | ||
connect | ||
debug | ||
event | ||
exec | ||
flags | ||
forceleave | ||
helpers | ||
info | ||
intention | ||
join | ||
keygen | ||
keyring | ||
kv | ||
leave | ||
lock | ||
maint | ||
members | ||
monitor | ||
operator | ||
reload | ||
rtt | ||
services | ||
snapshot | ||
tls | ||
validate | ||
version | ||
watch | ||
commands_oss.go | ||
registry.go |