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

Application definition and WAF URL-rewriting


On our WAF (Airlock) we have the following forwarding "rules":

https://hostname/app1 -> https://backend1/app

https://hostname/app2 -> https://backend2/app

We have instrumented the corresponding app server processes (JBoss) on hosts "backend1" and "backend2".

On the incoming requests in the backends the "Host" HTTP header equals to "hostname" which means that "backend1" and "backend2" cannot be used for distinguishing between the two applications.

The URL contexts "/app1" and "/app2" are not propagated to the backends (the WAF rewrites the URL to "/app" in both cases).

Both applications use identical Web Application ID's and entry point (servlet sensor).

How can I create application definitions for distinguishing between the two applications running on each backend?

We use AppMon 6.5.



Dynatrace Champion
Dynatrace Champion

If the applications are indeed the same app, then there's no need to distinguish between them. But if they're separate apps running on separate hosts, then why can't you use the backend hostname as the differentiating designator? Or are you saying that backend1 and backend2 both see a url that says "backend"?

If there's truly nothing different about the requests that go to backend1 and backend2, then I'm confused about why you need to differentiate them.

In v7, there is the ability to differentiate using class/method entry point in the code. Is this perhaps unique in your situation? I don't think this capability exists in 6.5, but I'm not certain.

Hi Joseph,

Both applications are based on the same deployment bundle but are used for different (testing) purposes running different versions etc. therefore they need to be kept apart in AppMon.

My understanding is that for the applicaton definition by URI pattern only the information present in the HTTP headers is used. So for example for determining the host part of an URI it's irrelevant on which host the agent is actually running as only the information in the "Host" HTTP header is evaluated against the URI pattern. Can you confirm?

Just to be clear: The WAF forwards the original "Host" header to the appropriate backend but rewrites the context with "/app" in both cases.

6.5 also supports app defs based on entrypoint classes/methods but in this case it's useless because the code level entrypoint is the same.

Appreciate your feedback.