github.com/Jeffail/benthos/v3@v3.65.0/website/docs/components/outputs/amqp_1.md (about) 1 --- 2 title: amqp_1 3 type: output 4 status: beta 5 categories: ["Services"] 6 --- 7 8 <!-- 9 THIS FILE IS AUTOGENERATED! 10 11 To make changes please edit the contents of: 12 lib/output/amqp_1.go 13 --> 14 15 import Tabs from '@theme/Tabs'; 16 import TabItem from '@theme/TabItem'; 17 18 :::caution BETA 19 This component is mostly stable but breaking changes could still be made outside of major version releases if a fundamental problem with the component is found. 20 ::: 21 22 Sends messages to an AMQP (1.0) server. 23 24 25 <Tabs defaultValue="common" values={[ 26 { label: 'Common', value: 'common', }, 27 { label: 'Advanced', value: 'advanced', }, 28 ]}> 29 30 <TabItem value="common"> 31 32 ```yaml 33 # Common config fields, showing default values 34 output: 35 label: "" 36 amqp_1: 37 url: "" 38 target_address: "" 39 max_in_flight: 1 40 metadata: 41 exclude_prefixes: [] 42 ``` 43 44 </TabItem> 45 <TabItem value="advanced"> 46 47 ```yaml 48 # All config fields, showing default values 49 output: 50 label: "" 51 amqp_1: 52 url: "" 53 target_address: "" 54 max_in_flight: 1 55 tls: 56 enabled: false 57 skip_cert_verify: false 58 enable_renegotiation: false 59 root_cas: "" 60 root_cas_file: "" 61 client_certs: [] 62 sasl: 63 mechanism: none 64 user: "" 65 password: "" 66 metadata: 67 exclude_prefixes: [] 68 ``` 69 70 </TabItem> 71 </Tabs> 72 73 ### Metadata 74 75 Message metadata is added to each AMQP message as string annotations. In order to control which metadata keys are added use the `metadata` config field. 76 77 ## Performance 78 79 This output benefits from sending multiple messages in flight in parallel for 80 improved performance. You can tune the max number of in flight messages with the 81 field `max_in_flight`. 82 83 ## Fields 84 85 ### `url` 86 87 A URL to connect to. 88 89 90 Type: `string` 91 Default: `""` 92 93 ```yaml 94 # Examples 95 96 url: amqp://localhost:5672/ 97 98 url: amqps://guest:guest@localhost:5672/ 99 ``` 100 101 ### `target_address` 102 103 The target address to write to. 104 105 106 Type: `string` 107 Default: `""` 108 109 ```yaml 110 # Examples 111 112 target_address: /foo 113 114 target_address: queue:/bar 115 116 target_address: topic:/baz 117 ``` 118 119 ### `max_in_flight` 120 121 The maximum number of messages to have in flight at a given time. Increase this to improve throughput. 122 123 124 Type: `int` 125 Default: `1` 126 127 ### `tls` 128 129 Custom TLS settings can be used to override system defaults. 130 131 132 Type: `object` 133 134 ### `tls.enabled` 135 136 Whether custom TLS settings are enabled. 137 138 139 Type: `bool` 140 Default: `false` 141 142 ### `tls.skip_cert_verify` 143 144 Whether to skip server side certificate verification. 145 146 147 Type: `bool` 148 Default: `false` 149 150 ### `tls.enable_renegotiation` 151 152 Whether to allow the remote server to repeatedly request renegotiation. Enable this option if you're seeing the error message `local error: tls: no renegotiation`. 153 154 155 Type: `bool` 156 Default: `false` 157 Requires version 3.45.0 or newer 158 159 ### `tls.root_cas` 160 161 An optional root certificate authority to use. This is a string, representing a certificate chain from the parent trusted root certificate, to possible intermediate signing certificates, to the host certificate. 162 163 164 Type: `string` 165 Default: `""` 166 167 ```yaml 168 # Examples 169 170 root_cas: |- 171 -----BEGIN CERTIFICATE----- 172 ... 173 -----END CERTIFICATE----- 174 ``` 175 176 ### `tls.root_cas_file` 177 178 An optional path of a root certificate authority file to use. This is a file, often with a .pem extension, containing a certificate chain from the parent trusted root certificate, to possible intermediate signing certificates, to the host certificate. 179 180 181 Type: `string` 182 Default: `""` 183 184 ```yaml 185 # Examples 186 187 root_cas_file: ./root_cas.pem 188 ``` 189 190 ### `tls.client_certs` 191 192 A list of client certificates to use. For each certificate either the fields `cert` and `key`, or `cert_file` and `key_file` should be specified, but not both. 193 194 195 Type: `array` 196 Default: `[]` 197 198 ```yaml 199 # Examples 200 201 client_certs: 202 - cert: foo 203 key: bar 204 205 client_certs: 206 - cert_file: ./example.pem 207 key_file: ./example.key 208 ``` 209 210 ### `tls.client_certs[].cert` 211 212 A plain text certificate to use. 213 214 215 Type: `string` 216 Default: `""` 217 218 ### `tls.client_certs[].key` 219 220 A plain text certificate key to use. 221 222 223 Type: `string` 224 Default: `""` 225 226 ### `tls.client_certs[].cert_file` 227 228 The path to a certificate to use. 229 230 231 Type: `string` 232 Default: `""` 233 234 ### `tls.client_certs[].key_file` 235 236 The path of a certificate key to use. 237 238 239 Type: `string` 240 Default: `""` 241 242 ### `sasl` 243 244 Enables SASL authentication. 245 246 247 Type: `object` 248 249 ### `sasl.mechanism` 250 251 The SASL authentication mechanism to use. 252 253 254 Type: `string` 255 Default: `"none"` 256 257 | Option | Summary | 258 |---|---| 259 | `none` | No SASL based authentication. | 260 | `plain` | Plain text SASL authentication. | 261 262 263 ### `sasl.user` 264 265 A SASL plain text username. It is recommended that you use environment variables to populate this field. 266 267 268 Type: `string` 269 Default: `""` 270 271 ```yaml 272 # Examples 273 274 user: ${USER} 275 ``` 276 277 ### `sasl.password` 278 279 A SASL plain text password. It is recommended that you use environment variables to populate this field. 280 281 282 Type: `string` 283 Default: `""` 284 285 ```yaml 286 # Examples 287 288 password: ${PASSWORD} 289 ``` 290 291 ### `metadata` 292 293 Specify criteria for which metadata values are attached to messages as headers. 294 295 296 Type: `object` 297 298 ### `metadata.exclude_prefixes` 299 300 Provide a list of explicit metadata key prefixes to be excluded when adding metadata to sent messages. 301 302 303 Type: `array` 304 Default: `[]` 305 306