diff --git a/.github/wordlist.txt b/.github/wordlist.txt index 5c11d89f8..ad57186af 100644 --- a/.github/wordlist.txt +++ b/.github/wordlist.txt @@ -254,6 +254,7 @@ xml RedisJSON MkDocs ClientOptions +ClusterClientOptions TimeoutOptions timeoutOptions ClusterCommand diff --git a/docs/advanced-usage.md b/docs/advanced-usage.md index 19e8c2b9d..d37abd238 100644 --- a/docs/advanced-usage.md +++ b/docs/advanced-usage.md @@ -187,8 +187,8 @@ path. The client can collect latency metrics during while dispatching commands. Command latency metrics is collected on connection or server level. Command latency collection is enabled by default and can be -disabled by setting commandLatency CollectorOptions(…) to -DefaultCom mandLatencyCollector Options.disabled(). +disabled by setting commandLatencyCollectorOptions(…) to +DefaultCommandLatencyCollectorOptions.disabled(). Latency event publisher options @@ -296,11 +296,11 @@ instance .

-## Client Options +## ClientOptions -Client options allow controlling behavior for some specific features. +ClientOptions allow controlling behavior for some specific features. -Client options are immutable. Connections inherit the current options at +ClientOptions are immutable. Connections inherit the current options at the moment the connection is created. Changes to options will not affect existing connections. @@ -466,7 +466,7 @@ latest available protocol.

Socket Options socketOptions -10 seconds Connecti on-Timeout, no keep-a live, no TCP noDelay +10 seconds Connection-Timeout, no keep-alive, no TCP noDelay

Since: 4.3

@@ -476,7 +476,7 @@ kept to Redis servers.

SSL Options sslOptions -(non e), use JDK defaults +(none), use JDK defaults

Since: 4.3

@@ -516,10 +516,10 @@ option uses EventExecutorGroup configured through ### Cluster-specific options -Cluster client options extend the regular client options by some cluster +ClusterClientOptions extend the regular ClientOptions by some cluster specifics. -Cluster client options are immutable. Connections inherit the current +ClusterClientOptions are immutable. Connections inherit the current options at the moment the connection is created. Changes to options will not affect existing connections. @@ -564,7 +564,7 @@ operate on the one cluster topology.

can be set with refreshPeriod. The refresh job starts after either opening the first connection with the job enabled or by calling reloadPartitions. The job can be disabled without -discarding the full client by setting new client options.

+discarding the full client by setting new ClientOptions.

Cluster topology refresh period @@ -579,7 +579,7 @@ will be ignored.

Adaptive cluster topology refresh -enableAda ptiveRefreshTrigger +enableAdaptiveRefreshTrigger (none) @@ -597,7 +597,7 @@ attempts for the reconnect trigger)

Adaptive refresh triggers timeout -adaptiveRef reshTriggersTimeout +adaptiveRefreshTriggersTimeout 30 SECONDS @@ -610,7 +610,7 @@ ignored.

Reconnect attempts (Adaptive topology refresh trigger) -refreshTrigge rsReconnectAttempts +refreshTriggersReconnectAttempts 5 @@ -623,7 +623,7 @@ attempts. The first reconnect attempt starts with Dynamic topology refresh sources -dy namicRefreshSources +dynamicRefreshSources true @@ -641,7 +641,7 @@ typically contains IP addresses.

Close stale connections -cl oseStaleConnections +closeStaleConnections true @@ -686,7 +686,7 @@ trying to connect the node during topology discovery.

Validate cluster node membership -validateCl usterNodeMembership +validateClusterNodeMembership true @@ -771,7 +771,7 @@ logs. Lettuce uses Java defaults for the trust store that is usually `cacerts` in your `jre/lib/security` directory and comes with customizable SSL -options via [client options](#client-options). If you need to add you +options via [ClientOptions](#ClientOptions). If you need to add you own root certificate, so you can configure `SslOptions`, import it either to `cacerts` or you provide an own trust store and set the necessary system properties: @@ -1338,32 +1338,32 @@ RedisClient client = RedisClient.create(res); The following settings are available to configure from `DefaultCommandLatencyCollectorOptions`: -| Name | Method | Default | -|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------|---------------------------------| -| **Disable metrics tracking** | `disable` | `false` | -| Disables tracking of command latency metrics. | | | -| **Latency time unit** | `targetUnit` | `MICROSECONDS` | -| The target unit for command latency values. All values in the `CommandLatencyEvent` and a `CommandMetrics` instance are `long` values scaled to the `targetUnit`. | | | -| **Latency percentiles** | `targetPercentiles` | `50.0, 90 .0, 95.0, 99.0, 99.9` | -| A `double`-array of percentiles for latency metrics. The `CommandMetrics` contains a map that holds the percentile value and the latency value according to the percentile. Note that percentiles here must be specified in the range between 0 and 100. | | | -| **Reset latencies after publish** | `reset LatenciesAfterEvent` | `true` | -| Allows controlling whether the latency metrics are reset to zero one they were published. Setting `reset LatenciesAfterEvent` allows accumulating metrics over a long period for long-term analytics. | | | -| **Local socket distinction** | `localDistinction` | `false` | -| Enables per connection metrics tracking instead of per host/port. If `true`, multiple connections to the same host/connection point will be recorded separately which allows to inspection of every connection individually. If `false`, multiple connections to the same host/connection point will be recorded together. This allows a consolidated view on one particular service. | | | +| Name | Method | Default | +|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------|---------------------------------| +| **Disable metrics tracking** | `disable` | `false` | +| Disables tracking of command latency metrics. | | | +| **Latency time unit** | `targetUnit` | `MICROSECONDS` | +| The target unit for command latency values. All values in the `CommandLatencyEvent` and a `CommandMetrics` instance are `long` values scaled to the `targetUnit`. | | | +| **Latency percentiles** | `targetPercentiles` | `50.0, 90 .0, 95.0, 99.0, 99.9` | +| A `double`-array of percentiles for latency metrics. The `CommandMetrics` contains a map that holds the percentile value and the latency value according to the percentile. Note that percentiles here must be specified in the range between 0 and 100. | | | +| **Reset latencies after publish** | `resetLatenciesAfterEvent` | `true` | +| Allows controlling whether the latency metrics are reset to zero one they were published. Setting `resetLatenciesAfterEvent` allows accumulating metrics over a long period for long-term analytics. | | | +| **Local socket distinction** | `localDistinction` | `false` | +| Enables per connection metrics tracking instead of per host/port. If `true`, multiple connections to the same host/connection point will be recorded separately which allows to inspection of every connection individually. If `false`, multiple connections to the same host/connection point will be recorded together. This allows a consolidated view on one particular service. | | | #### EventPublisher Options The following settings are available to configure from `DefaultEventPublisherOptions`: -| Name | Method | Default | -|---------------------------------------------------|--------------------------|-----------| -| **Disable event publisher** | `disable` | `false` | -| Disables event publishing. | | | -| **Event publishing time unit** | `ev entEmitIntervalUnit` | `MINUTES` | -| The `TimeUnit` for the event publishing interval. | | | -| **Event publishing interval** | `eventEmitInterval` | `10` | -| The interval for the event publishing. | | | +| Name | Method | Default | +|---------------------------------------------------|-------------------------|-----------| +| **Disable event publisher** | `disable` | `false` | +| Disables event publishing. | | | +| **Event publishing time unit** | `eventEmitIntervalUnit` | `MINUTES` | +| The `TimeUnit` for the event publishing interval. | | | +| **Event publishing interval** | `eventEmitInterval` | `10` | +| The interval for the event publishing. | | | ### Micrometer