opentelemetry-java-instrumentation
opentelemetry-java-instrumentation copied to clipboard
Document minimum system requirements
Document the minimum system requirements (memory / CPU) for running the agent.
Currently experiencing intermittent issues with an app running on a 1GB box and Java 1.8 with the agent. App works fine without the agent.
Can you give us more information about the nature of those issues?
The app responds to every other query with the agent running. So we are wondering if it is a memory availability issue. Are there minimum requirements for the agent to run and it might be using up available memory required for the app perhaps?
Hi @ishg, is your app running out of memory? Can you post your GC log? If it's running OOM, can you capture a heap dump and open it with Eclipse MemoryAnalyzer and run the Leak Suspects Report and post that report?
Sure, let me gather that. In the meantime, are there known MINIMUM system requirements for the agent? Or is this where we establish them? :)
are there known MINIMUM system requirements for the agent?
some folks have done internal testing, but nothing public yet
also see https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/312
FYI, I have a spring boot application deployed in k8s with a memory limit of 512Mib. The -XX:MaxRAMPercentage is 70.0. Without the agent, the app starts with a RSS of 376Mb. With the agent, the app starts with a RSS of 468Mb and is OOM killed because of reaching the 512Mib limit.
Is a difference of 100Mb just after startup is an expected value ?
Some instrumentation my application uses :
- mongodb
- rabbitmq
- redis
We are observing similar issues where the agent adds on 50-100 MB memory and requires some more CPU when starting. Will investigate more and update this issue with more concrete numbers.
The instrumentation agent does use both CPU and memory. This is 100% expected. The amount of memory and CPU used is entirely dependent on the application being instrumented. As a result, it is impractical to publish a minimum set of system requirements.