2015-09-03 15 views
9

Bạn biết làm thế nào có một bộ lọc ruby ​​cho Logstash cho phép tôi để viết mã trong Ruby và nó thường được bao gồm trong tập tin cấu hình như sauJava Lọc Đối Logstash

filter { 
     ruby { 
      code => "...." 
     } 
} 

Bây giờ tôi có hai tập tin Jar mà Tôi muốn bao gồm trong bộ lọc của tôi để các đầu vào tôi có thể được xử lý theo các hoạt động tôi có trong các tập tin Jar. Tuy nhiên, tôi không thể (rõ ràng) bao gồm tệp Jar trong mã ruby. Tôi đã tìm kiếm một giải pháp. Bất kỳ giúp đỡ?

Cảm ơn.

Trả lời

0

Orrr để trả lời câu hỏi ban đầu của bạn,

bạn thể bao gồm JAR trong mã ruby ​​của bạn, nhưng bạn cần phải sử dụng JRuby,

xem hướng dẫn ở đây về cách truy cập mã java từ các JAR trong JRuby:

https://github.com/jruby/jruby/wiki/CallingJavaFromJRuby#from-jar-files

Để sử dụng các nguồn lực bên trong một file jar từ JRuby, file jar phải thể là trên classpath hoặc được cung cấp với các yêu cầu phương pháp:

require 'path/to/mycode.jar' này đòi hỏi phải làm cho các nguồn lực trong mycode.jar thể phát hiện bằng cách các lệnh sau này như importinclude_package.

Lưu ý rằng tải tệp jar qua yêu cầu tìm kiếm dọc theo $LOAD_PATH đối với chúng, giống như đối với các tệp ruby ​​thông thường.

+0

Đúng vậy và đó là cách tôi bắt đầu với giải pháp của mình, đá quý sẽ được viết bằng cách sử dụng Jruby (bao gồm tệp jar), sẽ được sử dụng làm bộ lọc logstash mới. cảm ơn :) –

Các vấn đề liên quan