cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IBM WAS not injecting JS agent in source code of page.

Alexander_R_
Advisor

Hello Community!

Maybe somebody have experience and have such case as have I.

UPD: Our customer uses 7.0.0.43 & 7.0.0.37 IBM WAS.

Java VM Info ................ JRE 1.6.0 IBM J9 2.4 Windows Server 2008

Platform .................... Windows Server 2008 R2 Datacenter Service Pack 1 6.1.7601 x64

We have such settings for process group:

=========================

Automatically inject real user monitoring JavaScript tag

Enable to inject JavaScript tag into each HTML request processed by this process group.

=========================

For default application and for application with manually configuration RUM is enabled. Also we have settings - 100% session for analyze.

Problem: Instrumentation of the Javascript tag not working. I have no JS agent in source code of page. RUM is not working for these servers.


Additionally i try to use settings but there is no result:

JavaScript injection

URL ends with * ( After specific HTML </title> )

Additionally i try to save source code to NGINX server - and there is no problem with injecting page. Automatic injection for NGINX on such page was successful.

Additionally i have check logs and there is no critical messages in part of RUM or injection. Only info, for example:

info [native] Detected application server: IBM WebSphere

info [native] ConfigFromServer: Loading agent runtime configuration from C:/ProgramData/dynatrace/oneagent/agent/conf/runtime/0x50125cec20d2dcaf_java_S-1-5-18_1/runtimeConfiguration_v2

info [native] ConfigFromServer: Runtime configuration revision 1567162975534 loaded.

info [native] ConfigFromServer: Loading agent UEM configuration from C:/ProgramData/dynatrace/oneagent/agent/conf/runtime/0x50125cec20d2dcaf_java_S-1-5-18_1/uemConfiguration

info [native] ConfigFromServer: UEM configuration revision 1568018967532 loaded.

info [native] ConfigFromServer: loaded TLD file 'C:/PROGRA~2/DYNATR~1/oneagent/agent/conf/runtime/shared/topleveldomain-1495092426' from disk (version 1495092426)

info [native] ConfigFromServer: Loading agent Mobile RUM configuration from C:/ProgramData/dynatrace/oneagent/agent/conf/runtime/0x50125cec20d2dcaf_java_S-1-5-18_1/mobileRUMConfiguration

info [native] ConfigFromServer: Mobile RUM configuration revision 1567500416541 loaded.

info [native] ConfigFromServer: Loading JS agent from C:/PROGRA~2/DYNATR~1/oneagent/agent/conf/runtime/shared/jsagent-10173190807103944.zip

info [native] ConfigFromServer: JS agent version 10173190807103944 loaded.

info [native] ConfigFromServer: Loading agent Uem Volatile Settings from C:/ProgramData/dynatrace/oneagent/agent/conf/runtime/0x50125cec20d2dcaf_java_S-1-5-18_1/uemVolatileSettings

info [native] ConfigFromServer: No on-disk cache of agent Uem Volatile Settings found: File/Path='C:/ProgramData/dynatrace/oneagent/agent/conf/runtime/0x50125cec20d2dcaf_java_S-1-5-18_1/uemVolatileSettings' : Не удается найти указанный файл. (The specified file cannot be found.)


Maybe somebody have such case or have useful advice to me. Thank you.

Regards,

Alexander


4 REPLIES 4

Julius_Loman
Leader

First, I'm not sure whether you information about WAS version is correct. WAS did not have a version 7.2 (just version 7 in the 7 branch). Anyway WAS 7 is unsupported and I personally have been unsuccessful with monitoring WAS 7 correctly with OneAgent in recent versions. It seemed to be working at the first sight, but it was not. It, for example, did find application services.

Back to the RUM injection - first thing I'd try is to rule out the issue at application side. Some Java frameworks are producing compressed output already (if browser sends header to accept compression). Dynatrace won't inject RUM in this case, since it would be necessary to uncompress the output, check if it's possible to inject JS, inject the JS and compress it back. That's a significant overhead.

So simple check via curl:

curl http://yourwas:yourport/yourapp -H "Accept-Encoding: none" -A "Mozilla" 

The "Accept-Encoding: none" will tell the server not to produce a compressed response. The user agent string is important is also required as to requests with curl or wget default user agent string will be ignored by Dynatrace and RUM will not be injected.


Thank you, i will check this.

IBM versions - 7.0.0.43, another application use - 7.0.0.37


Unfortunately, this version (7.X.X.XX ) is not supported.

We have server side data, service calls, JVM metrics, but in supported technologies i can see there is no support for 7.X.X.XX

Only these versions are supported by Dynatrace:

IBM WebSphere Application Server8, 8.5, 8.5.5, 9.0

Regards,

Alexander


Yes, that's correct. Anyway if you are just missing RUM you have other options to insert it. For you WAS deployment includes IHS, you can install oneagent on and RUM JS will be injected.


Also manual injection or agentless options can also be a way to solve this issue.