我正在使用Serilog Elasticsearch Sink将日志记录信息发送到Elastic Cloud实例。我的部署有4个单独的应用程序,它们都发送日志记录信息。我希望能够根据创建它们的应用程序轻松地在Kibana中过滤日志消息。实现此目标的最佳方法是什么?
答案 0 :(得分:1)
以下是可能有用的步骤:- 1.登录到Kibana。 2.在顶部,您可能会找到“添加过滤器+”选项。单击该选项。 3.选择“过滤器”选项作为“源名称” 4.选择“操作员”为“是”(根据下拉菜单中的要求) 5.在“值”字段中输入您的应用程序名称,然后保存。
通过这种方式,您可以根据应用程序进行过滤。还可以根据需要使用其他选项。
答案 1 :(得分:0)
我找到了解决我问题的方法。核心问题是Serilog接收器的配置没有提供任何允许我过滤Elastic的上下文。我可以使用enrichment properties内置的Serilog添加字段。
在我的情况下,我通过json配置文件设置日志记录,因此我能够在appsettings.json中的Serilog配置中添加以下内容:
"Serilog": {
"Enrich": [ "FromLogContext" ],
"Properties": {
"ApplicationName": "application-name",
"Environment" : "development"
}
然后我可以按字段,应用程序或字段,环境过滤Kibana中的对象,以查看不同的应用程序日志。