github.com/Jeffail/benthos/v3@v3.65.0/website/docs/components/outputs/zmq4.md (about)

     1  ---
     2  title: zmq4
     3  type: output
     4  status: stable
     5  categories: ["Network"]
     6  ---
     7  
     8  <!--
     9       THIS FILE IS AUTOGENERATED!
    10  
    11       To make changes please edit the contents of:
    12       lib/output/zmq4.go
    13  -->
    14  
    15  import Tabs from '@theme/Tabs';
    16  import TabItem from '@theme/TabItem';
    17  
    18  
    19  The zmq4 output type attempts to send messages to a ZMQ4 port, currently only
    20  PUSH and PUB sockets are supported.
    21  
    22  
    23  <Tabs defaultValue="common" values={[
    24    { label: 'Common', value: 'common', },
    25    { label: 'Advanced', value: 'advanced', },
    26  ]}>
    27  
    28  <TabItem value="common">
    29  
    30  ```yaml
    31  # Common config fields, showing default values
    32  output:
    33    label: ""
    34    zmq4:
    35      urls:
    36        - tcp://*:5556
    37      bind: true
    38      socket_type: PUSH
    39  ```
    40  
    41  </TabItem>
    42  <TabItem value="advanced">
    43  
    44  ```yaml
    45  # All config fields, showing default values
    46  output:
    47    label: ""
    48    zmq4:
    49      urls:
    50        - tcp://*:5556
    51      bind: true
    52      socket_type: PUSH
    53      high_water_mark: 0
    54      poll_timeout: 5s
    55  ```
    56  
    57  </TabItem>
    58  </Tabs>
    59  
    60  ZMQ4 is supported but currently depends on C bindings. Since this is an
    61  annoyance when building or using Benthos it is not compiled by default.
    62  
    63  There is a specific docker tag postfix `-cgo` for C builds containing
    64  ZMQ support.
    65  
    66  You can also build it into your project by getting libzmq installed on your
    67  machine, then build with the tag:
    68  
    69  ```sh
    70  go install -tags "ZMQ4" github.com/Jeffail/benthos/v3/cmd/benthos
    71  ```
    72  
    73  ## Fields
    74  
    75  ### `urls`
    76  
    77  A list of URLs to connect to. If an item of the list contains commas it will be expanded into multiple URLs.
    78  
    79  
    80  Type: `array`  
    81  Default: `["tcp://*:5556"]`  
    82  
    83  ```yaml
    84  # Examples
    85  
    86  urls:
    87    - tcp://localhost:5556
    88  ```
    89  
    90  ### `bind`
    91  
    92  Whether the URLs listed should be bind (otherwise they are connected to).
    93  
    94  
    95  Type: `bool`  
    96  Default: `true`  
    97  
    98  ### `socket_type`
    99  
   100  The socket type to send with.
   101  
   102  
   103  Type: `string`  
   104  Default: `"PUSH"`  
   105  Options: `PUSH`, `PUB`.
   106  
   107  ### `high_water_mark`
   108  
   109  The message high water mark to use.
   110  
   111  
   112  Type: `int`  
   113  Default: `0`  
   114  
   115  ### `poll_timeout`
   116  
   117  The maximum period of time to wait for a message to send before the request is abandoned and reattempted.
   118  
   119  
   120  Type: `string`  
   121  Default: `"5s"`  
   122  
   123