文章目录
一、安装ES
官方下载ES,好像暂时不支持7及以上版本,我用的是6.8.0,进入安装位置的bin目录下,例如:
cd /usr/local/Cellar/elasticsearch-6.8.0/bin/
启动ES
./elasticsearch
验证,启动之后,在浏览器输入http://localhost:9200/出现如下页面即表示成功
插入数据,这一步也可以在启动了Elastalert之后再进行操作,可以直接插入,注意,2019-10-11T10:54:41.000Z 是UTC时间,加8小时即为北京时间
curl -X POST "http://127.0.0.1:9200/logstash-2019.10.11/test" -H 'Content-Type: application/json' -d '{
"@timestamp": "2019-10-12T10:01:41.000Z",
"status": "500"
}'
当然也可以使用postman来插入
在我们的简单实验中,ES的操作已经完成。
二、Python版本问题
Elastalert的安装本来也是非常简单的事情,但是因为其之前一直依赖Python2.6,上个月改为了必须依赖Python3.6,而我参考的文章,都说必须依赖Python2.6,这也导致出现了许多莫名其妙的版本冲突问题。大家可以到https://github.com/Yelp/elastalert查看。
其中README中第一行就是Recent changes: As of Elastalert 0.2.0, you must use Python 3.6. Python 2 will not longer be supported.被坑吐血了,当然了,也是自己的锅,一直使用git clone 来拉取,没有看官方提醒,甚至都没有读README.md。这也提醒大家,一定要读官方文档,别人的实践,仅供参考。
另:Mac 默认有Python2.7,本来想直接卸载2.7装3.6,但是看网上不少人删除了2.7之后有问题,可能是因为Mac本身依赖2.7的一些东西,大家可以查看我的另一篇文章,