diff --git a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java index fdfad88bb7f..4b7825215d5 100644 --- a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java +++ b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java @@ -11,6 +11,7 @@ import static java.nio.file.attribute.PosixFilePermissions.fromString; import static java.util.Locale.ROOT; +import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; import datadog.trace.util.PidHelper; import datadog.trace.util.Strings; @@ -63,7 +64,11 @@ private static boolean copyCrashUploaderScript( Path scriptPath, String onErrorFile, String agentJar) { Path scriptDirectory = scriptPath.getParent(); try { - Files.createDirectories(scriptDirectory, asFileAttribute(fromString(RWXRWXRWX))); + if (OperatingSystem.isWindows()) { + Files.createDirectories(scriptDirectory); + } else { + Files.createDirectories(scriptDirectory, asFileAttribute(fromString(RWXRWXRWX))); + } } catch (UnsupportedOperationException e) { LOG.warn( SEND_TELEMETRY, @@ -109,7 +114,9 @@ private static void writeCrashUploaderScript( bw.newLine(); } } - Files.setPosixFilePermissions(scriptPath, fromString(R_XR_XR_X)); + if (!OperatingSystem.isWindows()) { + Files.setPosixFilePermissions(scriptPath, fromString(R_XR_XR_X)); + } } } diff --git a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/OOMENotifierScriptInitializer.java b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/OOMENotifierScriptInitializer.java index 668dfecd612..6d770f41e44 100644 --- a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/OOMENotifierScriptInitializer.java +++ b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/OOMENotifierScriptInitializer.java @@ -13,6 +13,7 @@ import static java.nio.file.attribute.PosixFilePermissions.asFileAttribute; import static java.nio.file.attribute.PosixFilePermissions.fromString; +import datadog.environment.OperatingSystem; import datadog.trace.util.PidHelper; import java.io.IOException; import java.nio.file.FileAlreadyExistsException; @@ -81,12 +82,16 @@ private static boolean copyOOMEscript(Path scriptPath) { return false; } } else { - Files.createDirectories(scriptDirectory, asFileAttribute(fromString(RWXRWXRWX))); + if (OperatingSystem.isWindows()) { + Files.createDirectories(scriptDirectory); + } else { + Files.createDirectories(scriptDirectory, asFileAttribute(fromString(RWXRWXRWX))); + } } } catch (UnsupportedOperationException e) { LOG.warn( SEND_TELEMETRY, - "Unsupported permissions '{" + "Unsupported permissions '" + RWXRWXRWX + "' for {}. OOME notification will not work properly.", scriptDirectory); @@ -107,7 +112,9 @@ private static boolean copyOOMEscript(Path scriptPath) { if (!Files.exists(scriptPath)) { Files.copy(getOomeNotifierTemplate(), scriptPath); } - Files.setPosixFilePermissions(scriptPath, fromString(R_XR_XR_X)); + if (!OperatingSystem.isWindows()) { + Files.setPosixFilePermissions(scriptPath, fromString(R_XR_XR_X)); + } } catch (IOException e) { LOG.warn( SEND_TELEMETRY,