我正在尝试从后台的rails控制台运行logstash命令,将日志文件解析为JSON,并使用JSON使用ActiveRecord将数据插入到数据库中。 我正面临使用子进程命令或Spawn的问题,因为所有人都给我一个错误,即Bundler :: GemNotFound:在Gemfile中列出的任何gem源中都找不到gem'tzinfo-data java'。好像Rails无法运行JVM代码,但我认为logstash只是用Ruby编写的。
命令:cat #{filePath} | #{logstashDir} -f #{logstash_config}
环境: Ruby v2.4.1p111 Rails v5.1.2 Logstash v5.5.0
答案 0 :(得分:0)
这里的问题相同。我使其工作的方式是取消设置子shell env变量“RUBYLIB”和“RUBYOPT”。把你的命令放在这样的:
#!/usr/bin/env bash
unset RUBYLIB
unset RUBYOPT
#YOUR CODE