【问题标题】:logstash to receive log from android? or is this elasticsearch?logstash 从 android 接收日志?或者这是弹性搜索?
【发布时间】:2013-12-04 15:32:34
【问题描述】:

在阅读了logstash 提供的文档后,我仍然有些困惑。我正计划编写一个 Android 应用程序,我想记录该应用程序的活动。日志将通过网络发送。 logstash 不是正确的解决方案吗?因为它需要在产生日志的系统上安装一个“代理”。

我想要一个可以存储应用活动日志的系统,但它还需要能够将收集的日志导出为纯文本文件。我知道logstash可以输出到elasticsearch,但我不确定它是否可以同时导出到纯文本文件。或者这是 ElasticSearch 应该做的任务?

非常感谢您提供的任何意见

【问题讨论】:

标签: elasticsearch logstash


【解决方案1】:

不幸的是,Logstash 转发器目前不适用于 android/ios,我也无法从社区中找到任何现有的解决方案。 (我在这里问了同样的问题,但被选为题外话,因为它被认为是在询问工具/库建议)。 不幸的是,您最好的选择是自己编写一个(这不是微不足道的:您需要考虑离线连接、批处理、调度、压缩、文件跟踪等),或者使用其他(通常是商业的)日志记录服务,例如 LogEntries。 顺便说一下,LogEntries 的 android/ios 客户端是开源的。我不清楚它的 OSS 许可,但是如果您要自己为 logstash 编写代理,您可能可以从查看 LogEntries 的 android 代理实现开始,它已经解决了上面提到的所有技术问题。 https://github.com/logentries/le_android.

为了回答您的其他问题,是的,logstash 应该接收您的日志(来自移动设备),通常是通过伐木工人输入(又名 logstash 转发器)。然后,Logstash 可以将这些日志文件持久化并索引到 elasticsearch,前提是它是这样配置的

【讨论】:

  • 使用 Logstash HTTP 输入插件怎么样? elastic.co/blog/introducing-logstash-input-http-plugin
  • 是的,您可以在服务器端使用 HTTP 或 TCP 端点。但是您只需要自己构建客户端代理,即自己在设备上加载日志条目,跟踪它,过滤它,批处理它,压缩它,限制它,安排它(离线/在线,移动/wifi),重试它,附加元数据(IP、设备型号、操作系统版本)、匿名等。在 PC 世界中,这就是 logstash 代理所做的。在移动世界上找不到任何现有的 logstash 解决方案。
猜你喜欢
  • 1970-01-01
  • 2018-03-10
  • 2018-08-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多