Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logstash 日志存储-无法打开<;文件路径>;拒绝许可_Logstash - Fatal编程技术网

Logstash 日志存储-无法打开<;文件路径>;拒绝许可

Logstash 日志存储-无法打开<;文件路径>;拒绝许可,logstash,Logstash,我使用logstash将所有文本日志从存储区推送到弹性搜索。 我的存储容量约为1 TB。首先,我已经开始将368GB数据(可能是几十万个文件)推送到弹性搜索,但logstash失败了,出现以下错误 {:timestamp=>"2014-05-15T00:41:12.436000-0700", :message=>"/root/share/archive_data/sessionLogs/965c6f46-1a5e-4820-a68d-7c32886972fc/Log.txt: fil

我使用logstash将所有文本日志从存储区推送到弹性搜索。 我的存储容量约为1 TB。首先,我已经开始将368GB数据(可能是几十万个文件)推送到弹性搜索,但logstash失败了,出现以下错误

{:timestamp=>"2014-05-15T00:41:12.436000-0700", :message=>"/root/share/archive_data/sessionLogs/965c6f46-1a5e-4820-a68d-7c32886972fc/Log.txt: file grew, old size 0, new size 1557420", :level=>:debug, :file=>"filewatch/watch.rb", :line=>"81"}
{:timestamp=>"2014-05-15T00:41:12.437000-0700", :message=>":modify for /root/share/archive_data/sessionLogs/965c6f46-1a5e-4820-a68d-7c32886972fc/Log.txt, does not exist in @files", :level=>:debug, :file=>"filewatch/tail.rb", :line=>"77"}
{:timestamp=>"2014-05-15T00:41:12.441000-0700", :message=>"_open_file: /root/share/archive_data/sessionLogs/965c6f46-1a5e-4820-a68d-7c32886972fc/Log.txt: opening", :level=>:debug, :file=>"filewatch/tail.rb", :line=>"98"}
{:timestamp=>"2014-05-15T00:41:12.441000-0700", :message=>"(warn supressed) failed to open /root/share/archive_data/sessionLogs/965c6f46-1a5e-4820-a68d-7c32886972fc/Log.txt: Permission denied - /root/share/archive_data/sessionLogs/965c6f46-1a5e-4820-a68d-7c32886972fc/Log.txt", :level=>:debug, :file=>"filewatch/tail.rb", :line=>"110"}
共享是网络挂载的。我正在使用root用户启动logstash。用户应该拥有装载所需的所有访问权限。 共享目录具有以下访问权限 drwxr-xr-x 44根目录0 5月13日08:36共享

现在,我的日志文件是静态的,它们不会改变

因此,我的问题是-是否有必要让logstash知道,一旦它处理一个日志文件,就不要存储文件句柄。我认为出现上述错误是因为日志文件数量巨大

我已经提交了一个日志文件,并且logstash中存在一个bug,它说当日志文件的数量较多时,logstash的性能不好


我在这里看到一些重复的问题,但我想知道是否有人有过此类问题的经验?

我认为,对于logstash 1.4.2,唯一的答案是:

  • 从受监视的目录中移动或删除文件
  • 重新启动日志存储

我认为没有任何其他方法可以将已处理且不再添加的日志的logstash发布文件句柄保存到日志中。

您有多少个文件?您需要修改系统中的“最大打开文件数”!查找这个:因为它是日志存档,我想至少会有10万个。我会看看我是否能提高到那个水平,保持系统健康。我也有同样的问题。我有一个文件夹,里面有500000个JSON,有777访问权限。我也有同样的错误。Ben Lim的建议在增加打开文件句柄时有效,我将其增加到最大值,但50万太多,无法处理。我的建议是开发一个StaticFile插件,它可以读取和处理文件,然后忘记它,而不是在所有文件上保持打开的文件句柄。如果您的所有文件都在更改,即日志流,那么我认为唯一的选项是文件插件,但是Logstash必须想出一个处理此类用例的选项。现在,Logstash会打开它监视的所有文件的文件句柄。因为我的案例是日志存档,我必须保存所有日志,所以我编写了一个快速插件来处理这个案例,它复制文件,读取文件,然后删除原始文件的副本。它解决了我的问题。