-
Notifications
You must be signed in to change notification settings - Fork 199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proxy settings should be namespaced #371
Comments
Or allow the proxy settings to be specifiable in the ApplicationInsights.xml config file. |
Our company (Synopsys) is needing to decide on what product to use for gathering metrics soon and I think App Insights offers a very compelling product for us to use. Unfortunately this is a blocker issue for us (as mentioned above). Getting it fixed soon would help unblock us from potentially using App Insights in our products and allow us to do a full evaluation of the product. What is the expected timeframe for getting this fixed? |
@shamiwillms really excited for Synopsys to try Application Insights. If you don't mind can you please elaborate on describing the problem which is blocking you and what all features are you considering most important in deciding the product for gathering metrics. We would be more than happy to talk and know your opinion. As far as this particular problem is concerned we will try to get it addressed as soon as possible and more the details you provide the quicker we might be able to resolve it. |
@dhaval24 To be more precise, we have some micro services that need to communicate with each other. They do this over HTTP using the Apache http clients. This environment is closed to the internet and only a few privileged connections are allowed to go though using a proxy. We whitelisted the App Insights servers in the proxy, but because of the global nature of the proxy configuration, ALL http connections were being routed through the proxy, unfortunately this meant our services could no longer talk to each other as the proxy is meant only for connections to the internet. If the proxy settings were namespaced, then our Apache clients would continue to connect to our services without going through the proxy and the App Insights client can connect to the App Insights server through the proxy. Hope that makes our problem clearer. |
@sanjeevp thanks for the detailed explanation. We will try to look into it and update the time frame when we believe this would roll out. In the mean while if you have any suggestions on how we can best accomplish this, you are most welcomed to let us know or even create a pull request. |
@sanjeevp have you given this (https://github.com/Microsoft/ApplicationInsights-Java/wiki/Using-an-HTTP-Proxy) a try? Does it solve your problem. |
@dhaval24 That is precisely the nature of the problem, those settings apply to every client, not just the ApplicationInsights client. |
@sanjeevp got it. So that means that if you use the above settings it will set the proxy for every other client running in the web application and not just for the application insights client and you would like to have a seperate namespaced proxy to be used only for application insights client and similarly all your other clients also have their own proxy. Is that correct? If this is the problem it might not be addressed atleast in the next upcoming versions. We will try to resolve it in 1.0.11 if possible. We might even move to native clients instead of apache and we would need to make that decision before we address this problem. |
Yes, that is correct. |
@trask @AlexKlimovMS This still seems relevant |
Addressed in 3.0 Preview: https://docs.microsoft.com/en-us/azure/azure-monitor/app/java-standalone-config#http-proxy |
This pull request allows configuration of the proxy settings using global system properties:
#290
Unfortunately this means ALL Apache http clients will send traffic through a proxy. In a segregated network environment where internal network calls do not need to go through a proxy, this creates unnecessary latency on calls. As well, with segregated networks, normally only external network requests would be configured to go through. This would end up blocking all internal requests.
Proxy settings should be set using custom system properties, not the global ones "proxyHost", "proxyPort". Something like "applicationInsights.proxyHost", "applicationInsights.proxyPort", or
"com.microsoft.applicationInsights.proxyHost/proxyPort" should suffice.
The text was updated successfully, but these errors were encountered: