4.2.0 • Published 2 months ago

resolve-ip v4.2.0

Weekly downloads
34
License
-
Repository
-
Last release
2 months ago

resolve-ip

resolve-ip client library.

ResolveIP ⏏

resolve-ip client

Kind: Exported class

new ResolveIP(options)

Create a new client object.

ParamTypeDefaultDescription
optionsObjectOptions for constructing a client object.
options.addressstringURL where the server is located. Must provide this or the discovery argument
options.discoveryboolUse clever-discovery to locate the server. Must provide this or the address argument
options.timeoutnumberThe timeout to use for all client requests, in milliseconds. This can be overridden on a per-request basis. Default is 5000ms.
options.keepaliveboolSet keepalive to true for client requests. This sets the forever: true attribute in request. Defaults to true.
options.retryPolicyRetryPoliciesRetryPolicies.SingleThe logic to determine which requests to retry, as well as how many times to retry.
options.loggermodule:kayvee.Loggerlogger.New("resolve-ip-wagclient")The Kayvee logger to use in the client.
options.circuitObjectOptions for constructing the client's circuit breaker.
options.circuit.forceClosedboolWhen set to true the circuit will always be closed. Default: true.
options.circuit.maxConcurrentRequestsnumberthe maximum number of concurrent requests the client can make at the same time. Default: 100.
options.circuit.requestVolumeThresholdnumberThe minimum number of requests needed before a circuit can be tripped due to health. Default: 20.
options.circuit.sleepWindownumberhow long, in milliseconds, to wait after a circuit opens before testing for recovery. Default: 5000.
options.circuit.errorPercentThresholdnumberthe threshold to place on the rolling error rate. Once the error rate exceeds this percentage, the circuit opens. Default: 90.

resolveIP.close()

Releases handles used in client

Kind: instance method of ResolveIP

resolveIP.healthCheck(options, cb) ⇒ Promise

Checks if the service is healthy

Kind: instance method of ResolveIP
Fulfill: undefined
Reject: BadRequest
Reject: InternalError
Reject: Error

ParamTypeDescription
optionsobject
options.timeoutnumberA request specific timeout
options.retryPolicyRetryPoliciesA request specific retryPolicy
cbfunction

resolveIP.locationForIP(ip, options, cb) ⇒ Promise

Gets the lat/lon for a given IP.

Kind: instance method of ResolveIP
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error

ParamTypeDescription
ipstringThe IP to try to locate
optionsobject
options.timeoutnumberA request specific timeout
options.retryPolicyRetryPoliciesA request specific retryPolicy
cbfunction

ResolveIP.RetryPolicies

Retry policies available to use.

Kind: static property of ResolveIP

RetryPolicies.Exponential

The exponential retry policy will retry five times with an exponential backoff.

Kind: static constant of RetryPolicies

RetryPolicies.Single

Use this retry policy to retry a request once.

Kind: static constant of RetryPolicies

RetryPolicies.None

Use this retry policy to turn off retries.

Kind: static constant of RetryPolicies

ResolveIP.Errors

Errors returned by methods.

Kind: static property of ResolveIP

Errors.BadRequest ⇐ Error

BadRequest

Kind: static class of Errors
Extends: Error
Properties

NameType
messagestring

Errors.InternalError ⇐ Error

InternalError

Kind: static class of Errors
Extends: Error
Properties

NameType
messagestring

Errors.NotFound ⇐ Error

NotFound

Kind: static class of Errors
Extends: Error
Properties

NameType
messagestring

ResolveIP.DefaultCircuitOptions

Default circuit breaker options.

Kind: static constant of ResolveIP