m0_60461532 2022-10-15 11:24 采纳率: 75%
浏览 26
已结题

logstash运行报错NameError: cannot link Java class

问题遇到的现象和发生背景

大数据采集课程使用ELK工具中logstash的报错

用代码块功能插入代码,请勿粘贴截图

用终端运行logstash后报错
如下是我logstash想要运行的.conf文件
input {
jbdc{
jdbc_connection_string => "jdbc:mysql://localhost:3306/lab4"
jdbc_user => "root"
jdbc_password => "g"
jdbc_validate_connection => true
jdbc_driver_library => "D:\ELK\logstash-5.6.16\logstash-5.6.16\mysqltest\mysql-connector-java-8.0.22.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
statement_filepath => "D:\ELK\logstash-5.6.16\logstash-5.6.16\mysqltest\test4.sql"
schedule => "* * * * *"
}
}

filter{
json{
source => "message"
remove_field => ["message"]
}
}
output {
elasticswarch {
hosts =>"http://localhost:9200"
index =>"index_test"
document_type => "_doc"
}
}

运行结果及报错内容

D:\ELK\logstash-5.6.16\logstash-5.6.16\bin>java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

D:\ELK\logstash-5.6.16\logstash-5.6.16\bin>logstash.bat
NameError: cannot link Java class org.apache.logging.log4j.core.config.LoggerConfig needs Java 8 (java.lang.UnsupportedClassVersionError: org/logstash/log/LogstashLogEventFactory : Unsupported major.minor version 52.0)
get_proxy_or_package_under_package at org/jruby/javasupport/JavaUtilities.java:54
method_missing at file:/D:/ELK/logstash-5.6.16/logstash-5.6.16/vendor/jruby/lib/jruby.jar!/jruby/java/java_package_module_template.rb:14
Logging at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/logging/logger.rb:10
LogStash at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/logging/logger.rb:5
(root) at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/logging/logger.rb:4
require at org/jruby/RubyKernel.java:1040
(root) at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/util/loggable.rb:1
require at org/jruby/RubyKernel.java:1040
(root) at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/util/loggable.rb:2
require at org/jruby/RubyKernel.java:1040
(root) at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/settings.rb:1
require at org/jruby/RubyKernel.java:1040
(root) at D:/ELK/logstash-5.6.16/logstash-5.6.16/logstash -core/lib/logstash/settings.rb:2
require at org/jruby/RubyKernel.java:1040
(root) at D:\ELK\logstash-5.6.16\logstash-5.6.16\lib\bootstrap\environment.rb:70

我的解答思路和尝试过的方法

报错说是连接不上java 网上查询后有一条一模一样的问题,但是他是说jdk的版本不对要1.8以上的,然而我的jdk是1.8.0_201,并且我尝试换1.8.X其他版本的jdk后仍然这样报错。

我想要达到的结果

能够通过logstash将mysql或者csv文件传输到我的es上(能让我的logstash运行起来也好.)

展开全部

  • 写回答

1条回答 默认 最新

  • IT民工金鱼哥 运维领域新星创作者 2022-10-17 06:33
    关注

    查了官网了,是只能使用1.8 的JDK,你1.8 的版本,是支持的啦。

    img


    然后看报错,是说你的JAVA 版本不支持?

    img

    奇怪,按道理是支持才对,上一下你的Logstash配置文件,还有,环境变量是设置正确的吧(这个很重要)?
    再有,你还是别部署 这么旧的版本啊。。。起码都玩 7 的版本。。。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    m0_60461532 2022-10-17 12:52

    嗯嗯 我换了7.17.6的版本 这个问题没有了 虽然logstash还是有问题 但应该是.conf文件的问题 error报错没有了

    回复
    IT民工金鱼哥 回复 m0_60461532 2022-10-18 01:29

    嗯嗯,别玩这么老的版本,现在起码去玩7,启动没问题就好。
    至于其余报错或者使用上,可去看看日志来辅助检查各种。

    回复
    IT民工金鱼哥 回复 m0_60461532 2022-10-18 06:43

    若有所帮助,望采纳答案支持一下

    回复
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 10月25日
  • 已采纳回答 10月18日
  • 创建了问题 10月15日

悬赏问题

  • ¥15 结果有了,想问一下这个具体怎么输入
  • ¥15 怎么修改鸿蒙app的UI及功能设计
  • ¥15 帮我利用jupyter 运行一个正确的代码
  • ¥15 如何使用Gephi软件和Python包中的GephiStreamer交互
  • ¥15 sqlite加密问题咨询
  • ¥15 appdesigner接收不到udp组播的数据
  • ¥15 verilog 非阻塞赋值下的移位拼接错误
  • ¥100 两个按钮控制一个LED
  • ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理
  • ¥15 ansys机翼建模肋参数
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部