archaius
microprofile-config
archaius | microprofile-config | |
---|---|---|
3 | 4 | |
2,439 | 204 | |
0.1% | -0.5% | |
8.1 | 6.5 | |
21 days ago | 4 months ago | |
Java | Java | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
archaius
-
Show HN: Targeted Log Levels
2. A realtime, reliable Dynamic Configuration system that gives you interactive, real-time, fine-grained control over operations of your deployed systems.
The core technology is this dynamic configuration system, similar in behavior to Netflix's [https://github.com/Netflix/archaius](https://github.com/Netf..., Amplitude's DynConf [https://amplitude.com/blog/dynamic-configuration](https://am... or HubSpot's conspicuously well-named "Config" [https://product.hubspot.com/blog/backend-tooling](https://pr.... Client libraries bootstrap off a CDN and then start an SSE connection to get updates.
We'd love for you to take Prefab for a spin and share your thoughts. Full support for these logging features in Java & Ruby today. Python/Node/Elixir are in alpha zone and we would love to work with you on their development. See it in action: [https://youtu.be/8AsEJF-NwAQ](https://youtu.be/8AsEJF-NwAQ)
We're so excited to share what we've built. We started Prefab because we think there is too much great, general-purpose tech that's locked away in large orgs. Just because I no longer have a team of 50 developer platform engineers on my side, doesn’t mean I don't want the fruits of their labor.
If you've used dynamic configuration or dynamic log levels before I'd love if you would share your experiences and favorite use cases here.
- Jeff & Prefab
-
Benchmark of Java Configuration Libraries
While you covered a lot of libraries, there are others, more or less used: - https://github.com/constretto/constretto-core - https://github.com/Netflix/archaius - https://github.com/IvanTrendafilov/Confucius - https://commons.apache.org/proper/commons-configuration/ - https://github.com/brianm/config-magic - https://github.com/Graylog2/JadConfig - https://github.com/carueda/tscfg
-
JProperties: A modern replacement for java.util.Properties
Finally I was hoping Netflix would get its act together sooner on Archaius (N.B. that link is the 2.x branch which most things do not use). However Archaius logging library uses SLF4J.
microprofile-config
-
slf4j or System.Logger?
There are a lot of great config libraries, you should also take a look at such as smallrye-config. I am trying to make my library compatible with microprofile-config but there are some fundamental differences.
-
Externalized Properties for the JVM
You might have a look at MicroProfile Config as well.
-
JProperties: A modern replacement for java.util.Properties
Now you might be tempted to say well we just need a System.getProperties replacement. A SLF4J of properties config. Perhaps one that uses the ServiceLoader. And indeed microprofile config somewhat solves that problem. The problem is of course is backward compatibility (replacing all the old libraries uses of system properties of which you might not be able to) and of course that config facade adds a dependency.
-
How to create a ConfigSource for Quarkus that knows about existing properties
Quarkus is internally using the SmallRye implementation of Eclipse MicroProfile Config (MP-Config). MP-Config allows to add so called Configuration Sources, that allow to supply config objects in a programmable way from e.g. a file in a strange format or perhaps even from a central repository. This brief post describes how to create a ConfigSource for Quarkus that knows about existing properties
What are some alternatives?
config - configuration library for JVM languages using HOCON files
gestalt - A Java configuration library that allows you to build your configurations from multiple sources, merges them and convert them into an easy-to-use typesafe configuration class. A simple but powerful interface allows you to navigate to a path within your configurations and retrieve a configuration object, list, or a primitive value.
Spring - Spring Framework
externalized-properties - A lightweight and extensible library to resolve application properties from various external sources.
cfg4j - Modern configuration library for distributed apps written in Java.
yaslf4j - yet another simple logging facade for java
helidon - Java libraries for writing microservices
flogger - A Fluent Logging API for Java
jproperties - An efficient, up-to-date reader/writer for Java properties files
kumuluzee-config-mp - KumuluzEE MicroProfile Config 2.0 provides complete implementation of Eclipse MicroProfile Config 2.0 API for configuring microservices.
geronimo-config - Apache Geronimo Config