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@qos.ch
http://mailman.qos.ch/mailman/listinfo/slf4j-user