JSONRPC2.Client.Base (jsonrpc2_client v2.1.0)

Copy Markdown

Base of a JSON-RPC client.

Options:

  • :adapter — the module that executes a request, JSONRPC2.Client.Adapters.Default by default.
  • :telemetry — the namespace the emitted events begin with, :jsonrpc2 by default. A client declaring telemetry: :wallet emits [:wallet, :client, :start] and so on.

The namespace exists because a :telemetry handler subscribes to an event NAME and to nothing else: while two clients share a name, every handler attached to it receives both clients' events and cannot tell which is which, whatever it inspects. A host that talks to more than one upstream gives each client its own namespace, or it can only report on all of them at once.