dfed96874f
Add instrumentation for Nebulex, a distributed cache library. This library provides solid telemetry support for this initial implementation. Caching implementation is mostly based on in-memory storage (like ETS) and RPC calls for distribution (via OTP libraries, like :erpc). AFAICT, there is not much specifics for how to translate into Semantic Attributes: those caches are not quite a DB, except maybe for the one which implements the storage; the RPC can't be reliably captured either. Given the above constraints, this initial implementation instruments the library via custom attributes (namespaced as `nebulex.*`). It's not 100% clear the behaviour of OTel for actual distributed caches - from my tests, that may create some orphan spans. I think that's fine as first release. Nebulex follow the patterns of Ecto, so this instrumentation follows a similar pattern of OpentelemetryEcto. It does include a `setup_all/1` function for convenience, that leverages the :init events Nebulex emit on process start. Co-authored-by: Tristan Sloughter <t@crashfast.com>
24 lines
590 B
Plaintext
24 lines
590 B
Plaintext
# The directory Mix will write compiled artifacts to.
|
|
/_build/
|
|
|
|
# If you run "mix test --cover", coverage assets end up here.
|
|
/cover/
|
|
|
|
# The directory Mix downloads your dependencies sources to.
|
|
/deps/
|
|
|
|
# Where third-party dependencies like ExDoc output generated docs.
|
|
/doc/
|
|
|
|
# Ignore .fetch files in case you like to edit your project deps locally.
|
|
/.fetch
|
|
|
|
# If the VM crashes, it generates a dump, let's ignore it too.
|
|
erl_crash.dump
|
|
|
|
# Also ignore archive artifacts (built via "mix archive.build").
|
|
*.ez
|
|
|
|
# Ignore package tarball (built via "mix hex.build").
|
|
opentelemetry_redix-*.tar
|