<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Java applications fail to start after OneAgent upgrade on Alpine Linux (musl libc) in Dynatrace tips</title>
    <link>https://community.dynatrace.com/t5/Dynatrace-tips/Java-applications-fail-to-start-after-OneAgent-upgrade-on-Alpine/m-p/294072#M1873</link>
    <description>&lt;H3&gt;&lt;STRONG&gt;Abstract&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;This article explains an issue where Java applications running in containers fail to start after upgrading Dynatrace OneAgent to version 1.327.56+ when older Alpine Linux (musl libc) images and outdated JDK versions are used.&lt;BR /&gt;It covers the root cause, affected scenarios, and recommended preventive actions.&lt;/P&gt;&lt;H3&gt;Problem&lt;/H3&gt;&lt;P&gt;After upgrading Dynatrace OneAgent to version 1.327.56, Java applications running in containers may enter CrashLoopBackOff. The JVM fails to start with an error similar to:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;Error occurred during initialization of VM
Error relocating liboneagentjava.so: getrandom: symbol not found&lt;/LI-CODE&gt;&lt;P&gt;The issue typically occurs when all of the following conditions are met:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Container image based on Alpine Linux 3.8.x / 3.9.x&lt;/LI&gt;&lt;LI&gt;libc: musl&lt;/LI&gt;&lt;LI&gt;Java: OpenJDK 8u181&lt;/LI&gt;&lt;LI&gt;Dynatrace OneAgent 1.327.56 or newer&lt;/LI&gt;&lt;LI&gt;Java Agent auto-injection enabled&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Observed behavior:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Alpine 3.8.1 + OpenJDK 8u181 → fails&lt;/LI&gt;&lt;LI&gt;Alpine 3.9.4 + OpenJDK 8u212 → works&lt;/LI&gt;&lt;LI&gt;OneAgent 1.327.44 → works&lt;/LI&gt;&lt;/UL&gt;&lt;H3&gt;Root cause&lt;/H3&gt;&lt;P&gt;Starting with OneAgent 1.327.56, the Dynatrace Java Agent (liboneagentjava.so) relies on the getrandom() system call, which:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;is not available in older versions of musl libc&lt;/LI&gt;&lt;LI&gt;causes JNI library loading to fail&lt;/LI&gt;&lt;LI&gt;results in a hard JVM startup failure&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Additionally:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;older JDK builds (such as 8u181) have limited compatibility with newer system libraries and security mechanisms&lt;/LI&gt;&lt;LI&gt;Alpine Linux versions below 3.10 are outside the official Dynatrace support scope&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;According to the Dynatrace Technology Support Matrix:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Alpine Linux (musl libc) for containers: 3.10 – 3.21&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;A href="https://docs.dynatrace.com/docs/ingest-from/technology-support" target="_self"&gt;Support matrix&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;H3&gt;&lt;STRONG&gt;Resolution&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;To prevent similar issues in the future, the following actions are recommended:&lt;/P&gt;&lt;P&gt;1. Upgrade container base images&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Alpine Linux minimum 3.10 (3.18+ recommended)&lt;/LI&gt;&lt;LI&gt;Or switch to glibc-based images, such as:&lt;UL class="lia-list-style-type-circle"&gt;&lt;LI&gt;Debian 11/12&lt;/LI&gt;&lt;LI&gt;Ubuntu 22.04&lt;/LI&gt;&lt;LI&gt;Red Hat&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;2. Upgrade Java runtime&lt;/P&gt;&lt;UL class="lia-list-style-type-disc"&gt;&lt;LI&gt;Minimum OpenJDK 8u212&lt;/LI&gt;&lt;LI&gt;Prefer newer LTS versions (11 / 17) if supported by the application&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;3. Avoid EOL images and runtimes&lt;/P&gt;&lt;P&gt;Older Alpine and JDK versions:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;are not tested&lt;/LI&gt;&lt;LI&gt;are not supported&lt;/LI&gt;&lt;LI&gt;contain known security vulnerabilities (CVEs)&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;4. &lt;STRONG&gt;Temporary&lt;/STRONG&gt; workaround - Roll back OneAgent&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Downgrading to 1.327.44 resolves the issue&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;5. Workaround (GUI-based, no container image changes required):&lt;/P&gt;&lt;P&gt;If upgrading the Alpine base image or JDK is not immediately possible, the issue can be temporarily mitigated by disabling monitoring for the affected Java process directly in the Dynatrace GUI.&lt;/P&gt;&lt;P&gt;Steps:&lt;/P&gt;&lt;P&gt;1. Go to&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Settings → Processes and containers → Process detection&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;2. Create a new exclusion rule&lt;/P&gt;&lt;P&gt;3. Scope the rule to:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;a specific process group&lt;/LI&gt;&lt;LI&gt;or a command line / executable&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;4. Disable:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Deep process monitoring&lt;/LI&gt;&lt;LI&gt;Java agent / code module injection for that process&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;After saving the rule:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;the JVM starts without loading the Dynatrace Java Agent&lt;/LI&gt;&lt;LI&gt;the application starts successfully&lt;/LI&gt;&lt;LI&gt;the getrandom: symbol not found error is avoided&lt;/LI&gt;&lt;/UL&gt;&lt;H3&gt;Why this matters&lt;/H3&gt;&lt;OL&gt;&lt;LI&gt;Stable application startup and monitoring&lt;/LI&gt;&lt;LI&gt;Improved security posture&lt;/LI&gt;&lt;LI&gt;Safe future Dynatrace upgrades&lt;/LI&gt;&lt;LI&gt;Vendor-supported configuration&lt;/LI&gt;&lt;/OL&gt;&lt;H3&gt;&lt;STRONG&gt;If the issue persists:&lt;/STRONG&gt;&lt;/H3&gt;&lt;UL&gt;&lt;LI&gt;verify Alpine version (/etc/os-release)&lt;/LI&gt;&lt;LI&gt;verify JDK version (java -version)&lt;/LI&gt;&lt;LI&gt;confirm OneAgent version&lt;/LI&gt;&lt;LI&gt;open a Dynatrace Support ticket and reference:&lt;UL class="lia-list-style-type-circle"&gt;&lt;LI&gt;Alpine &amp;lt; 3.10&lt;/LI&gt;&lt;LI&gt;musl libc&lt;/LI&gt;&lt;LI&gt;getrandom: symbol not found error&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;</description>
    <pubDate>Tue, 03 Feb 2026 13:25:55 GMT</pubDate>
    <dc:creator>t_pawlak</dc:creator>
    <dc:date>2026-02-03T13:25:55Z</dc:date>
    <item>
      <title>Java applications fail to start after OneAgent upgrade on Alpine Linux (musl libc)</title>
      <link>https://community.dynatrace.com/t5/Dynatrace-tips/Java-applications-fail-to-start-after-OneAgent-upgrade-on-Alpine/m-p/294072#M1873</link>
      <description>&lt;H3&gt;&lt;STRONG&gt;Abstract&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;This article explains an issue where Java applications running in containers fail to start after upgrading Dynatrace OneAgent to version 1.327.56+ when older Alpine Linux (musl libc) images and outdated JDK versions are used.&lt;BR /&gt;It covers the root cause, affected scenarios, and recommended preventive actions.&lt;/P&gt;&lt;H3&gt;Problem&lt;/H3&gt;&lt;P&gt;After upgrading Dynatrace OneAgent to version 1.327.56, Java applications running in containers may enter CrashLoopBackOff. The JVM fails to start with an error similar to:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;Error occurred during initialization of VM
Error relocating liboneagentjava.so: getrandom: symbol not found&lt;/LI-CODE&gt;&lt;P&gt;The issue typically occurs when all of the following conditions are met:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Container image based on Alpine Linux 3.8.x / 3.9.x&lt;/LI&gt;&lt;LI&gt;libc: musl&lt;/LI&gt;&lt;LI&gt;Java: OpenJDK 8u181&lt;/LI&gt;&lt;LI&gt;Dynatrace OneAgent 1.327.56 or newer&lt;/LI&gt;&lt;LI&gt;Java Agent auto-injection enabled&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Observed behavior:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Alpine 3.8.1 + OpenJDK 8u181 → fails&lt;/LI&gt;&lt;LI&gt;Alpine 3.9.4 + OpenJDK 8u212 → works&lt;/LI&gt;&lt;LI&gt;OneAgent 1.327.44 → works&lt;/LI&gt;&lt;/UL&gt;&lt;H3&gt;Root cause&lt;/H3&gt;&lt;P&gt;Starting with OneAgent 1.327.56, the Dynatrace Java Agent (liboneagentjava.so) relies on the getrandom() system call, which:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;is not available in older versions of musl libc&lt;/LI&gt;&lt;LI&gt;causes JNI library loading to fail&lt;/LI&gt;&lt;LI&gt;results in a hard JVM startup failure&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Additionally:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;older JDK builds (such as 8u181) have limited compatibility with newer system libraries and security mechanisms&lt;/LI&gt;&lt;LI&gt;Alpine Linux versions below 3.10 are outside the official Dynatrace support scope&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;According to the Dynatrace Technology Support Matrix:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Alpine Linux (musl libc) for containers: 3.10 – 3.21&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;A href="https://docs.dynatrace.com/docs/ingest-from/technology-support" target="_self"&gt;Support matrix&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;H3&gt;&lt;STRONG&gt;Resolution&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;To prevent similar issues in the future, the following actions are recommended:&lt;/P&gt;&lt;P&gt;1. Upgrade container base images&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Alpine Linux minimum 3.10 (3.18+ recommended)&lt;/LI&gt;&lt;LI&gt;Or switch to glibc-based images, such as:&lt;UL class="lia-list-style-type-circle"&gt;&lt;LI&gt;Debian 11/12&lt;/LI&gt;&lt;LI&gt;Ubuntu 22.04&lt;/LI&gt;&lt;LI&gt;Red Hat&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;2. Upgrade Java runtime&lt;/P&gt;&lt;UL class="lia-list-style-type-disc"&gt;&lt;LI&gt;Minimum OpenJDK 8u212&lt;/LI&gt;&lt;LI&gt;Prefer newer LTS versions (11 / 17) if supported by the application&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;3. Avoid EOL images and runtimes&lt;/P&gt;&lt;P&gt;Older Alpine and JDK versions:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;are not tested&lt;/LI&gt;&lt;LI&gt;are not supported&lt;/LI&gt;&lt;LI&gt;contain known security vulnerabilities (CVEs)&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;4. &lt;STRONG&gt;Temporary&lt;/STRONG&gt; workaround - Roll back OneAgent&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Downgrading to 1.327.44 resolves the issue&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;5. Workaround (GUI-based, no container image changes required):&lt;/P&gt;&lt;P&gt;If upgrading the Alpine base image or JDK is not immediately possible, the issue can be temporarily mitigated by disabling monitoring for the affected Java process directly in the Dynatrace GUI.&lt;/P&gt;&lt;P&gt;Steps:&lt;/P&gt;&lt;P&gt;1. Go to&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Settings → Processes and containers → Process detection&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;2. Create a new exclusion rule&lt;/P&gt;&lt;P&gt;3. Scope the rule to:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;a specific process group&lt;/LI&gt;&lt;LI&gt;or a command line / executable&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;4. Disable:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Deep process monitoring&lt;/LI&gt;&lt;LI&gt;Java agent / code module injection for that process&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;After saving the rule:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;the JVM starts without loading the Dynatrace Java Agent&lt;/LI&gt;&lt;LI&gt;the application starts successfully&lt;/LI&gt;&lt;LI&gt;the getrandom: symbol not found error is avoided&lt;/LI&gt;&lt;/UL&gt;&lt;H3&gt;Why this matters&lt;/H3&gt;&lt;OL&gt;&lt;LI&gt;Stable application startup and monitoring&lt;/LI&gt;&lt;LI&gt;Improved security posture&lt;/LI&gt;&lt;LI&gt;Safe future Dynatrace upgrades&lt;/LI&gt;&lt;LI&gt;Vendor-supported configuration&lt;/LI&gt;&lt;/OL&gt;&lt;H3&gt;&lt;STRONG&gt;If the issue persists:&lt;/STRONG&gt;&lt;/H3&gt;&lt;UL&gt;&lt;LI&gt;verify Alpine version (/etc/os-release)&lt;/LI&gt;&lt;LI&gt;verify JDK version (java -version)&lt;/LI&gt;&lt;LI&gt;confirm OneAgent version&lt;/LI&gt;&lt;LI&gt;open a Dynatrace Support ticket and reference:&lt;UL class="lia-list-style-type-circle"&gt;&lt;LI&gt;Alpine &amp;lt; 3.10&lt;/LI&gt;&lt;LI&gt;musl libc&lt;/LI&gt;&lt;LI&gt;getrandom: symbol not found error&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Tue, 03 Feb 2026 13:25:55 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Dynatrace-tips/Java-applications-fail-to-start-after-OneAgent-upgrade-on-Alpine/m-p/294072#M1873</guid>
      <dc:creator>t_pawlak</dc:creator>
      <dc:date>2026-02-03T13:25:55Z</dc:date>
    </item>
    <item>
      <title>Re: Java applications fail to start after OneAgent upgrade on Alpine Linux (musl libc)</title>
      <link>https://community.dynatrace.com/t5/Dynatrace-tips/Java-applications-fail-to-start-after-OneAgent-upgrade-on-Alpine/m-p/297262#M1898</link>
      <description>&lt;P&gt;The question is: why use a&amp;nbsp;&lt;/P&gt;&lt;PRE class="lia-code-sample  language-markup"&gt;&lt;CODE&gt;getrandom: symbol not found&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;....and stop processes, instead of use a "manual" random function? Ofc joking, btw it should be fixed soon.&lt;/P&gt;</description>
      <pubDate>Fri, 03 Apr 2026 14:57:10 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Dynatrace-tips/Java-applications-fail-to-start-after-OneAgent-upgrade-on-Alpine/m-p/297262#M1898</guid>
      <dc:creator>gianluca_maranz</dc:creator>
      <dc:date>2026-04-03T14:57:10Z</dc:date>
    </item>
  </channel>
</rss>

