[slf4j-user] Missing logger name on Google Appengine
Ceki Gulcu
ceki at qos.ch
Wed Mar 9 14:52:34 UTC 2016
I think JDK14LoggerAdapter is the place to start. As I am not familiar
with Appengine logging I am afraid I can't help much.
On 3/9/2016 14:18, Daniel Felix Ferber wrote:
> Hi Ceki,
>
> I considered the possibility of writing a wrapper on my own. But first I
> would appreciate your advice if that would actually be a reasonable
> approach.
> Maybe I am missing something and trying to solve it on the wrong way?
>
> One possibility would be a wrapper that is very similar to your
> JDK14LoggerAdapter, reusing Appengine's JUL implementation. Another
> possibility would be a wrapper that calls Appengine API directly, but I
> am not sure if this is possible. I will do some research and prototyping
> and let you know if succeeded or not.
>
> Best regards,
> Daniel
>
> 2016-03-09 4:37 GMT-03:00 Ceki Gulcu <ceki at qos.ch <mailto:ceki at qos.ch>>:
>
> Hi Daniel,
>
> Do you intend to write this wrapper for Appengine. If so, I would
> happy be to reference it from the SLF4J web-site.
>
> --
> Ceki
>
>
>
> On 3/9/2016 4:54, Daniel Felix Ferber wrote:
>
> Hi,
>
> I have been wondering why the logger name is missing for
> application log
> messages on Google Appengine. Instead of the logger name, it
> displays
> the sourceClassName and sourceMethodName. (Appengine uses its own
> logging framework whose API is identical to JUL).
>
> After extensive research I found [1,2,3] and I infer that Appengine
> converts JUL LogRecords to AppLogLines, which are stored as
> LogLine JSON
> representation. Note that AppLogLine and LogLine have no 'logger
> name'
> attribute. I conclude that Appengine lacks the 'logger name'
> concept on
> its Cloud Platform Log storage.
>
> First, I believe (imho) that logger name is much more
> significant than
> class and method name.
> Second, as you cannot see the logger name, it gets challenging to
> configure proper log levels to potentially unknown logger names.
> This
> issue mitigated if there is always one logger per class, named
> exactly
> as the class FQCN.
>
> I think that SLF4J could aid under Appengine. For example, when
> adapting
> log message from SLF4J to JUL, instead of calling
> fillCallerData(fqcn,
> logRecord), it could set sourceMethodName to null and
> sourceClassName to
> the logger name... Maybe as a wrapper implementation for Appengine?
>
> [1] https://cloud.google.com/appengine/docs/java/logs/
> [2]
> https://cloud.google.com/appengine/docs/java/javadoc/com/google/appengine/api/log/AppLogLine
> [3]
> https://cloud.google.com/logging/docs/api/ref/rest/v1beta3/LogLine
>
> _______________________________________________
> slf4j-user mailing list
> slf4j-user at qos.ch <mailto:slf4j-user at qos.ch>
> http://mailman.qos.ch/mailman/listinfo/slf4j-user
>
>
>
>
> _______________________________________________
> slf4j-user mailing list
> slf4j-user at qos.ch
> http://mailman.qos.ch/mailman/listinfo/slf4j-user
>
More information about the slf4j-user
mailing list