Hi, I have reproduced the issue and have the debug logs and client dump
Is there a separate channel or private window where I can share the logs? (I don't want to share it publicly). On Fri, Sep 27, 2019 at 11:48 AM Santhosh Kumar <[email protected]> wrote: > >oggers are hierarchical. > > When you declare a logger for ... > > final static Logger logger = > Logger.getLogger(com.acme.project.MyClass.class.getName()); > > You are asking for a logger on ... > > - / (root) > - com > - acme > - project > - MyClass *<-- this leaf* > - MyOtherClass > - utils > - UtilityLib > - common > - CoreBehaviors > > > The logging configuration you give is for that specific logger and all > children. > > So if you obtain a logger at say "com.acme" via > Logger.getLogger("com.acme") > and then setup an appender on that logger then all events that belong > within "com.acme.*" get that configuration. > Such as from com.acme.common.CoreBehaviors, and > com.acme.project.MyOtherClass, and com.acme.project.utils.UtilityLib, etc... > But not from org.eclipse.jetty.* > > You can put the logging configuration anywhere in this hierarchy that best > suits you. > > log4j is quite capable, but doesn't have some advanced features that other > slf4j implementation offer. > Such as SiftingAppenders (which will pick details from the logging event, > its NDC, and its MDC to route logging events). > Or Discriminators that allow you to associate Appenders to details in the > logging event (or its NDC, or its MDC). > > Thanks very much for the explanation Joakim, now I understood how it works > :) > > On Thu, Sep 26, 2019 at 11:53 PM Joakim Erdfelt <[email protected]> > wrote: > >> Loggers are hierarchical. >> >> When you declare a logger for ... >> >> final static Logger logger = >> Logger.getLogger(com.acme.project.MyClass.class.getName()); >> >> You are asking for a logger on ... >> >> - / (root) >> - com >> - acme >> - project >> - MyClass *<-- this leaf* >> - MyOtherClass >> - utils >> - UtilityLib >> - common >> - CoreBehaviors >> >> >> The logging configuration you give is for that specific logger and all >> children. >> >> So if you obtain a logger at say "com.acme" via >> Logger.getLogger("com.acme") >> and then setup an appender on that logger then all events that belong >> within "com.acme.*" get that configuration. >> Such as from com.acme.common.CoreBehaviors, and >> com.acme.project.MyOtherClass, and com.acme.project.utils.UtilityLib, etc... >> But not from org.eclipse.jetty.* >> >> You can put the logging configuration anywhere in this hierarchy that >> best suits you. >> >> log4j is quite capable, but doesn't have some advanced features that >> other slf4j implementation offer. >> Such as SiftingAppenders (which will pick details from the logging event, >> its NDC, and its MDC to route logging events). >> Or Discriminators that allow you to associate Appenders to details in the >> logging event (or its NDC, or its MDC). >> >> Joakim Erdfelt / [email protected] >> >> >> On Thu, Sep 26, 2019 at 1:10 AM Santhosh Kumar <[email protected]> >> wrote: >> >>> >Since it is the first request that triggers the connection opening, I >>> want to see the debug logs to understand why the connection >>> establishment failed >>> >>> I m trying to get the debug logs but I face a problem where debug logs >>> are always redirected to RootLogger (SLF4j-log4j). How to redirect the >>> debug logs to logs file other than rootLogger. I have also raised a SO >>> question with other details like how I tried( >>> https://stackoverflow.com/questions/58101857/move-jetty-httpclient-debug-logs-from-rootlogger >>> ). Kindly let us know how to handle this case. >>> >>> My sample is as follows, >>> >>> private final static Logger logger = Logger.getRootLogger(); >>> >>> public static void main(String[] args) { >>> DailyRollingFileAppender timeAppender = new DailyRollingFileAppender(); >>> timeAppender.setDatePattern("'.'yyyy-MM-dd-HH-mm");//write at start of >>> every minute >>> timeAppender.setName("FileLogger"); >>> timeAppender.setFile("/path-to-log/client.log"); >>> timeAppender.setLayout(new PatternLayout("%t %p %d %-5p [%c{1}] %m%n")); >>> timeAppender.setThreshold(Level.ALL); >>> timeAppender.setAppend(true); >>> timeAppender.activateOptions(); >>> logger.setAdditivity(false); >>> logger.addAppender(timeAppender); >>> >>> logger.debug("JDK Used-->"+System.getProperty("java.version")); >>> //HttpClient code follows >>> ...... >>> >>> >>> and my logger files prints, >>> >>> main DEBUG 2019-09-25 20:26:07,347 DEBUG [JettyJMX] JDK -->1.8.0_212 >>> main DEBUG 2019-09-25 20:26:07,485 DEBUG [log] Logging to >>> org.slf4j.impl.Log4jLoggerAdapter(org.eclipse.jetty.util.log) via >>> org.eclipse.jetty.util.log.Slf4jLog >>> main INFO 2019-09-25 20:26:07,488 INFO [log] Logging initialized @370ms to >>> org.eclipse.jetty.util.log.Slf4jLog >>> main DEBUG 2019-09-25 20:26:07,591 DEBUG [ContainerLifeCycle] >>> HttpClient@65e579dc{STOPPED} added >>> .... >>> >>> >>> But I don't want to use rootLogger as other thirdparty packages may use >>> slf4j in my application so I want to redirect jetty debug logs to a >>> separate file. So, instead of using RootLogger I tried using class logger >>> like >>> >>> final static Logger logger = Logger.getLogger(MyClass.class.getName()); >>> >>> >>> which only prints, >>> >>> main DEBUG 2019-09-25 20:49:03,676 DEBUG [JettyJMX] JDK -->1.8.0_212 >>> >>> >>> SLF4j Jars Used: log4j-1.2.15.jar, slf4j-api-1.7.25.jar, >>> slf4j-log4j12-1.7.25.jar >>> >>> Jetty Version Used- 9.4.19 >>> >>> Jdk Used: 1.8 >>> >>> I can get debug logs only if I use rootLogger, is there a way or >>> configuration to redirect debug logs from RootLogger to any other loggers? >>> >>> Thanks In Advance >>> >>> >>> >>> >>> On Mon, Sep 23, 2019 at 11:41 AM Santhosh Kumar <[email protected]> >>> wrote: >>> >>>> >What I see from the dump is that the requests get queued and there are >>>> no established connections. >>>> Since it is the first request that triggers the connection opening, I >>>> want to see the debug logs to understand why the connection >>>> establishment failed, and how it failed (as any failure should have >>>> aborted the queued requests). >>>> >>>> The remote server is always accessible(verified by browser, curl, wget >>>> or even another jetty standalone program) when threads are hung. >>>> >>>> >You make requests by host or by IP address (i.e. is DNS involved)? >>>> >>>> We make requests by IP address. >>>> >>>> I ll try to get the debug logs asap >>>> >>>> Thanks :) >>>> >>>> >>>> >>>> >>>> >>>> On Fri, Sep 20, 2019 at 7:54 PM Simone Bordet <[email protected]> >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> On Fri, Sep 20, 2019 at 2:09 PM Santhosh Kumar <[email protected]> >>>>> wrote: >>>>> > Enabling Debug logs in production servers are real headache, anyhow >>>>> I ll try to get the logs somehow. My doubt is *first* request you mean >>>>> whether its a very first request fired by the client or the first request >>>>> which hangs? >>>>> >>>>> What I see from the dump is that the requests get queued and there are >>>>> no established connections. >>>>> Since it is the first request that triggers the connection opening, I >>>>> want to see the debug logs to understand why the connection >>>>> establishment failed, and how it failed (as any failure should have >>>>> aborted the queued requests). >>>>> You make requests by host or by IP address (i.e. is DNS involved)? >>>>> >>>>> -- >>>>> Simone Bordet >>>>> ---- >>>>> http://cometd.org >>>>> http://webtide.com >>>>> Developer advice, training, services and support >>>>> from the Jetty & CometD experts. >>>>> _______________________________________________ >>>>> jetty-users mailing list >>>>> [email protected] >>>>> To change your delivery options, retrieve your password, or >>>>> unsubscribe from this list, visit >>>>> https://www.eclipse.org/mailman/listinfo/jetty-users >>>>> >>>> >>>> >>>> -- >>>> *With Regards,* >>>> *Santhosh Kumar J* >>>> >>> >>> >>> -- >>> *With Regards,* >>> *Santhosh Kumar J* >>> _______________________________________________ >>> jetty-users mailing list >>> [email protected] >>> To change your delivery options, retrieve your password, or unsubscribe >>> from this list, visit >>> https://www.eclipse.org/mailman/listinfo/jetty-users >> >> _______________________________________________ >> jetty-users mailing list >> [email protected] >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://www.eclipse.org/mailman/listinfo/jetty-users > > > > -- > *With Regards,* > *Santhosh Kumar J* > -- *With Regards,* *Santhosh Kumar J*
_______________________________________________ jetty-users mailing list [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jetty-users
