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

     1  ---
     2  title: pulsar
     3  type: input
     4  status: experimental
     5  categories: ["Services"]
     6  ---
     7  
     8  <!--
     9       THIS FILE IS AUTOGENERATED!
    10  
    11       To make changes please edit the contents of:
    12       lib/input/pulsar.go
    13  -->
    14  
    15  import Tabs from '@theme/Tabs';
    16  import TabItem from '@theme/TabItem';
    17  
    18  :::caution EXPERIMENTAL
    19  This component is experimental and therefore subject to change or removal outside of major version releases.
    20  :::
    21  Reads messages from an Apache Pulsar server.
    22  
    23  Introduced in version 3.43.0.
    24  
    25  
    26  <Tabs defaultValue="common" values={[
    27    { label: 'Common', value: 'common', },
    28    { label: 'Advanced', value: 'advanced', },
    29  ]}>
    30  
    31  <TabItem value="common">
    32  
    33  ```yaml
    34  # Common config fields, showing default values
    35  input:
    36    label: ""
    37    pulsar:
    38      url: ""
    39      topics: []
    40      subscription_name: ""
    41      subscription_type: ""
    42  ```
    43  
    44  </TabItem>
    45  <TabItem value="advanced">
    46  
    47  ```yaml
    48  # All config fields, showing default values
    49  input:
    50    label: ""
    51    pulsar:
    52      url: ""
    53      topics: []
    54      subscription_name: ""
    55      subscription_type: ""
    56      auth:
    57        oauth2:
    58          enabled: false
    59          audience: ""
    60          issuer_url: ""
    61          private_key_file: ""
    62        token:
    63          enabled: false
    64          token: ""
    65  ```
    66  
    67  </TabItem>
    68  </Tabs>
    69  
    70  ### Metadata
    71  
    72  This input adds the following metadata fields to each message:
    73  
    74  ```text
    75  - pulsar_message_id
    76  - pulsar_key
    77  - pulsar_ordering_key
    78  - pulsar_event_time_unix
    79  - pulsar_publish_time_unix
    80  - pulsar_topic
    81  - pulsar_producer_name
    82  - pulsar_redelivery_count
    83  - All properties of the message
    84  ```
    85  
    86  You can access these metadata fields using
    87  [function interpolation](/docs/configuration/interpolation#metadata).
    88  
    89  ## Fields
    90  
    91  ### `url`
    92  
    93  A URL to connect to.
    94  
    95  
    96  Type: `string`  
    97  Default: `""`  
    98  
    99  ```yaml
   100  # Examples
   101  
   102  url: pulsar://localhost:6650
   103  
   104  url: pulsar://pulsar.us-west.example.com:6650
   105  
   106  url: pulsar+ssl://pulsar.us-west.example.com:6651
   107  ```
   108  
   109  ### `topics`
   110  
   111  A list of topics to subscribe to.
   112  
   113  
   114  Type: `array`  
   115  Default: `[]`  
   116  
   117  ### `subscription_name`
   118  
   119  Specify the subscription name for this consumer.
   120  
   121  
   122  Type: `string`  
   123  Default: `""`  
   124  
   125  ### `subscription_type`
   126  
   127  Specify the subscription type for this consumer.
   128  
   129  > NOTE: Using a `key_shared` subscription type will __allow out-of-order delivery__ since nack-ing messages sets non-zero nack delivery delay - this can potentially cause consumers to stall. See [Pulsar documentation](https://pulsar.apache.org/docs/en/2.8.1/concepts-messaging/#negative-acknowledgement) and [this Github issue](https://github.com/apache/pulsar/issues/12208) for more details.
   130  
   131  
   132  Type: `string`  
   133  Default: `"shared"`  
   134  Options: `shared`, `key_shared`, `failover`, `exclusive`.
   135  
   136  ### `auth`
   137  
   138  Optional configuration of Pulsar authentication methods.
   139  
   140  
   141  Type: `object`  
   142  Requires version 3.60.0 or newer  
   143  
   144  ### `auth.oauth2`
   145  
   146  Parameters for Pulsar OAuth2 authentication.
   147  
   148  
   149  Type: `object`  
   150  
   151  ### `auth.oauth2.enabled`
   152  
   153  Whether OAuth2 is enabled.
   154  
   155  
   156  Type: `bool`  
   157  Default: `false`  
   158  
   159  ```yaml
   160  # Examples
   161  
   162  enabled: true
   163  ```
   164  
   165  ### `auth.oauth2.audience`
   166  
   167  OAuth2 audience.
   168  
   169  
   170  Type: `string`  
   171  Default: `""`  
   172  
   173  ### `auth.oauth2.issuer_url`
   174  
   175  OAuth2 issuer URL.
   176  
   177  
   178  Type: `string`  
   179  Default: `""`  
   180  
   181  ### `auth.oauth2.private_key_file`
   182  
   183  File containing the private key.
   184  
   185  
   186  Type: `string`  
   187  Default: `""`  
   188  
   189  ### `auth.token`
   190  
   191  Parameters for Pulsar Token authentication.
   192  
   193  
   194  Type: `object`  
   195  
   196  ### `auth.token.enabled`
   197  
   198  Whether Token Auth is enabled.
   199  
   200  
   201  Type: `bool`  
   202  Default: `false`  
   203  
   204  ```yaml
   205  # Examples
   206  
   207  enabled: true
   208  ```
   209  
   210  ### `auth.token.token`
   211  
   212  Actual base64 encoded token.
   213  
   214  
   215  Type: `string`  
   216  Default: `""`  
   217  
   218