Our containers are equipped with health checks that verify communication across containers and resources (ESBs/databases) during startup. They attempt to do so only a few dozen times, with timeouts in place to ensure safety. If they continue to fail after these attempts, they shut down on their own (i.e., they give up).
This is behavior we observed with the old dynatrace one agent 1.261, which is why we disabled Dynatrace on our production environment. Unfortunately, after updating to the newest agent 1.263 (with .net 7 support) we are seeing the ame behavior during tests on our acceptance environment.
Is there any additional configuration/requirements we need to do with .net 7 based containers?
If you need any additional information, please let me know.
Solved! Go to Solution.
There is no additional configuration required, but too restrictive health checks and/or resource constraints can lead to container start-up issues with .NET applications.
The OneAgent .NET code module injects into the application on process start-up and when the first technology specific assembly is loaded. This whole process takes a couple of (~2-4) seconds. Too restrictive CPU limits can lead to an increase in start-up time and memory limits can generally result in the container getting OOMKilled as there is a temporarily increased memory requirement on process start-up . This short delay could potentially result in failed health checks.
It would be interesting to know whether the application runs successfully outside of a containerized environment or without the health checks (and resource constraints) in order to rule out a OneAgent feature not functioning properly.
I would suggest opening a support ticket for a deeper analysis of the issue.