Created attachment 1012768 [details] client side logs Description of problem: webadmin and userportal client logs should be accessible in production builds. For debugging UI purposes, we should be able to tune the client log level via a runtime configurable parameter. For example, if we want to debug some grid refresh issues in a production deployment, we need to set the client log level to DEBUG. Version-Release number of selected component (if applicable): master See attached screenshot for example of logs that should be available in production.
we may want to incorporate this data in the log-viewer (next to the engine.log, etc.) - not sure.
Pushing to future, pending design of new log viewer.
> webadmin and userportal client logs should be accessible in production > builds. Client-side logging code is retained in production builds. RFE https://bugzilla.redhat.com/1049409 adds the ability to persist client-side log records in browser via HTML5 Web Storage API, effectively keeping these logs between browser restarts. > For debugging UI purposes, we should be able to tune the client log > level via a runtime configurable parameter. Once above mentioned RFE is done, we can tune the client-side log level at build time ("gwt.runtimeLogLevel" Maven property) as well as runtime (e.g. using HTML <meta> tag or programmatically by calling "rootLogger.setLevel"). Because of that, this BZ depends on above mentioned RFE. > For example, if we want to debug some grid refresh issues in a production > deployment, we need to set the client log level to DEBUG. There's a caveat to keep in mind: in order to see DEBUG logs at runtime, we must compile GWT application with logging level set to DEBUG. Otherwise, GWT compiler prunes the DEBUG log statements and we won't see any DEBUG logs at runtime. Building on top of above mentioned RFE, "gwt.runtimeLogLevel" could be set to DEBUG (compile-time) and narrowed down to INFO (runtime) by default. We could add new Engine config option to tune *runtime* GWT logging level.
> Because of that, this BZ depends on above mentioned RFE. Added BZ dependency.
(In reply to vszocs from comment #3) > Building on top of above mentioned RFE, "gwt.runtimeLogLevel" could be set > to DEBUG (compile-time) and narrowed down to INFO (runtime) by default. We > could add new Engine config option to tune *runtime* GWT logging level. To clarify, setting "gwt.runtimeLogLevel" to DEBUG should only be done for production builds -- retain all logs and filter them at runtime as needed. There would be no configuration change needed for development builds.
Greg, how does this RFE relate to this bug1351349 ? Wouldn't it be closed, if we have the bug fixed and having the debug packages available on demand?
You're referring to the ability to install rhevm-webadmin-portal-debuginfo and rhevm-user-portal-debuginfo packages and get de-obfuscated logs in ui.log. That does achieve what we're looking for in this RFE -- deobfuscated UI logs -- so perhaps this could be closed. My original thought was to have those logs come back through to the client somehow, so the user doesn't have to go digging on the engine.
Greg, we can keep it open - does not hurt anyone. And once you or anyone gets the time to implement it - why not?