首页 文章

在bluemix Kibana中正确解析我的容器日志

提问于
浏览
0

我在bluemix中使用容器,我只是在环境变量中提到我的日志路径,将我的自定义应用程序日志转发给Kibana . 现在,我可以在Bluemix Kibana仪表板中看到我的日志 .

但问题是它没有解析我的日志,我的自定义日志中的所有信息都显示在消息字段中 . 我希望在不同的列中看到不同的信息,以便我可以进行所有过滤和搜索,例如我想从我的自定义日志中选择模块名称,日志级别,时间戳等 . 现在这些字段在Kibana中是空的,整个行显示在消息字段中 .

现在我有什么选择?是否必须在每个容器实例中启动logstash代理,或者我只需要在某处提及我的日志模式?还有其他选择吗?

任何良好的链接和信息也将不胜感激 .

2 回答

  • 1

    如果您使用的是IBM Bluemix Container Service,则无法将自定义筛选器添加到现有日志服务/爬网程序中,请参阅Monitoring and logging IBM Bluemix Container Service

    要在Kibana仪表板中使日志更有意义,您可以记录JSON格式的输出,这允许使用IBM Container Service进行更好的过滤,这将在此处描述Test Driving Built-in Monitoring and Logging in IBM Containers

    "The net result of this is that, if your app emits JSON formatted logs, they will be properly parsed and indexed in Elastic Search, which can then be queried."

    如果这还不够,您需要在此处描述的容器中添加logstash Logger Sending logs to Bluemix using Logstash agent

    最后,您还可以部署自己的ELK堆栈 .

  • 1

    您可以使用logstash,但正如您所提到的,您有多个容器,不建议在所有容器上安装logstash代理,然后将数据发送到托管Elasticsearch&Kibana的中央服务器 .

    您可以使用以下工具: -

    • 使用Filebeat(在所有容器上安装) - 它是一个轻量级的数据发送器

    • 将Filebeat数据发送到Logstash(将托管Elasticsearch&Kibana的中央服务器)

    • 创建Logstash配置文件以解析数据并将输出发送到Elasticsearch . (这将利用Logstash的grok过滤器将数据解析/处理到字段中) .

    • 使用Kibana可视化Elasticsearch Index中的数据 .

相关问题