confluentinc / ksql

The database purpose-built for stream processing applications.
https://ksqldb.io
Other
87 stars 1.04k forks source link

Server shouldn't list UI URL in stdout if UI is not deployed #1552

Closed rmoff closed 6 years ago

rmoff commented 6 years ago

5.0.0-beta180702222458

By default, ksql.server.ui.enabled is true, but by default the WAR is not present and so KSQL Server throws:

[2018-07-07 17:52:27,628] ERROR Unable to load ui from /Users/Robin/cp/confluent-5.0.0-beta180702222458/ui/expanded. You can disable the ui by setting ksql.server.ui.enabled to false (io.confluent.ksql.rest.server.KsqlRestApplication:178)
java.lang.IllegalArgumentException: file:///Users/Robin/cp/confluent-5.0.0-beta180702222458/ui/expanded is not an existing directory.
        at org.eclipse.jetty.util.resource.ResourceCollection.<init>(ResourceCollection.java:88)
        at io.confluent.ksql.rest.server.KsqlRestApplication.getStaticResources(KsqlRestApplication.java:176)
        at io.confluent.rest.Application.createServer(Application.java:277)
        at io.confluent.rest.Application.start(Application.java:552)
        at io.confluent.ksql.rest.server.KsqlRestApplication.start(KsqlRestApplication.java:190)
        at io.confluent.ksql.rest.server.KsqlServerMain.tryStartApp(KsqlServerMain.java:60)
        at io.confluent.ksql.rest.server.KsqlServerMain.main(KsqlServerMain.java:46)

But, even though it's detected an error in loading the UI, KSQL server still sends to stdout:

To access the UI, point your browser at:
http://localhost:8088/index.html

This is misleading to users expecting to find a UI. By default this URL throws a 404.

apurvam commented 6 years ago

This has been fixed by https://github.com/confluentinc/ksql/pull/1527