Compare commits

..

1 commit

Author SHA1 Message Date
Peter Taoussanis
ffc9657bac [new] Add :kvs signal option
Some checks are pending
Graal tests / test (17, macOS-latest) (push) Waiting to run
Graal tests / test (17, ubuntu-latest) (push) Waiting to run
Graal tests / test (17, windows-latest) (push) Waiting to run
Main tests / tests (17, ubuntu-latest) (push) Waiting to run
Main tests / tests (19, ubuntu-latest) (push) Waiting to run
Main tests / tests (21, ubuntu-latest) (push) Waiting to run
2025-06-18 23:15:33 +02:00
2 changed files with 8 additions and 22 deletions

View file

@ -334,7 +334,7 @@ See [here](../../wiki/8-Community) for community resources.
## Funding
You can [help support][sponsor] continued work on this project and [others][my work], thank you!! 🙏
You can [help support][sponsor] continued work on this project, thank you!! 🙏
## License
@ -346,11 +346,10 @@ Licensed under [EPL 1.0](LICENSE.txt) (same as Clojure).
[GitHub releases]: ../../releases
[GitHub issues]: ../../issues
[GitHub wiki]: ../../wiki
[Slack channel]: https://www.taoensso.com/telemere/slack
[Slack channel]: https://www.taoensso.com/telemere/slack
[Peter Taoussanis]: https://www.taoensso.com
[sponsor]: https://www.taoensso.com/sponsor
[my work]: https://www.taoensso.com/clojure-libraries
<!-- Project -->

View file

@ -1,30 +1,17 @@
Are you a library author/maintainer that's considering **using Telemere in your library**?
You have **a few options** below-
You have **two options** below-
# Options
## 1. Common logging facade (basic logging only)
## Modern logging facade
Many libraries need only basic logging. In these cases it can be beneficial to do your logging through a common logging facade like [tools.logging](https://github.com/clojure/tools.logging) or [SLF4J](https://www.slf4j.org/).
[Trove](https://www.taoensso.com/trove) is a minimal, modern alternative to [tools.logging](https://github.com/clojure/tools.logging) that supports all of Telemere's structured logging and rich filtering features.
This'll limit you to basic features (e.g. no structured logging or [rich filtering](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#get-filters)) - but your users will have the freedom to choose and configure their **preferred backend** ([incl. Telemere if they like](./3-Config#interop)).
Basically:
## 2. Telemere as a transitive dependency
1. You include the (very small) Trove dependency with your library
2. Your library logs using the [Trove API](https://github.com/taoensso/trove#to-choose-a-backend)
3. Your users then [choose](https://github.com/taoensso/trove#to-choose-a-backend) their preferred backend (Telemere, etc.)
This would be my first recommendation, and is what I'm planning to use for future updates to [Sente](https://www.taoensso.com/sente), [Carmine](https://www.taoensso.com/carmine), etc.
## Traditional logging facade (basic logging only)
Many libraries need only basic logging. In these cases it can be beneficial to do your logging through a common traditional logging facade like [tools.logging](https://github.com/clojure/tools.logging) or [SLF4J](https://www.slf4j.org/).
Though these'll limit you to basic features (e.g. no structured logging or [rich filtering](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#get-filters)).
## Telemere as a transitive dependency
You could just include [Telemere](https://clojars.org/com.taoensso/telemere) in your **library's dependencies**. Your library (and users) will then have access to the full Telemere API.
Include [Telemere](https://clojars.org/com.taoensso/telemere) in your **library's dependencies**. Your library (and users) will then have access to the full Telemere API.
Telemere's [default config](./1-Getting-started#default-config) is sensible (with println-like console output), so your users are unlikely to need to configure or interact with Telemere much unless they choose to.