elasticsearch - Packetbeat 丢失了一些数据
问题描述
使用 packetbeat 记录查询是否有 10 秒的限制?例如,以下示例中的第一个查询按预期正确记录。但是第二个查询没有出现在弹性中。
MySQL [test]> select sleep(9.9);
+------------+
| sleep(9.9) |
+------------+
| 0 |
+------------+
1 row in set (9.91 sec)
MySQL [test]> select sleep(10);
+-----------+
| sleep(10) |
+-----------+
| 0 |
+-----------+
1 row in set (10.00 sec)
我猜它与默认设置为 10 秒的 refresh_topology_freq 参数有关。有什么办法可以改变这个吗?
我还需要记录上面的第二个查询。
解决方案
您必须增加一个transaction_timeout设置,因为它默认设置为 10 秒。您的第二个查询运行 10 秒并被视为已过期,但已过期的事务不再与传入响应相关联并立即发送到 Elasticsearch。
推荐阅读
- python - 在 Heroku 上部署 playwright-python
- logging - 如何在手动创建的记录器(dotnet core 3.1)中配置 LogLevel
- python - 在django表单中成功提交表单后如何将address.pk作为参数传递?
- python - Telegram Bot API:如何使用 CallbackQuery.data 获取 InlineKeyboardButton 的文本?
- mysql - 如何查找 SQL 中缺勤或迟到的学生的总百分比?
- scala - Kafka Streams:无法解析重载方法
- tableau-api - 每个粒度的高价值
- c++ - 在 OpenMesh 中按名称删除属性
- java - PGraphics2D 应该实现可克隆但抛出异常
- swift - 将 3D 对象添加到 ARGeoAnchor