(replies inline)

On Fri, 16 Feb 2018, Jesse Glick wrote:

> On Fri, Feb 16, 2018 at 9:51 AM, R. Tyler Croy <[email protected]> wrote:
> > I currently define "error telemetry" to include:
> >
> >  * Uncaught exceptions which cause the Evil Jenkins 500 page
> >  * Logged ERROR messages, with or without exceptions
> 
> Absolutely.
> 
> 
> >  * Logged WARN messages, with or without exceptions
> 
> Possibly. Cf.
> 
> https://github.com/jenkinsci/jenkins/blob/09e1f8cd0ca173f3526f016e9ff18410fb422807/test/src/test/java/jenkins/model/StartupTest.java#L38-L45
> 
> But beware that the list of plugins which emit rather spurious
> `WARNING`s is pretty long at the moment. I guess we will have the
> chance to start fixing those cases among Essentials plugins, but how
> do you plan to filter out cases coming from ???inessential??? [am I
> allowed to say that?] plugins over which we have little control?


Indeed! I've seen, and reported, a lot of these spurious warnings in JIRA based
on my work with the "Code Valet" experiment/prototype. Fortunately most
developers be fine with tweaking the log levels for spurious WARNING logs which
might confuse the already beleaguered Jenkins administrator :)


> > a background busy-waiting thread which loops
> > over all the loggers in the JVM, and adds the SentryHandler to loggers.
> 
> Huh?? All you need to do is add a handler to the root logger, once at
> startup (say in an `@Initializer`). That will receive records sent to
> any sublogger.


Heh, I'm aware that it's not a good approach, thus my questions here.

See also: http://littlefun.org/uploads/52309db3e691b236df7d6b76_736.jpg


> To Bobby???s response, well yes you would miss some early messages that
> way, but Jenkins core is already capturing a bunch of records at
> `INFO`+
> 
> https://github.com/jenkinsci/jenkins/blob/09e1f8cd0ca173f3526f016e9ff18410fb422807/core/src/main/java/hudson/WebAppMain.java#L84-L295
> 
> so in your initializer you can check for anything interesting in that
> buffer too. Anything in Jetty startup prior to `contextInitialized` is
> unlikely, and these would typically not be bugs in software we were
> updating via Evergreen anyway.
> 
> 
> Anyway, +1 for concept. Will this be a JEP?


Definitely! This will be in a JEP as my goal is to provide comprehensive design
documents (via JEP) for as much of Jenkins Essentials as possible for two
reasons: it's the right thing to do, and also it helps me identify gaps and
build a better thing.


Thanks Jesse and Bobby for the ideas, I'll experiment with the custom logger
configuration file approach and verify that it will work as suggested.


Cheers
- R. Tyler Croy

------------------------------------------------------
     Code: <https://github.com/rtyler>
  Chatter: <https://twitter.com/agentdero>
     xmpp: [email protected]

  % gpg --keyserver keys.gnupg.net --recv-key 1426C7DC3F51E16F
------------------------------------------------------

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/20180216161728.kx7vnfcgtrcrtcni%40blackberry.coupleofllamas.com.
For more options, visit https://groups.google.com/d/optout.

Attachment: signature.asc
Description: PGP signature

Reply via email to