From what I read on the forum for past few months, it seems like right now the only workaround to capture client IP like we have in AppMon, is using request attribute.
If any fellow community member already did that, can you let me know roughly the overhead after you do so? Does it feels like the dashboard of Dynatrace is loading much slower after doing so?
I am about to do so (still thinking if there is any other better option to capture client IP), but would be curious to know the impact of it.
I didn't face any issue with performance after adding this request Attribute. Dynatrace is well optimised so it's not so easy to break it with such thing. I have such configuration in bank production envrionment (just for a scale :)).
You're right, if you want look for IP address you will have to add request attribute. In other way this information is searchable only in RUM. Client IP addresses are available in details of purepaths but you can't search for them.
Rember that by default IP Addresses are masked in DT:
I'm thinking if client IP is passing in Client-IP header not in x-forwarded-for or others, which specific datasource of request attributes should we use?
It is visible in PP metadata but where are they coming from? request headers, response header etc?
For API calls I'm not sure, you have to trace such communication and check headers. Checking on my API's will not make sense because it depends of web server technology and couple more things. But try those headers here. Client IP always will be in request header, not response one. I assume that dynatrace is using only those headers for IP recognition so in general it should work.