Skip to content

Commit e289bf5

Browse files
Policies graduate to a dedicated doc guide
1 parent 71274c4 commit e289bf5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+2700
-2555
lines changed

docs/ae.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Alternate Exchange ("AE") is a feature that addresses these use cases.
3939
## How to Define an Alternate Exchange {#define}
4040

4141
For any given exchange except for the default one, an AE can be defined by clients using
42-
[policies](./parameters#policies). This is the recommended option
42+
[policies](./policies). This is the recommended option
4343
as policies are significantly simplify changes to such options (e.g. during
4444
upgrades).
4545

@@ -79,7 +79,7 @@ rabbitmqctl.bat set_policy AE "^my-direct$" "{""alternate-exchange"":""my-ae""}"
7979

8080
This will apply an AE of "my-ae" to the exchange called
8181
"my-direct". Policies can also be defined using the management
82-
plugin, see the [policy documentation](./parameters#policies) for more details.
82+
plugin, see the [policy documentation](./policies) for more details.
8383

8484

8585

docs/classic-queues.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ Classic queues fully support [queue exclusivity](./queues),
3838
[queue length limits](./maxlength),
3939
[message priority](./priority),
4040
[consumer priority](./consumer-priority)
41-
and adhere to settings [controlled using policies](./parameters#policies).
41+
and adhere to settings [controlled using policies](./policies).
4242

4343
Classic queues support [dead letter exchanges](./dlx) with
4444
the exception of [at-least-once dead-lettering](./quorum-queues#dead-lettering).

docs/consumers.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -617,7 +617,7 @@ the delivery is returned to the queue.
617617

618618
### SAC Cannot Be Enabled with a Policy
619619

620-
The Single Active Consumer feature cannot be enabled with a [policy](./parameters#policies).
620+
The Single Active Consumer feature cannot be enabled with a [policy](./policies).
621621
Since policies in RabbitMQ are dynamic by nature, they can
622622
come and go, enabling and disabling the features they declare. Imagine suddenly
623623
disabling single active consumer on a queue: the broker would start sending messages to

docs/dlx.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ any of the usual types and are declared as normal.
4040

4141
## How Dead Lettering is Configured
4242

43-
For any given queue, a DLX can be defined by clients using [policies](./parameters#policies). There
43+
For any given queue, a DLX can be defined by clients using [policies](./policies). There
4444
are several DLX-related policy keys, including some [only supported by quorum queues](./quorum-queues) but the two key ones are
4545

4646
* `dead-letter-exchange`: The name of the DLX to use

docs/exchanges.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -230,18 +230,18 @@ pairs that can be provided by clients when a queue is declared.
230230
The map is used by certain features and exchange types, such as [alternate exchanges](#ae)
231231
and the headers exchanges.
232232

233-
These optional arguments usually can be dynamically changed after queue declaration via [policies](./parameters#policies).
233+
These optional arguments usually can be dynamically changed after queue declaration via [policies](./policies).
234234

235235
:::tip
236236

237-
For keys that can be set via [policies](./parameters#policies), always first
237+
For keys that can be set via [policies](./policies), always first
238238
consider using a policy instead of setting these values in application code
239239

240240
:::
241241

242242
Optional exchange arguments can be set differently:
243243

244-
* To groups of queues using [policies](./parameters#policies) (recommended)
244+
* To groups of queues using [policies](./policies) (recommended)
245245
* On a per-exchange basis when a queue is declared by a client
246246

247247
The former option is more flexible, non-intrusive, does not require application
@@ -257,10 +257,10 @@ declares queues.
257257

258258
### Optional Arguments and Policy-Defined Key Precedence {#optional-arguments-precedence}
259259

260-
When the same key is provided by both client-provided `x-arguments` and by a [policy](./parameters#policies),
260+
When the same key is provided by both client-provided `x-arguments` and by a [policy](./policies),
261261
the former take precedence.
262262

263-
However, if an [operator policy](./parameters#operator-policies) is also used, that will take precedence over the client-provided
263+
However, if an [operator policy](./policies#operator-policies) is also used, that will take precedence over the client-provided
264264
arguments, too. Operator policies are a protection mechanism and override client-provided values
265265
and user policy values.
266266

docs/federated-exchanges/index.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ rabbitmqctl.bat set_parameter federation-upstream origin '"{""uri"":""amqp://rem
134134
More upstream definition parameters are covered in the [Federation Reference guide](./federation-reference).
135135

136136
Once an upstream has been specified, a policy that controls federation can be added. It is added just like
137-
any other [policy](./parameters#policies), using:
137+
any other [policy](./policies), using:
138138

139139
<Tabs groupId="shell-specific">
140140
<TabItem value="bash" label="bash" default>
@@ -166,7 +166,7 @@ the one with the highest priority will be used. Multiple policy definitions will
166166
priorities are equal.
167167

168168
Once configured, a federation link (connection) will be opened for every matching exchange and upstream pair.
169-
By "matching exchange" here we mean an exchange that is matched by the [federation policy pattern](./parameters#policies).
169+
By "matching exchange" here we mean an exchange that is matched by the [federation policy pattern](./policies).
170170
If no exchanges matched, no links will be started.
171171

172172
To deactivate federation for the matching exchanges, delete the policy using its name:

docs/federated-queues/index.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ rabbitmqctl.bat set_parameter federation-upstream origin '"{""uri"":""amqp://rem
143143
</Tabs>
144144

145145
Once an upstream has been specified, a policy that controls federation can be added.
146-
It is added just like any other [policy](./parameters#policies), using `rabbitmqctl set_policy`:
146+
It is added just like any other [policy](./policies), using `rabbitmqctl set_policy`:
147147

148148
<Tabs groupId="shell-specific">
149149
<TabItem value="bash" label="bash" default>
@@ -173,7 +173,7 @@ the one with the highest priority will be used. Multiple policy definitions will
173173
priorities are equal.
174174

175175
Once configured, a federation link (connection) will be opened for every matching queue and upstream pair.
176-
By "matching queue" here we mean a queue that is matched by the [federation policy pattern](./parameters#policies).
176+
By "matching queue" here we mean a queue that is matched by the [federation policy pattern](./policies).
177177
If no queues matched, no links will be started.
178178

179179
To deactivate federation for the matching queues, delete the policy using its name:

docs/federation-reference.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ rabbitmqctl set_policy federate-me '^federated\.' '{"federation-upstream":"up-1"
5858

5959
Note that you cannot use the <code>federation-upstream</code>
6060
and <code>federation-upstream-set</code> keys together in a
61-
policy. For more detail on policies, see the <a href="./parameters#policies">policy</a> documentation.
61+
policy. For more detail on policies, see the <a href="/policies">policy</a> documentation.
6262

6363
### Upstreams {#upstreams}
6464

docs/federation.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ Two steps are involved in setting up federation:
102102
to other nodes. This can be done via [runtime parameters](./parameters)
103103
or the [federation management plugin](https://github.com/rabbitmq/rabbitmq-federation-management) which
104104
adds a federation management tab to the [management UI](./management).
105-
* To enable federation, one or more [policies](./parameters#policies) that match exchanges or queues must be declared.
105+
* To enable federation, one or more [policies](./policies) that match exchanges or queues must be declared.
106106
The policy will make the matched objects (e.g. exchanges) federated, and one federation link
107107
(connection to other nodes) will be started for every match
108108

@@ -132,7 +132,7 @@ are three levels of configuration involved in federation:
132132

133133
* **Upstreams**: each [upstream](./federation-reference#upstreams) defines a remote connection endpoint.
134134
* **Upstream sets**: each [upstream set groups](./federation-reference#upstream-sets) together a set of upstreams to use for federation.
135-
* **Policies**: each [policy](./parameters#policies) selects a set of exchanges,
135+
* **Policies**: each [policy](./policies) selects a set of exchanges,
136136
queues or both, and applies a single upstream or an upstream
137137
set to those objects.
138138

@@ -240,7 +240,7 @@ for the default one) with (implicit) low priority, and
240240
to federate them using the implicitly created upstream set
241241
"all", which includes our newly-created upstream.
242242

243-
Any other [matching policy](./parameters#policies) with a priority greater than 0 will take
243+
Any other [matching policy](./policies) with a priority greater than 0 will take
244244
precedence over this policy. Keep in mind that `federate-me`
245245
is just a name we used for this example, you can use any
246246
string you want there.
@@ -517,7 +517,7 @@ Federation links are started when
517517
Therefore, in order to narrow down the problem, the recommended steps are:
518518

519519
* Inspect federation upstreams
520-
* Inspect [policies](./parameters#policies), in particular looking for policies with conflicting [priorities](./parameters#policy-priorities)
520+
* Inspect [policies](./policies), in particular looking for policies with conflicting [priorities](./policies#priorities)
521521
* Inspect [node logs](./logging)
522522

523523
#### Inspect Federation Upstreams

docs/http-api-reference.md

+9-9
Original file line numberDiff line numberDiff line change
@@ -1322,7 +1322,7 @@ curl -sL -u guest:guest -X DELETE -H "Accept: application/json" http://127.0.0.1
13221322

13231323
### GET /api/policies
13241324

1325-
Lists [policies](./parameters#policies) across all virtual hosts in the cluster.
1325+
Lists [policies](./policies) across all virtual hosts in the cluster.
13261326

13271327
<Tabs groupId="examples">
13281328
<TabItem value="rabbitmqadmin" label="rabbitmqadmin v2">
@@ -1339,7 +1339,7 @@ curl -sL -u guest:guest -H "Accept: application/json" http://127.0.0.1:15672/api
13391339

13401340
### GET /api/policies/\{_vhost_\}
13411341

1342-
Lists [policies](./parameters#policies) in the given virtual host.
1342+
Lists [policies](./policies) in the given virtual host.
13431343

13441344
<Tabs groupId="examples">
13451345
<TabItem value="curl" label="curl" default>
@@ -1352,11 +1352,11 @@ curl -sL -u guest:guest -H "Accept: application/json" http://127.0.0.1:15672/api
13521352

13531353
### GET /api/policies/\{_vhost_\}/\{_name_\}
13541354

1355-
Returns a [policy](./parameters#policies) definition.
1355+
Returns a [policy](./policies) definition.
13561356

13571357
### PUT /api/policies/\{_vhost_\}/\{_name_\}
13581358

1359-
Declares or updates a [policy](./parameters#policies).
1359+
Declares or updates a [policy](./policies).
13601360

13611361
Example payload:
13621362

@@ -1371,7 +1371,7 @@ All the keys in the example are mandatory.
13711371
Only one policy applies or a queue, stream or exchange at a time.
13721372

13731373
When multiple policies have conflicting priorities, a random one will be applied.
1374-
This scenario therefore [must be avoided](./parameters#how-policies-work).
1374+
This scenario therefore [must be avoided](./policies#priorities).
13751375

13761376
:::
13771377

@@ -1381,7 +1381,7 @@ Deletes a policy.
13811381

13821382
### GET /api/operator-policies
13831383

1384-
Lists [operator policies](./parameters#operator-policies) across all virtual hosts in the cluster.
1384+
Lists [operator policies](./policies#operator-policies) across all virtual hosts in the cluster.
13851385

13861386
<Tabs groupId="examples">
13871387
<TabItem value="rabbitmqadmin" label="rabbitmqadmin v2">
@@ -1398,7 +1398,7 @@ curl -sL -u guest:guest -H "Accept: application/json" http://127.0.0.1:15672/api
13981398

13991399
### GET /api/operator-policies/\{_vhost_\}
14001400

1401-
Returns an operator [policy](./parameters#operator-policies) definition.
1401+
Returns an operator [policy](./policies#operator-policies) definition.
14021402

14031403
<Tabs groupId="examples">
14041404
<TabItem value="curl" label="curl" default>
@@ -1411,7 +1411,7 @@ curl -sL -u guest:guest -H "Accept: application/json" http://127.0.0.1:15672/api
14111411

14121412
### GET /api/operator-policies/\{_vhost_\}/\{_name_\}
14131413

1414-
Returns an operator [policy](./parameters#operator-policies) definition.
1414+
Returns an operator [policy](./policies#operator-policies) definition.
14151415

14161416
### PUT /api/operator-policies/\{_vhost_\}/\{_name_\}
14171417

@@ -1429,7 +1429,7 @@ All the keys in the example are mandatory.
14291429
Only one policy applies or a queue, stream or exchange at a time.
14301430

14311431
When multiple policies have conflicting priorities, a random one will be applied.
1432-
This scenario therefore [must be avoided](./parameters#how-policies-work).
1432+
This scenario therefore [must be avoided](./policies#priorities).
14331433

14341434
:::
14351435

docs/maxlength/index.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,11 @@ You can set a maximum length on a [queue](./queues). The maximum length limit ca
2626
messages, or set to a number of bytes (the total of all message body lengths, ignoring message properties and any overheads), or both.
2727

2828
To set the maximum length (of either type), you can
29-
define it using a [policy](./parameters#policies) (this option is highly recommended)
29+
define it using a [policy](./policies) (this option is highly recommended)
3030
or by clients using the [queue's optional arguments](./queues#optional-arguments).
3131
In a scenario where the maximum length is defined using both ways, that is, using a policy and using the arguments, then the minimum of the two values specified is used.
3232

33-
Queue length settings configured using [operator policies](./parameters#operator-policies).
33+
Queue length settings configured using [operator policies](./policies#operator-policies).
3434

3535
In all cases, the number of messages in the **ready** state are used. [Messages unacknowledged by consumers](./confirms)
3636
do not count towards the limit.
@@ -131,7 +131,7 @@ are sent `basic.nack` responses as long as the queue
131131
contains 2 messages and publisher confirms are enabled.
132132

133133
Policies can also be defined using the management plugin, see
134-
the [policy documentation](./parameters#policies) for more details.
134+
the [policy documentation](./policies) for more details.
135135

136136

137137
## Define Max Queue Length Using x-arguments During Declaration {#definition-using-x-args}
@@ -165,7 +165,7 @@ channel.queueDeclare("myqueue", false, false, false, args);
165165
## Inspecting Queue Length Limits {#inspecting}
166166

167167
To inspect effective limits for a queue, inspect its [optional arguments](./queues#optional-arguments) and
168-
[effective policy](./parameters#policies).
168+
[effective policy](./policies).
169169

170170
This can be done using CLI tools or the management UI.
171171

0 commit comments

Comments
 (0)