How does AppDynamics licensing consumption work in general?
The licensing module is set up to run every five minutes to:
Check for available (free) licenses
Check if new agents are trying to acquire licenses
Check if a license has expired
If an agent is up and connected to the Controller, it will try to consume a license. Agents will consume licenses on a first come, first served basis. For example, you may have five total Java Agent licenses available and all five are already being consumed, but you have two more agents trying to acquire the licenses. If one of the reporting agents stops reporting, a license will free up after five minutes and you will have one spot available. However, we cannot predict which of the two pending agents will consume that free license.
To read the complete details about the license management process, see the two resources linked below:
Starting with Controller v4.3+, disabled agents do not release licenses. Even if the agents have been disabled, Java Agents will still report JVM and Garbage Collection-related metrics. .NET agents will report machine and hardware-related metrics, which consumes licenses. To avoid this, you need to log into the host machine and take down the agent. For more complete instructions on disabling app agents, please see our official documentation.
This is especially important to remember if you are upgrading from v4.2 to v4.3. If you have disabled agents in v4.2 and upgrade to v4.3, the disabled agents will start consuming licenses, which can cause you to hit the limit and receive N number of license notifications.
How is licensing consumption calculated for specific language agents?