Bug 864619

Summary: AS7 plugin and RtFilter are not in sync with their out-of-box defaults
Product: [Other] RHQ Project Reporter: John Mazzitelli <mazz>
Component: PluginsAssignee: John Mazzitelli <mazz>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.5CC: hrupp
Target Milestone: ---   
Target Release: RHQ 4.6   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 864621 (view as bug list) Environment:
Last Closed: 2013-09-03 14:43:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 815889, 864621    

Description John Mazzitelli 2012-10-09 18:47:03 UTC
bug #815889 implements RT monitoring for the AS7 plugin. However, there are problems. I noticed these while working with the rhq-server plugin to monitor the RHQ Server when running in AS7.

It all boils down to the AS7 component org.rhq.modules.plugins.jbossas7.WebRuntimeComponent needing to have the same out-of-box defaults as the response time servlet filter org.rhq.helpers.rtfilter.filter.RtFilter.

Things I've seen:

1) The RtFilter stores the rt log files, by default, in the AS7 log directory under a subdirectory called "rt". The AS7 plugin just assumes they are in the log directory itself.

2) If the virtual host is the default host, the RtFilter just stores the RT data in a log file called <context-root>_rt.log - for example "coregui_rt.log". But the AS7 plugin always assumes the virtual host name is a prefix for that file name.  So if its the default virtual host (AS7 reports this as "default-host") the AS7 plugin will look for the RT data file called "default-host_<context-root>_rt.log" - for example, default-host_/coregui_rt.log. The AS7 plugin should not prefex with "default-host_" since that is what RtFilter does.

3) If the context root has a "/" in it, the AS7 plugin uses it literally (so for a context root of "/coregui") it will build the RT log file name as "<as7-log-dir>/default-host_/coregui_rt.log". So it thinks it should be in a subdirectory under the default virtual host. The RtFilter doesn't does this.

4) if the context is the root context ("/") the RtFilter uses "ROOT" but the AS7 plugin does not. The AS7 plugin should use "ROOT_rt.log" as the last part of the log file name but it uses  "/_rt.log".

Comment 1 John Mazzitelli 2012-10-09 19:20:41 UTC
to test, just import the RHQ Server AS resource and turn on the response time metrics for the portal-war and coregui UIs. Then poke around the UI some and after a while, view the Calltime data for the resources.

Comment 2 John Mazzitelli 2012-10-09 19:27:34 UTC
oh, one other thing - the AS7 plugin forgot to set the log directory plugin configuration property. this is important because if you start the AS7 with a different log dir property (like RHQ does) then the AS7 plugin won't know where the RtFilter stores its log files.

Comment 3 John Mazzitelli 2012-10-09 19:30:45 UTC
these two git commits to master fix the 5 reported problems:

4b877c477d5d82dc55abe5ea29c4c8972330f30e

09bccb738afe0e709e8cfa30054398c8be136f5a

Comment 4 Heiko W. Rupp 2013-09-03 14:43:58 UTC
Bulk closing of issues in old RHQ releases that are in production for a while now.

Please open a new issue when running into an issue.