resolve-ip client library.
-
resolve-ip
-
ResolveIP ⏏
- new ResolveIP(options)
-
instance
- .close()
-
.healthCheck([options], [cb]) ⇒
Promise
-
.locationForIP(ip, [options], [cb]) ⇒
Promise
-
static
- .RetryPolicies
-
.Errors
-
.BadRequest ⇐
Error
-
.InternalError ⇐
Error
-
.NotFound ⇐
Error
-
.BadRequest ⇐
- .DefaultCircuitOptions
-
ResolveIP ⏏
resolve-ip client
Create a new client object.
Param | Type | Default | Description |
---|---|---|---|
options | Object |
Options for constructing a client object. | |
[options.address] | string |
URL where the server is located. Must provide this or the discovery argument | |
[options.discovery] | bool |
Use clever-discovery to locate the server. Must provide this or the address argument | |
[options.timeout] | number |
The timeout to use for all client requests, in milliseconds. This can be overridden on a per-request basis. Default is 5000ms. | |
[options.keepalive] | bool |
Set keepalive to true for client requests. This sets the forever: true attribute in request. Defaults to true. | |
[options.retryPolicy] | RetryPolicies |
RetryPolicies.Single |
The logic to determine which requests to retry, as well as how many times to retry. |
[options.logger] | module:kayvee.Logger |
logger.New("resolve-ip-wagclient") |
The Kayvee logger to use in the client. |
[options.circuit] | Object |
Options for constructing the client's circuit breaker. | |
[options.circuit.forceClosed] | bool |
When set to true the circuit will always be closed. Default: true. | |
[options.circuit.maxConcurrentRequests] | number |
the maximum number of concurrent requests the client can make at the same time. Default: 100. | |
[options.circuit.requestVolumeThreshold] | number |
The minimum number of requests needed before a circuit can be tripped due to health. Default: 20. | |
[options.circuit.sleepWindow] | number |
how long, in milliseconds, to wait after a circuit opens before testing for recovery. Default: 5000. | |
[options.circuit.errorPercentThreshold] | number |
the threshold to place on the rolling error rate. Once the error rate exceeds this percentage, the circuit opens. Default: 90. |
Releases handles used in client
Kind: instance method of ResolveIP
Checks if the service is healthy
Kind: instance method of ResolveIP
Fulfill: undefined
Reject: BadRequest
Reject: InternalError
Reject: Error
Param | Type | Description |
---|---|---|
[options] | object |
|
[options.timeout] | number |
A request specific timeout |
[options.retryPolicy] | RetryPolicies |
A request specific retryPolicy |
[cb] | function |
Gets the lat/lon for a given IP.
Kind: instance method of ResolveIP
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
Param | Type | Description |
---|---|---|
ip | string |
The IP to try to locate |
[options] | object |
|
[options.timeout] | number |
A request specific timeout |
[options.retryPolicy] | RetryPolicies |
A request specific retryPolicy |
[cb] | function |
Retry policies available to use.
Kind: static property of ResolveIP
The exponential retry policy will retry five times with an exponential backoff.
Kind: static constant of RetryPolicies
Use this retry policy to retry a request once.
Kind: static constant of RetryPolicies
Use this retry policy to turn off retries.
Kind: static constant of RetryPolicies
Errors returned by methods.
Kind: static property of ResolveIP
-
.Errors
-
.BadRequest ⇐
Error
-
.InternalError ⇐
Error
-
.NotFound ⇐
Error
-
.BadRequest ⇐
BadRequest
Kind: static class of Errors
Extends: Error
Properties
Name | Type |
---|---|
message | string |
InternalError
Kind: static class of Errors
Extends: Error
Properties
Name | Type |
---|---|
message | string |
NotFound
Kind: static class of Errors
Extends: Error
Properties
Name | Type |
---|---|
message | string |
Default circuit breaker options.
Kind: static constant of ResolveIP