问题标签 [elastalert]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1334 浏览

elastalert - 查询特定时间范围并在一天中的特定时间发出警报

我需要在凌晨 2 点运行规则,从 0 点到 2 点查询日志,并在找到匹配项时发出警报。

到目前为止我创建的所有规则都是频率规则,但是我不知道如何实现查询的具体时间范围,以及警报的具体时间,有人可以帮忙吗?

(我想 ANY 类型可以让我添加我的时间范围作为过滤器的一部分......但是我怎样才能在每天凌晨 2 点运行规则呢?)

0 投票
1 回答
904 浏览

elasticsearch - 为远程 elasticsearch 集群配置 elastalert

我发现了 Elastalert 并将其安装在我的服务器中。在此服务器中,只有 Kibana 和 elastalert 安装。

当我使用以下命令启动 Elastalert 时:

elastalert --es_debug_trace ./elastalert.log --rule rulesDIR/MYRULE.yaml

Elastalert 启动,我可以看到请求发送到 Elasticsearch,但主机始终是“localhost”,我的 elasticsearch 节点位于另一台服务器上......

我设置了以下配置:

规则文件夹:规则目录

run_every:秒:5

buffer_time:分钟:15

es_host: XX.XX.XX.XX

es_port:9200

writeback_index: elastalert_status

alert_time_limit:天:2

当我发送以下命令时:elastalert-create-index``,Elastalert 在好的集群上创建索引,所以我不明白为什么它调用 localhost`

也许 elastalert 需要安装在 elasticsearch 节点上,但文档中没有指定...

有人可以帮助我吗?

最好的问候,克莱门特。

0 投票
0 回答
784 浏览

elasticsearch - 用于检测网络扫描的 Elastalert 过滤器

我使用 elastalert 从弹性搜索数据发出警报,我想为来自外部地址的网络和端口扫描添加警报。在我的弹性搜索集群中,我有显示从 Internet 地址到我的公司面向 Internet 的设备 IP 地址的连接的防火墙数据。我想检测并提醒正在扫描我的 IP 的 IP,并将其基于目标对象的某个最低阈值。例如,阈值可以是 5 分钟内扫描的主机或 TCP/UDP 端口的最少“X”个。

这样的查询可能吗?如果是这样,请告知我如何构建一个 elastalert 过滤器来做到这一点。

更新:我想知道这里描述的方法是否可以用来解决这个问题? 如何设置过滤器在聚合值达到某个阈值时返回?

0 投票
2 回答
2339 浏览

elasticsearch - 如何运行多个 ElastAlert 规则

我正在学习使用 ElastAlert。我想通过 ElasAlert 运行多基数规则或使用更好的解决方案。

例如,

我几乎没有需要监控的情况,其中任何一个低于每分钟 1 条消息我都需要收到更改。是否可以在一个规则中运行,或者我可以在多个进程中运行它?

0 投票
0 回答
421 浏览

elasticsearch - 运行规则测试时出现 ElastAlert 错误 typeError: %d format: a number is required, not NoneType

我在example_rules文件夹下运行示例规则,并且总是收到此错误:

Elastalert 配置:

es_host: localhost es_port: 9200 use_ssl: False name: "Provider slow response" type: 尖峰索引: filebeat* threshold_cur: 2 时间范围: 分钟: 10 尖峰高度: 1尖峰类型: "up" 过滤器: - 查询: query_string: 查询: "_type :nginxlog”警报:-“电子邮件”

电子邮件: - me@mail.com

有什么帮助吗?

0 投票
1 回答
643 浏览

jira - 使用 Yelp ElastAlert 库创建 JIRA 警报时出现“需要 HTTP:400 项目”错误

使用 ElastAlert 库创建 JIRA 警报时面临问题

错误:root:运行警报 jira 时出错:创建 JIRA 票证时出错:HTTP 400:“需要项目”

虽然我已经配置了 jira_project 属性

下面是我的 rule.yaml cofig 文件的内容。

jira_server:网址

jira_project:测试项目

jira_issuetype:错误

jira_account_file:文件路径

jira_description:ElastAlert 的自动 Jira 票证

0 投票
1 回答
1961 浏览

elasticsearch - elastalert 中的警报在不应该时被静音

我想收到每次查询的警报。我使用“任何”类型的规则。文档说将 realert 设置为 0,所以我在 config.yaml 中添加了下一行:

但我仍然在日志中看到

我只收到第一个警报。还有什么可能是错的?

0 投票
1 回答
1550 浏览

python - Elastalert 不通过电子邮件提醒?

我正在尝试使用 Elastalert 使用一个简单的规则,但它似乎无法正常运行。我的规则是:

我的 config.yaml

调试日志:

但是当我使用命令运行时

我刚刚运行 Kibana 查询以验证我的过滤器返回 5 个命中但我的 elastalert.log 是空的并且我没有收到任何警报电子邮件,如果规则是“任何”那么任何查询命中都应该被提醒,但是你可以看到它不是。有任何想法吗?

任何帮助将非常感激。谢谢

0 投票
2 回答
1974 浏览

elasticsearch - ElastAlert 没有命中

以下是我的 config.yaml 和 frequency.yaml

配置.yaml

规则文件夹:规则文件夹

run_every:秒:15

buffer_time:分钟:1

es_host:本地主机

es_port:9200

writeback_index: elastalert_status

alert_time_limit:天:2

频率.yaml

es_host:本地主机

es_port:9200

名称:错误规则

类型:任何

索引:logstash-*

事件数:5

时间:小时:4

时间戳字段:“@timestamp”

筛选:

  • 术语:日志:“错误”警报:
  • “电子邮件”

电子邮件:-“my@email.com”

我没有得到任何点击

INFO:elastalert:查询规则错误规则从 2016-09-02 09:33 MDT 到 2016-09-02 09:34 MDT: 0 / 0 hits

信息:elastalert:从 2016 年 9 月 2 日 09:33 MDT 到 2016 年 9 月 2 日 09:34 MDT 运行错误规则:0 个查询命中,0 个匹配项,0 个警报发送

elastalert -test-rule rules_folder/frequency.yaml 的输出

INFO:elastalert:查询规则错误规则从 2016-09-02 09:47 MDT 到 2016-09-02 10:32 MDT: 0 / 0 hits

会向 elastalert_status 写入以下文件:

elastalert_status - {'hits': 0, 'matches': 0, '@timestamp': datetime.datetime(2016, 9, 2, 16, 32, 32, 200330, tzinfo=tzutc()), 'rule_name': '错误规则', 'starttime': datetime.datetime(2016, 9, 1, 16, 32, 32, 123856, tzinfo=tzutc()), 'endtime': datetime.datetime(2016, 9, 2, 16, 32 , 32, 123856, tzinfo=tzutc()), 'time_taken': 0.07315492630004883}

0 投票
2 回答
936 浏览

python - ElastAlert Bash 启动脚本 Centos 7

我正在尝试编写一个启动脚本,将 elastalert 作为服务启动。elastalert 使用 python 并启动如下:

我一直在尝试使其与以下内容一起使用:

当我尝试运行脚本时,出现以下错误:

virtualenvelastalert) [root@mplinux scripts]# elastalert Traceback(最近一次调用最后):文件“/virtualenvelastalert/bin/elastalert”,第 11 行,在 load_entry_point('elastalert==0.0.95', 'console_scripts', 'elastalert' )() 文件“/virtualenvelastalert/lib/python2.7/site-packages/elastalert-0.0.95-py2.7.egg/elastalert/elastalert.py”,第 1426 行,在主客户端 = ElastAlerter(args) 文件“ /virtualenvelastalert/lib/python2.7/site-packages/elastalert-0.0.95-py2.7.egg/elastalert/elastalert.py”,第 94 行,在init self.conf = load_rules(self.args) 文件“/virtualenvelastalert/lib/python2.7/site-packages/elastalert-0.0.95-py2.7.egg/elastalert/config.py”,第 373 行,在 load_rules conf = yaml_loader(文件名)文件“/virtualenvelastalert/lib/python2.7/site-packages/staticconf/loader.py”,第 161 行,在 yaml_loader 中,打开(文件名)为 fh:IOError:[Errno 2] 没有这样的文件或目录:'config.yaml'