[keycloak-dev] testsuite still eats server-side logs in IDE

Marek Posolda mposolda at redhat.com
Tue Apr 4 10:23:02 EDT 2017


IMO it works for travis/jenkins, but doesn't work for IDE.

When debugging in IDE, you usually want to see all the test output even 
if test not failing. You want to see it immediately. And the thread 
you're debugging is in many cases different then the thread, which is 
expected to output something to console log (eg. when debugging the test 
method, you want to check that after calling the line with 
"oauthClient.openLoginForm()" the server called the expected HTTP 
requests and wrote the expected items to the log etc).

Also some of us use the pattern like this when developing something:

@Test
public void testSleep() {
  Thread.sleep(10000000);
}

in which case you usually just test the Keycloak server/UI directly and 
test is here just to prepare the environment, which is done in @Before 
methods etc. This test method is never finished and hence never failed. 
But still, you want to see the log/console output immediately when 
you're testing stuff.

Marek


On 04/04/17 15:53, Stian Thorgersen wrote:
> Wouldn't simply only showing log output from failed tests solve all 
> issues? In the IDE you get the debug info you need to resolve a 
> failing test. On Travis or Jenkins you get the details you need to 
> look into failed tests without having X megabytes of test output, 
> expected exceptions, etc..
>
>
> On 4 April 2017 at 15:11, Marek Posolda <mposolda at redhat.com 
> <mailto:mposolda at redhat.com>> wrote:
>
>     Hmm... I guess it might be "org.xnio" ? As we have "org.xnio" and
>     "org.hibernate" switched to OFF. Some other categories (resteasy
>     etc) are switched to WARN.
>
>     Maybe we can have different log4j files used when running from IDE
>     and from maven? As when running from IDE, you are usually
>     debugging/tracing one particular test and you want all the logging
>     enabled in the console for most of the libraries. When with maven
>     it is the opposite and we want to reduce console logging as much
>     as possible.
>
>     Marek
>
>
>     On 04/04/17 15:00, Bill Burke wrote:
>>
>>     The error that was eaten was something thrown from Undertow
>>     before it even got to org.keycloak code.
>>
>>
>>     On 4/4/17 8:00 AM, Stian Thorgersen wrote:
>>>     This will help with those cases where you currently see a whole
>>>     bunch of exceptions in the logs where they are actually expected
>>>
>>>     On 4 April 2017 at 13:44, Marek Posolda <mposolda at redhat.com
>>>     <mailto:mposolda at redhat.com>> wrote:
>>>
>>>         +1
>>>
>>>         It will be good if it logs the details for whole class in
>>>         case that some test failed. As there could be dependencies
>>>         between the order in which test method was executed etc.
>>>
>>>         Also we can have an appender, which will log everything to
>>>         the file. So if you still want to see full log and all the
>>>         details, you can look to the file.
>>>
>>>         Marek
>>>
>>>
>>>
>>>         On 04/04/17 12:26, Stian Thorgersen wrote:
>>>>         Here's a cray thought. Could we somehow hide all log output
>>>>         for a test that passes and only show log output for failed
>>>>         tests? Maybe it could be done with a custom log appender
>>>>         that buffers log output, then the unit tests could call
>>>>         clear or dump depening on success/failure.
>>>>
>>>>         On 4 April 2017 at 12:24, Stian Thorgersen
>>>>         <sthorger at redhat.com <mailto:sthorger at redhat.com>> wrote:
>>>>
>>>>             I think this probably still needs some work. When
>>>>             running from IDE we don't need the TestEventsLogger at
>>>>             all as the IDE (at least IntelliJ) deals with that in a
>>>>             much nicer way.
>>>>
>>>>             When running on Travis there's probably still an issue
>>>>             with to much log being generated. I can try this again,
>>>>             but last time I tried with -Pauth-server-wildfly the
>>>>             sysoutput file became to big (4mb+).
>>>>
>>>>             On 4 April 2017 at 10:21, Marek Posolda
>>>>             <mposolda at redhat.com <mailto:mposolda at redhat.com>> wrote:
>>>>
>>>>                 I found some workaround to fix that. PR sent here:
>>>>                 https://github.com/keycloak/keycloak/pull/4002
>>>>                 <https://github.com/keycloak/keycloak/pull/4002>
>>>>
>>>>                 Now the default logging level for "org.keycloak" is
>>>>                 INFO when you run from IDE, but disabled when you
>>>>                 run with maven-surefire-plugin. In both cases,
>>>>                 system property "keycloak.logging.level" can be
>>>>                 used to override the default.
>>>>
>>>>                 Marek
>>>>
>>>>
>>>>                 On 04/04/17 09:24, Stian Thorgersen wrote:
>>>>>                 Pavel - can you comment on this please? If I
>>>>>                 remember correctly it wasn't working initially,
>>>>>                 then Marek fixed it, but now it's broken again.
>>>>>
>>>>>                 On 3 April 2017 at 22:06, Marek Posolda
>>>>>                 <mposolda at redhat.com <mailto:mposolda at redhat.com>>
>>>>>                 wrote:
>>>>>
>>>>>                     Doesn't work here too. But it worked a month
>>>>>                     ago or so. Not sure what changed in the
>>>>>                     meantime... Created
>>>>>                     https://issues.jboss.org/browse/KEYCLOAK-4705
>>>>>                     <https://issues.jboss.org/browse/KEYCLOAK-4705>
>>>>>                     . Will try to take a look.
>>>>>
>>>>>                     Marek
>>>>>
>>>>>                     On 03/04/17 16:22, Bill Burke wrote:
>>>>>
>>>>>                         And that helps how?  Running in IDE should
>>>>>                         not suppress any error
>>>>>                         messages.  The error message was actually
>>>>>                         an internal Undertow one
>>>>>                         complaining that async HTTP was
>>>>>                         unsupported. I did look in the log4j
>>>>>                         properties. The default logging level
>>>>>                         looks like it is INFO.
>>>>>
>>>>>
>>>>>                         On 4/3/17 9:33 AM, Stian Thorgersen wrote:
>>>>>
>>>>>                             https://github.com/keycloak/keycloak/blob/master/testsuite/integration-arquillian/HOW-TO-RUN.md#testsuite-logging
>>>>>                             <https://github.com/keycloak/keycloak/blob/master/testsuite/integration-arquillian/HOW-TO-RUN.md#testsuite-logging>
>>>>>
>>>>>                             On 1 April 2017 at 21:22, Bill Burke
>>>>>                             <bburke at redhat.com
>>>>>                             <mailto:bburke at redhat.com>
>>>>>                             <mailto:bburke at redhat.com
>>>>>                             <mailto:bburke at redhat.com>>> wrote:
>>>>>
>>>>>                                  When running arquillian tests in
>>>>>                             the IDE, I'm still seeing no log
>>>>>                                  messages from the server.  I had
>>>>>                             to set a breakpoint in JAX-RS code to
>>>>>                                  find out a Javascript parsing error.
>>>>>
>>>>>                              _______________________________________________
>>>>>                              keycloak-dev mailing list
>>>>>                             keycloak-dev at lists.jboss.org
>>>>>                             <mailto:keycloak-dev at lists.jboss.org>
>>>>>                             <mailto:keycloak-dev at lists.jboss.org
>>>>>                             <mailto:keycloak-dev at lists.jboss.org>>
>>>>>                             https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>>>                             <https://lists.jboss.org/mailman/listinfo/keycloak-dev>
>>>>>                                
>>>>>                              <https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>>>                             <https://lists.jboss.org/mailman/listinfo/keycloak-dev>>
>>>>>
>>>>>
>>>>>                         _______________________________________________
>>>>>                         keycloak-dev mailing list
>>>>>                         keycloak-dev at lists.jboss.org
>>>>>                         <mailto:keycloak-dev at lists.jboss.org>
>>>>>                         https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>>>                         <https://lists.jboss.org/mailman/listinfo/keycloak-dev>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>
>
>



More information about the keycloak-dev mailing list