大佬教程收集整理的这篇文章主要介绍了logstash索引文本文件,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
只需将其放入一个名为@H_403_1@grok.conf:
@H_403_1@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,@H_403_1@bin/logstash -f grok.conf您应该可以。
我想在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,"_@R_489_9016@e": {
"username": "Marlb0ro","email": "Marlb0ro@site.com","hash": "123456",}
然后将数据如下所示:
{
"_index": "logstash-2017.06.01","_type": "logs","_@R_489_9016@e": {
"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
]
}
以上是大佬教程为你收集整理的logstash索引文本文件全部内容,希望文章能够帮你解决logstash索引文本文件所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。