检查Cassandra中是否启用了JNA
我从其他帖子中知道,如果JNA配置不正确,Cassandra会在日志文件中写入一些警告。我的日志文件(cassandra.log和system.log)不包含单词“jna”(所有大小写都已检查)。我可以假设我的Cassandra实例的JNA配置正确吗检查Cassandra中是否启用了JNA,cassandra,Cassandra,我从其他帖子中知道,如果JNA配置不正确,Cassandra会在日志文件中写入一些警告。我的日志文件(cassandra.log和system.log)不包含单词“jna”(所有大小写都已检查)。我可以假设我的Cassandra实例的JNA配置正确吗 有没有办法检查JNA配置是否正确?如果JNA配置正确,您应该在日志中看到如下消息: INFO [main] 2014-06-06 15:55:11,664 CLibrary.java (line 121) JNA mlockall successf
有没有办法检查JNA配置是否正确?如果JNA配置正确,您应该在日志中看到如下消息:
INFO [main] 2014-06-06 15:55:11,664 CLibrary.java (line 121) JNA mlockall successful
同样在日志中,JNA库应该出现在类路径输出中:
INFO [main] 2014-06-06 16:47:13,318 CassandraDaemon.java (line 191) Classpath:...
....:/usr/share/java/jna.jar:
以下是JNA丢失时显示错误的代码:
try
{
Native.register("c");
}
catch (NoClassDefFoundError e)
{
logger.warn("JNA not found. Native methods will be disabled.");
jnaAvailable = false;
}
catch (UnsatisfiedLinkError e)
{
logger.warn("JNA link failure, one or more native method will be unavailable.");
logger.debug("JNA link failure details: {}", e.getMessage());
}
catch (NoSuchMethodError e)
{
logger.warn("Obsolete version of JNA present; unable to register C library. Upgrade to JNA 3.2.7 or later");
jnaAvailable = false;
}
因此,只需为上述其中一项刷新日志。检查几个不同的异常……做得很好!