我想在Elasticsearch中导入一个文本文件。文本文件每行包含3个值。经过数小时的奋斗,我没有完成它。非常感谢您的帮助。
安装了Logstash的Elasticsearch 5.4.0。
样本数据:
username email hash
username email hash
username email hash
username email hash
username email hash
还构建了一个python脚本,但是它太慢了:
import requests
import json
from elasticsearch import Elasticsearch
es = Elasticsearch([{'host': 'localhost', 'port': 9200}])
i = 1
with open("my2") as fileobject:
for line in fileobject:
username, email, hash = line.strip('\n').split(' ')
body = {"username": username, "email": email, "password": hash}
es.index(index='dbs', doc_type='db1', id=i, body=body)
i += 1
编辑:感谢它的工作,但我想我的筛选器很烂,因为我希望它看起来像这样:
{
"_index": "logstash-2017.06.01",
"_type": "db",
"_id": "AVxinqK5XRvft8kN7Q6M",
"_version": 1,
"_score": null,
"_source": {
"username": "Marlb0ro",
"email": "Marlb0ro@site.com",
"hash": "123456",
}
然后将数据如下所示:
{
"_index": "logstash-2017.06.01",
"_type": "logs",
"_id": "AVxinqK5XRvft8kN7Q6M",
"_version": 1,
"_score": null,
"_source": {
"path": "C:/Users/user/Desktop/user/log.txt",
"@timestamp": "2017-06-01T07:46:22.488Z",
"@version": "1",
"host": "DESKTOP-FNGSJ6C",
"message": "username email password",
"tags": [
"_grokparsefailure"
]
},
"fields": {
"@timestamp": [
1496303182488
]
},
"sort": [
1496303182488
]
}
只需将其放入一个名为grok.conf
:
input {
file {
path => "/path/to/your/file.log"
start_position => beginning
sincedb_path => "/dev/null"
}
}
filter {
grok {
match => {"message" => "%{WORD:username} %{WORD:email} %{WORD:hash}" }
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
}
}
然后使用运行Logstash,bin/logstash -f grok.conf
您应该可以。
我正在带有IIS 7.5的Windows Server 2008 R2上运行它。ELK版本:ElasticSearch v1.4.4 Logstash v1.4.2 Kibana 4.0.1 我可以让简单的cmd行输入工作。logstash.conf: 然后从../bin运行logstash,使用: 我输入的内容将添加到logstash-2015-03-18文档中。 但是,我需要logstash来
问题内容: 我是Lucene的新手,在创建 用于查询文本文件集合的 简单代码时遇到一些问题。 我尝试了此示例,但与新版本的Lucene不兼容。 UDPATE: 这是我的新代码,但是仍然无法使用。 问题答案: Lucene是一个相当大的主题,涉及很多类和方法,通常您必须至少了解一些基本概念才能使用它。如果您需要快速可用的服务,请改用Solr。如果您需要对Lucene的完全控制,请继续阅读。我将介绍一
嗨,我们有一个表,是多态性的项目,我们想找到一种方法来更新不同的索引在一个logstash配置。 下面是一个示例表。列表示类型(如),是数据库中项目的外键,在cron上计算,并每隔一段时间更新一次,这会更新
我正在编写一种方法来搜索列表形式的文字文件,搜索用户输入的文字,但如果找到一个字母,程序将返回一个肯定的结果。例如,如果我搜索“f”,当没有单词时,它将返回字典中有一个单词“f”
以下列出了所有文件及其简要说明: daemon.h [code] fileconf.h [code] jitter.h [code] Packet.h [code] pcap-remote.h [code] incs/pcap.h [code] funcs/pcap.h [code] remote-ext.h [code] rpcapd.h [code] utils.h [code] Win32-
当你要在 Elasticsearch 增加文档时,你就需要索引 JSON 文档。JSON 文档会映射 PHP 关联数组,因为 PHP 关联数组可以 encode 为 JSON 数据格式。 因此在 Elasticsearch-PHP 中你可以传递关联数组给客户端来索引文档。我们会概述几种方法来增加文档到 Elasticsearch。 单一文档索引 当索引一个文档时,你可以提供一个 ID 或者让 El