On 1/25/2016 9:46 AM, Stian Thorgersen wrote:
How does it look like from a usage perspective then?
private
static final KeycloakLogger logger =
Logger.getMessageLogger(KeycloakLogger.class, MyClass.class.getName());
.....
logger.CONFIG.localizedMessage("My localized message"); // logged to
"keycloak-config" category
.....
logger.debug("My debug message"); // logged to
"org.keycloak.mypackage.MyClass" category
On 25 January 2016 at 15:34, Stan Silvert <ssilvert(a)redhat.com
<mailto:ssilvert@redhat.com>> wrote:
Actually, the solution was even simpler than that. I guess I just
needed the weekend to clear my head.
On 1/25/2016 7:16 AM, Stian Thorgersen wrote:
> We should not require having two logger fields in a class.
> Instead we should create a wrapper logger that gives access to
> the class logger for debug, but also the special loggers for
> other log output. For example:
>
> final KeycloakLogger logger =
> KeycloakLogger.getLogger(MyClass.class);
>
> logger.debug("Hello world!");
> logger.config().serverConfigNotFound();
> logger.realm().realmNameInUse(realmName);
>
> On 22 January 2016 at 18:36, Stan Silvert <ssilvert(a)redhat.com
> <mailto:ssilvert@redhat.com>> wrote:
>
> From yesterday's discussion, it was clear that as a group,
> we consider
> debug/trace logging to be fundamentally different from other
> logging.
> The loggers I've been concerned with will be logged through a
> limited
> number of keycloak loggers using broad categories such as
> User, Realm,
> Config, etc.
>
> But for debug/trace logging, we want the category to be based
> upon the
> class it was logged from. That way, you can turn logging on
> for a
> particular class, package, or sub-package to do your trace.
>
> There is no good way to do both kinds of logging using the
> same logger
> instance. Therefore, I propose that debug/trace logging be
> done the
> same way we've always done it. Declare a debug/trace logger
> in your
> class and use that. Other logging will be done through the
> keycloak logger.
>
> So, to do both kinds of logging in the same class, you
> declare two loggers:
>
> private static final KeycloakLogger kcLogger =
> KeycloakLogger.ROOT_LOGGER;
> private static final Logger debugLogger =
> Logger.getLogger(MyClass.class);
> .....
> kcLogger.CONFIG.localizedMessage("My localized message"); //
> logged to
> "keycloak-config" category
> .....
> debugLogger.debug("My debug message"); // logged to
> "org.keycloak.mypackage.MyClass" category
>
> Comments?
>
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev(a)lists.jboss.org
> <mailto:keycloak-dev@lists.jboss.org>
>
https://lists.jboss.org/mailman/listinfo/keycloak-dev
>
>