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? > 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. 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? -- 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/CANfRfr0wdgTg%2BefbJ421T%3Db-CUshoD4wmBr_4kb4os0VLOYR7w%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
