当前位置: 首页 > 知识库问答 >
问题:

如何将logstash中的log/txt文件管道到elasticsearch

寿嘉悦
2023-03-14

所以,基本上我有一个日志或一个文本文件,我想使用ELK进行可视化。我能够在系统上设置elasticsearch和kibana。这是我现在的logstash配置文件

input { file {
    path => "G:/everything.log"
    start_position => "beginning"
} }

filter {

}

output {
  elasticsearch { hosts => ["localhost:9200"]
  index => "example" }
  stdout { codec => rubydebug }
}

当在浏览器中我打开http://localhost:9200/这是什么出现

{
  "name" : "1rtH6q6",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "oicreqLyQ_iNiTrOQ0sYPQ",
  "version" : {
    "number" : "5.4.1",
    "build_hash" : "2cfe0df",
    "build_date" : "2017-05-29T16:05:51.443Z",
    "build_snapshot" : false,
    "lucene_version" : "6.5.1"
  },
  "tagline" : "You Know, for Search"
}

在我的kibana控制台中执行GET/_cat/index之后?五、

health status index          uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   .kibana        fxFjIS55Q9-qAgqLlPE0Cw   1   1          2            0      6.3kb          6.3kb
yellow open   windows_events YUBWMzRpRTmEdu6E2UoCXg   5   1          2            0     12.6kb         12.6kb

请帮我解决这个问题

共有1个答案

陈正业
2023-03-14

就我理解你的问题而言,你需要做几件事才能在Kibana中显示你的日志。

1) 根据日志模式,必须编写适当的grok模式来解析日志文件。还可以使用Grok Debugger实用程序为日志编写Grok模式。

例如。对于Apache访问日志grok模式将是

   filter {
      grok {
        match => { "message" => "%{COMBINEDAPACHELOG}" }
      }
      date {
        match => [ "timestamp" , "dd/MMM/yyyy:HH:mm:ss Z" ]
      }
    }

我建议你阅读这份官方指南。

一旦您的日志文件正确解析,您将看到数据将在您的exampleElasticsearch索引上进行索引。

为了验证数据,可以使用下面的get命令

 curl -XGET 'localhost:9200/example/_search'

2)在下一步中,您必须在kibana中配置默认的Elasticsearch索引模式。参考阅读这些参考

  • 定义您的索引模式。
  • 用Elasticsearch连接Kibana
 类似资料:
  • 问题内容: 我刚接触Linux(在这种情况下为CentOS)。我有一个包含约2000个文件的文件夹。我想理想地在命令提示符处执行一个命令,该命令会将所有文件的名称写到单个txt文件中。 如果必须的话,我也可以编写一个实际的程序来做到这一点,我只是想也许可以从命令提示符处简单地做到这一点。 问题答案: 你可以用 (通常,使用“ Terminal”,“ shell”或“ Bash”启动外壳程序。)您可

  • 问题内容: 如何将输出重定向到txt文件(在Windows平台上)? 问题答案: 如果是我,我将使用上面的David Heffernan的方法将变量写入文本文件(因为其他方法要求用户使用命令提示符)。

  • 我以.txt格式抓取了NLP数据,需要将其复制到Excel。数据位于名为“article”的文件夹中。此文件夹中包含2012年至2020年的其他子文件夹。子文件夹的名称为日期,例如“2012-04-18”。每个子文件夹中都有几个.txt文件。 我想:复制每个. txt文件的内容,并将它们与子文件夹上显示的相应日期匹配到excel文件中。因此excel文件将有一列日期(从子文件夹复制)和相应的行,其

  • 问题内容: 我正在导入一个 长为1700万数字 的大型文本文件,并且正在使用以下代码: 它会立即加载文件并打印出来,但是要花费很长时间(大约一个小时)才能将转换为,我可以做些什么来加快速度并快速加载数字吗? 问题答案: 作为一种优化,因为是,你可以把它保存到一个 二进制文件 一次,并且加速您的装载增色不少。 加载序列化的对象应该比每次解析一个巨大的字符串都要 快 。 使用以节省你的大整数读回。

  • 我正在使用一个AWS代码管道,它从我的git存储库获取源代码,使用buildSpec来构建输出工件并将其保存到S3 bucket,最终部署到(NodeJS环境)。 一切正常,但我要求管道从我的存储桶中复制一个特定文件,并将其添加到

  • 我在Jenkins有一些windows slave,所以我需要在管道中将文件复制到他们。我听说了Copy To Slave和Copy Artifact插件,但它们没有管道语法手册。所以我不知道如何在管道中使用它们。 直接复制不起作用。 此代码返回错误: 有没有办法复制文件从主从Jenkins管道?