We have some customers still running .NET CLR 2.0 and FW 2.0 in Prod.
If we upgrade AppMon server from 6.x to 6.5 we will be loosing support for such old .NET (FW 2.0), however I can not force our customers to upgrade their Prod WOSIs as you may undestand.
Now, can we keep previous agent versions running and monitoring .NET, but reporting to AppMon server 6.5
We would have to disable Bootstrap though in order to prevent an automatic upgrade of the agents.
Is it possible?
Is it supported?
What if it does not work? For the next maintenance renewal where do we stand with such gaps?
Solved! Go to Solution.
6.5 still supports .NET Applications which are *built* against .NET 2.0, as long as they are executed with a CLR version 3.5. In case you're running on Windows Server 2008 or newer, you certainly have .NET/CLR 3.5 installed already. In that case you're fully supported!
I know this all is confusing. IIS Manager for example offers options for .NET Framework "v2.0" and "v4.0". But this actually means "v2.0, v3.0, v3.5" and "v4.0, v4.5, v4.6" - whatever is the latest version on your system. So, even if you select "v2.0" for an Application Pool in IIS, you will most certainly run .NET 3.5, in case of Windows Server 2008+.
Also, if you see a .NET/CLR version like "2.0.50727.1433"+, you are already on 3.5.
If you try to instrument an application older than older than 2.0.50727.1433, the behavior is undefined. It might very well still work, we just don't do automated tests against it anymore.
This sounds dangerous, but in reality it isn't. You cannot install our agent on any windows older than server 2008, so you in fact cannot have a CLR older than 2.0.50727.1433.
...is it possible to have different version of the CLR for each different app running on a windows server or do they all just use the system CLR
For the classic .NET Framework, you cannot have different .NET Versions on the same machine. Each update is in-place, so it will replace the previously installed .NET Version. That is with the exception that .NET 3.5 and .NET 4.X can very well co-exist. But .NET 4.7 replaces .NET 4.6. An application can chose to use 3.5 or 4.X.
For .NET Core, the story is entirely different. You can have as many .NET Core versions installed as you like and each application can run with a different .NET Core version.
Do you have any specific use-case that you are trying to solve?