Error caused by check of JAVA_TOOL_OPTIONS when running Logstash on Windows


I've encountered an issue when I try to run the Windows version of Logstash. When I run logstash.bat I receive the following error message:

"Microsystems was unexpected at this time"

The issue appears to be in setup.bat. Here it uses the following code to check the value of the JAVA_TOOL_OPTIONS environment variable:

if not %JAVA_TOOL_OPTIONS% == "" (

On my machine the value of JAVA_TOOL_OPTIONS is:

-Djava.vendor="Sun Microsystems Inc"

The check seems to fail due to the presence of double-quotes in the value.

I've noticed that the Elasticsearch elasticsearch-env.bat script also performs a check of JAVA_TOOL_OPTIONS but that doesn't fail. This appears to be because it uses a different way of checking the value, namely:

if defined JAVA_TOOL_OPTIONS (

It may be possible to use this way of checking JAVA_TOOL_OPTIONS in Logstash setup.bat.

The same section of code in Logstash setup.bat also appears to use the wrong syntax to reference the value of the JAVA_TOOL_OPTIONS variable. In the line where it displays the warning message about ignoring the value of JAVA_TOOL_OPTIONS it uses $JAVA_TOOL_OPTIONS - this should be %JAVA_TOOL_OPTIONS%.

I've encountered this on version 7.6.2 of Logstash.



This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.