TeamCity server checks available memory on a regular basis and warns you if the amount of the memory available is too low.
There are several warning types reported:
Is reported when memory usage in a single memory pool exceeds 90% after garbage collection. High server activity may cause such memory usage.
Is reported when more than 90% of total memory has been in use during the last 5 minutes and more than 20% of CPU resources are being consumed by garbage collection. Lasting memory lack may result in performance degradation and server instability as well.
Is reported when memory cleaning takes more than 50% of CPU resources on average. It usually means really serious problems with memory resulting in high performance degradation.
Several internal properties can be used to customize the Monitor:
teamCity.memoryUsageMonitor.poolNames sets up pool names to track. Case-sensitive comma-separated string is accepted
teamCity.memoryUsageMonitor.warningThreshold allows setting up a minimal warning threshold. Affects all tracked memory pools except for PermGen (replaced with metaspace memory allocation in TeamCity 10)
teamCity.memoryUsageMonitor[<Pool name>].warningThreshold can be used to modify single memory pool threshold. Spaces should be escaped or changed to '_' signs
teamCity.memoryUsageMonitor.gcWarningThreshold allows setting up the allowed percentage of resources to spent for cleaning the memory
Reporting Issues: Out Of Memory Problems
Increasing Server Memory: Installing and Configuring the TeamCity Server