Timber v3.1.2 Timber.Config View Source
Configuration for the Timber library
All supported options are described within their respective method:
:api_key
-api_key/0
:debug_io_device
-debug_io_device/0
:event_key
-event_key/0
:http_client
-http_client/0
:http_url
-http_url/0
:nanosecond_timestamps
-use_nanosecond_timestamps?/0
Each configuration option can be set like the following:
config :timber,
key: :value
Please see the respective method for examples.
Link to this section Summary
Functions
Your Timber application API key
Helpful to inspect internal Timber activity; a useful debugging utility
Change the name of the Logger
metadata key that Timber uses for events.
By default, this is :event
Alternate URL for delivering logs. This is helpful if you want to use a proxy, for example
Alternate URL for delivering logs. This is helpful if you want to use a proxy, for example
Your Timber source ID
Use nanoseconds, instead of the default microseconds, for log timestamps
Link to this section Functions
api_key() View Source
Your Timber application API key.
This can be obtained after you create your account & source in https://app.timber.io
Example
config :timber,
api_key: "abcd1234"
You can also use a {:system, "TIMBER_API_KEY"}
tuple if you prefer environment variables.
config :timber,
api_key: {:system, "TIMBER_API_KEY"}
debug_io_device() View Source
Helpful to inspect internal Timber activity; a useful debugging utility.
If specified, Timber will write messages to this device. We cannot use the
standard Logger
directly because it would create an infinite loop since Timber
operated within the Logger
.
Default: nil
Example
config :timber,
debug_io_device: :stdio
event_key() View Source
Change the name of the Logger
metadata key that Timber uses for events.
By default, this is :event
Default: :event
Example
config :timber,
event_key: :timber_event
Then use it like so:
Logger.info("test", timber_event: my_event)
http_client() View Source
Alternate URL for delivering logs. This is helpful if you want to use a proxy, for example.
Default: HackneyHTTPClient
Example
config :timber,
http_client: Timber.HTTPClients.Hackney
http_host() View Source
Alternate URL for delivering logs. This is helpful if you want to use a proxy, for example.
Default: https://logs.timber.io
Example
config :timber, :http_host, "https://logs.timber.io"
You can also use a {:system, "TIMBER_HOST"}
tuple if you prefer environment variables.
config :timber,
http_host: {:system, "TIMBER_HOST"}
source_id() View Source
Your Timber source ID.
This can be obtained after you create your account & source in https://app.timber.io
Example
config :timber,
source_id: "1234"
You can also use a {:system, "TIMBER_SOURCE_ID"}
tuple if you prefer environment variables.
config :timber,
source_id: {:system, "TIMBER_SOURCE_ID"}
use_nanosecond_timestamps?()
View Source
use_nanosecond_timestamps?() :: boolean()
use_nanosecond_timestamps?() :: boolean()
Use nanoseconds, instead of the default microseconds, for log timestamps.
Unfortunately the Elixir.Logger
produces timestamps with microsecond precision.
This is no adequate in a high volume system, resulting in logs with the same
timestamps, making it difficult to preseve the exact order the logs were created.
By enabling this, Timber will discard the default Elixir.Logger
timestamps and
use it's own with nanosecond precision.
Default: true
Example
config :timber,
nanosecond_timestamps: true