LogflareEx.Client (logflare_ex v0.2.0-dev.1718053351.fca7edd)
A LogflareEx.Client contains all configuration used for making API requests, whether batched or not.
Application-level Configuration
Application-wide configuration can be set in config.exs:
config :logflare_ex,
api_key: "...",
source_token: "..."Runtime Configuration
All configuration options can be overridden at runtime. This is through the use of the LogflareEx.Client struct.
To create a new client with a custom configuration, use LogflareEx.client/1:
# To create a client from the application-level configuration.
iex> default_client = LogflareEx.client()
%LogflareEx.Client{...}
# To create a client with runtime overrides
iex> client = LogflareEx.client(source_token: "...")
%LogflareEx.Client{...}
# use the runtime client
iex> LogflareEx.send_batched_event(client, %{...})
:okOptions
For every configuration, either :source_token or :source_name must be provided.
:api_key: Required. Public API key.:api_url: Custom Logflare endpoint, for self-hosting. Defaults tohttps//api.logflare.app.:source_token: Source UUID. Mutually exclusive with:source_name:source_name: Source name. Mutually exclusive with:source_token:on_error: mfa callback for handling API errors. Must be 1 arity.:auto_flush: Used for batching. Enables automatic flushing. If disabled,LogflareEx.flush/1must be called.:flush_interval: Used for batching. Flushes cached events at the provided interval.:batch_size: Used for batching. It is the maximum number of events send per API request.
Summary
Types
@type t() :: %LogflareEx.Client{ api_key: String.t(), api_url: String.t(), auto_flush: :boolean, batch_size: non_neg_integer(), flush_interval: non_neg_integer(), on_error: list() | mfa(), source_name: String.t() | nil, source_token: String.t() | nil, tesla_client: Tesla.Client.t() }
Logflare client
Functions
Link to this function
get_config_value(key)
Link to this function
new(opts \\ [])
@spec new(opts()) :: t()
Link to this function