Perform repeated searches against an LDAP directory server.
searchrate --hostname server.example.com --port 389 \ --bindDN uid=admin,dc=example,dc=com --bindPassword password \ --baseDN dc=example,dc=com --scope sub --filter "(uid=user.[1-1000000])" \ --attribute givenName --attribute sn --attribute mail --numThreads 10
searchrate --generateSampleRateFile variable-rate-data.txt
-V
--version
Description | Display Directory Server version information |
-H
--help
Description | Display general usage information |
--help-ldap
Description | Display help for using LDAP options |
--help-sasl
Description | Display help for using SASL options |
--help-debug
Description | Display help for using debug options |
Advanced | Yes |
-h {host}
--hostname {host}
Description | The IP address or resolvable name to use to connect to the directory server. If this is not provided, then a default value of 'localhost' will be used. |
Default Value | localhost |
Required | Yes |
Multi-Valued | Yes |
-p {port}
--port {port}
Description | The port to use to connect to the directory server. If this is not provided, then a default value of 389 will be used. |
Default Value | 389 |
Required | Yes |
Multi-Valued | No |
-D {dn}
--bindDN {dn}
Description | The DN to use to bind to the directory server when performing simple authentication. |
Required | No |
Multi-Valued | No |
-w {password}
--bindPassword {password}
Description | The password to use to bind to the directory server when performing simple authentication or a password-based SASL mechanism. |
Required | No |
Multi-Valued | No |
-j {path}
--bindPasswordFile {path}
Description | The path to the file containing the password to use to bind to the directory server when performing simple authentication or a password-based SASL mechanism. |
Required | No |
Multi-Valued | No |
--promptForBindPassword
Description | Indicates that the tool should interactively prompt the user for the bind password. |
-Z
--useSSL
Description | Use SSL when communicating with the directory server. |
-q
--useStartTLS
Description | Use StartTLS when communicating with the directory server. |
-X
--trustAll
Description | Trust any certificate presented by the directory server. |
-K {path}
--keyStorePath {path}
Description | The path to the file to use as the key store for obtaining client certificates when communicating securely with the directory server. |
Required | No |
Multi-Valued | No |
-W {password}
--keyStorePassword {password}
Description | The password to use to access the key store contents. |
Required | No |
Multi-Valued | No |
-u {path}
--keyStorePasswordFile {path}
Description | The path to the file containing the password to use to access the key store contents. |
Required | No |
Multi-Valued | No |
--promptForKeyStorePassword
Description | Indicates that the tool should interactively prompt the user for the password to use to access the key store contents. |
--keyStoreFormat {format}
Description | The format (e.g., jks, jceks, pkcs12, etc.) for the key store file. |
Required | No |
Multi-Valued | No |
-P {path}
--trustStorePath {path}
Description | The path to the file to use as trust store when determining whether to trust a certificate presented by the directory server. |
Required | No |
Multi-Valued | No |
-T {password}
--trustStorePassword {password}
Description | The password to use to access the trust store contents. |
Required | No |
Multi-Valued | No |
-U {path}
--trustStorePasswordFile {path}
Description | The path to the file containing the password to use to access the trust store contents. |
Required | No |
Multi-Valued | No |
--promptForTrustStorePassword
Description | Indicates that the tool should interactively prompt the user for the password to use to access the trust store contents. |
--trustStoreFormat {format}
Description | The format (e.g., jks, jceks, pkcs12, etc.) for the trust store file. |
Required | No |
Multi-Valued | No |
-N {nickname}
--certNickname {nickname}
Description | The nickname (alias) of the client certificate in the key store to present to the directory server for SSL client authentication. |
Required | No |
Multi-Valued | No |
-o {name=value}
--saslOption {name=value}
Description | A name-value pair providing information to use when performing SASL authentication. |
Required | No |
Multi-Valued | Yes |
--useSASLExternal
Description | Use the SASL EXTERNAL mechanism to authenticate. |
--helpSASL
Description | Provide information about the supported SASL mechanisms, including the properties available for use with each. |
-b {dn}
--baseDN {dn}
Description | The base DN to use for the searches. It may be a simple DN or a value pattern to specify a range of DNs (e.g., "uid=user.[1-1000],ou=People,dc=example,dc=com"). See https://docs.ldap.com/ldap-sdk/docs/javadoc/index.html?com/unboundid/util/ValuePattern.html for complete details about the value pattern syntax. This argument must not be used in conjunction with the --ldapURL argument. |
Default Value | |
Required | No |
Multi-Valued | No |
-s {scope}
--scope {scope}
Description | The scope to use for the searches. It should be 'base', 'one', 'sub', or 'subord'. If this is not provided, then a default scope of 'sub' will be used. This argument must not be used in conjunction with the --ldapURL argument. |
Allowed Values |
sub subord base one |
Default Value | SUB |
Required | No |
Multi-Valued | No |
-f {filter}
--filter {filter}
Description | The filter to use for the searches. It may be a simple filter or a value pattern to specify a range of filters (e.g., "(uid=user.[1-1000])"). See https://docs.ldap.com/ldap-sdk/docs/javadoc/index.html?com/unboundid/util/ValuePattern.html for complete details about the value pattern syntax. Exactly one of this argument and the --ldapURL arguments must be provided. |
Required | No |
Multi-Valued | No |
-A {name}
--attribute {name}
Description | The name of an attribute to include in entries returned from the searches. Multiple attributes may be requested by providing this argument multiple times. If no request attributes are provided, then the entries returned will include all user attributes. This argument must not be used in conjunction with the --ldapURL argument. |
Required | No |
Multi-Valued | Yes |
--ldapURL {url}
Description | An LDAP URL that provides the base DN, scope, filter, and requested attributes to use for the search requests (the address and port components of the URL, if present, will be ignored). It may be a simple LDAP URL or a value pattern to specify a range of URLs. See https://docs.ldap.com/ldap-sdk/docs/javadoc/index.html?com/unboundid/util/ValuePattern.html for complete details about the value pattern syntax. If this argument is provided, then none of the --baseDN, --scope, --filter, or --attribute arguments may be used. |
Required | No |
Multi-Valued | No |
-z {num}
--sizeLimit {num}
Description | The maximum number of entries that the server should return in response to each search request. A value of zero indicates that the client does not wish to impose any limit on the number of entries that are returned (although the server may impose its own limit). If this is not provided, then a default value of zero will be used. |
Upper Bound | 2147483647 |
Default Value | 0 |
Required | No |
Multi-Valued | No |
-l {seconds}
--timeLimitSeconds {seconds}
Description | The maximum length of time, in seconds, that the server should spend processing each search request. A value of zero indicates that the client does not wish to impose any limit on the server's processing time (although the server may impose its own limit). If this is not provided, then a default value of zero will be used. |
Upper Bound | 2147483647 |
Default Value | 0 |
Required | No |
Multi-Valued | No |
--dereferencePolicy {never|always|search|find}
Description | The alias dereferencing policy to use for search requests. The value should be one of 'never', 'always', 'search', or 'find'. If this is not provided, then a default value of 'never' will be used. |
Default Value | never |
Required | No |
Multi-Valued | No |
--typesOnly
Description | Indicates that server should only include the names of the attributes contained in matching entries rather than both names and values. |
--assertionFilter {filter}
Description | Indicates that search requests should include the assertion request control with the specified filter. |
Required | No |
Multi-Valued | No |
--simplePageSize {size}
Description | Indicates that search requests should include the simple paged results control with the specified page size. |
Upper Bound | 2147483647 |
Required | No |
Multi-Valued | No |
--sortOrder {sortOrder}
Description | Indicates that search requests should include the server-side sort request control with the specified sort order. This should be a comma-delimited list in which each item is an attribute name, optionally preceded by a plus or minus sign (to indicate ascending or descending order; where ascending order is the default), and optionally followed by a colon and the name or OID of the desired ordering matching rule (if this is not provided, the the attribute type's default ordering rule will be used). |
Required | No |
Multi-Valued | No |
-Y {authzID}
--proxyAs {authzID}
Description | Indicates that the proxied authorization control (as defined in RFC 4370) should be used to request that operations be processed using an alternate authorization identity. This may be a simple authorization ID or it may be a value pattern to specify a range of identities. See https://docs.ldap.com/ldap-sdk/docs/javadoc/index.html?com/unboundid/util/ValuePattern.html for complete details about the value pattern syntax. |
Required | No |
Multi-Valued | No |
-J {oid}[:{criticality}[:{stringValue}|::{base64Value}]]
--control {oid}[:{criticality}[:{stringValue}|::{base64Value}]]
Description | Indicates that search requests should include the specified request control. This may be provided multiple times to include multiple request controls. |
Required | No |
Multi-Valued | No |
-t {num}
--numThreads {num}
Description | The number of threads to use to perform the searches. If this is not provided, then a default of one thread will be used. |
Upper Bound | 2147483647 |
Default Value | 1 |
Required | Yes |
Multi-Valued | No |
-i {num}
--intervalDuration {num}
Description | The length of time in seconds between output lines. If this is not provided, then a default interval of five seconds will be used. |
Upper Bound | 2147483647 |
Default Value | 5 |
Required | Yes |
Multi-Valued | No |
-I {num}
--numIntervals {num}
Description | The maximum number of intervals for which to run. If this is not provided, then the tool will run until it is interrupted. |
Upper Bound | 2147483647 |
Default Value | 2147483647 |
Required | Yes |
Multi-Valued | No |
--iterationsBeforeReconnect {num}
Description | The number of search iterations that should be processed on a connection before that connection is closed and replaced with a newly-established (and authenticated, if appropriate) connection. If this is not provided, then connections will not be periodically closed and re-established. |
Lower Bound | -2147483648 |
Upper Bound | 2147483647 |
Default Value | 0 |
Required | No |
Multi-Valued | No |
-r {searches-per-second}
--ratePerSecond {searches-per-second}
Description | The target number of searches to perform per second. It is still necessary to specify a sufficient number of threads for achieving this rate. If neither this option nor --variableRateData is provided, then the tool will run at the maximum rate for the specified number of threads. |
Upper Bound | 2147483647 |
Required | No |
Multi-Valued | No |
--variableRateData {path}
Description | The path to a file containing information that can be used to cause the tool to vary the target rate over time. Use the generateSampleRateFile argument to generate a sample rate definition file with comments that describe the required format for this file. |
Required | No |
Multi-Valued | No |
--generateSampleRateFile {path}
Description | The path to a sample variable data rate file that should be generated. This file will contain comments that describe the expected format for the file to use with the variableRateData argument. |
Required | No |
Multi-Valued | No |
--warmUpIntervals {num}
Description | The number of intervals to complete before beginning overall statistics collection. Specifying a nonzero number of warm-up intervals gives the client and server a chance to warm up without skewing performance results. |
Upper Bound | 2147483647 |
Default Value | 0 |
Required | Yes |
Multi-Valued | No |
--timestampFormat {format}
Description | Indicates the format to use for timestamps included in the output. A value of 'none' indicates that no timestamps should be included. A value of 'with-date' indicates that both the date and the time should be included. A value of 'without-date' indicates that only the time should be included. |
Default Value | none |
Required | Yes |
Multi-Valued | No |
-a
--asynchronous
Description | Indicates that the client should operate in asynchronous mode, in which it will not be necessary to wait for a response to a previous request before sending the next request. Either the '--ratePerSecond' or the '--maxOutstandingRequests' argument must be provided to limit the number of outstanding requests. |
-O {num}
--maxOutstandingRequests {num}
Description | Specifies the maximum number of outstanding requests that should be allowed when operating in asynchronous mode. |
Upper Bound | 2147483647 |
Required | No |
Multi-Valued | No |
--suppressErrorResultCodes
Description | Indicates that information about the result codes for failed operations should not be displayed. |
-c
--csv
Description | Generate output in CSV format rather than a display-friendly format |
-R {value}
--randomSeed {value}
Description | Specifies the seed to use for the random number generator. |
Lower Bound | -2147483648 |
Upper Bound | 2147483647 |
Required | No |
Multi-Valued | No |
--interactive
Description | Launch the tool in interactive mode. |
--outputFile {path}
Description | Write all standard output and standard error messages to the specified file instead of to the console. |
Required | No |
Multi-Valued | No |
--appendToOutputFile
Description | Indicates that the tool should append to the file specified by the --outputFile argument if it already exists. If this argument is not provided and the output file already exists, it will be overwritten. |
--teeOutput
Description | Write all standard output and standard error messages to the console as well as to the specified output file. The --outputFile argument must also be provided. |
--propertiesFilePath {path}
Description | The path to a properties file used to specify default values for arguments not supplied on the command line. |
Required | No |
Multi-Valued | No |
--generatePropertiesFile {path}
Description | Write an empty properties file that may be used to specify default values for arguments. |
Required | No |
Multi-Valued | No |
--noPropertiesFile
Description | Do not obtain any argument values from a properties file. |
--suppressPropertiesFileComment
Description | Suppress output listing the arguments obtained from a properties file. |