C# 如何在elasticsearch中关联日志
我有一个asp.net核心web应用程序(mvc)项目,当应用程序中发生某些事情时,它会将日志写入elasticsearch并从elasticsearch读取日志 是否有一种方法可以关联同一浏览器事务中发生的日志?(即,打开浏览器,用户单击每页上的按钮,将他们重定向到另一页,直到他们到达页面的末尾,然后关闭浏览器)我看到了一些关于APM的信息,但是是否有其他方法可以将这些日志分组为单个事务(如果有意义的话)C# 如何在elasticsearch中关联日志,c#,asp.net-mvc,elasticsearch,apm,C#,Asp.net Mvc,elasticsearch,Apm,我有一个asp.net核心web应用程序(mvc)项目,当应用程序中发生某些事情时,它会将日志写入elasticsearch并从elasticsearch读取日志 是否有一种方法可以关联同一浏览器事务中发生的日志?(即,打开浏览器,用户单击每页上的按钮,将他们重定向到另一页,直到他们到达页面的末尾,然后关闭浏览器)我看到了一些关于APM的信息,但是是否有其他方法可以将这些日志分组为单个事务(如果有意义的话) 更新: 我严格按照Windows的说明操作。当我进入第3步启动APM服务器时,它说要运
更新: 我严格按照Windows的说明操作。当我进入第3步启动APM服务器时,它说要运行cmd
start Service APM server
,但什么也没发生。因此,当我尝试用cmd/apmserver-e
启动服务器时,它做了一些看起来与powershell中显示为admin的格式不一样的事情
然后我检查了apm服务器的状态,它显示为设置正确。我没有执行步骤2,因为我正在运行它localhost
进入最后一步,即APM代理。我进入了tab.NET并按照说明操作。。。安装Elastic.APM.NetCoreAll nuget软件包并执行以下操作
Startup.cs
文件我添加了app.uselasticapm(配置,新的HttpDiagnosticsSubscriber(),新的efcoredignosticssubscriber())代码>
在我的appsettings.json
文件中:
{
"ApplicationName": "customer-simulation-es-app",
"Serilog": {
"MinimumLevel": {
"Default": "Information",
"Override": {
"Microsoft": "Information",
"System": "Warning"
}
}
},
"ElasticConfiguration": {
"Uri": "http://localhost:9200"
},
"ElasticApm": {
"ServerUrl": "http://localhost:8200",
"ServiceName": "CustomerApp",
"Environment": "production",
"CloudProvider": "none",
"LogLevel": "Trace"
},
"AllowedHosts": "*"
}
这是我在程序开始运行时在.exe文件应用程序上看到的内容:
我运行程序并在浏览器上执行一些操作。然后我去检查代理的状态,它说还没有从代理那里收到任何数据。但我做的正是他们想要的
我是否遗漏了指南中没有的内容?使用APM将是实现这一点的最简单方法,因为它非常简单
.Net APM代理了解事务的概念,可以在处理(Serilog或NLog)方面提供很大帮助。谢谢,我将继续尝试使用APM并为APM安装.Net代理!太棒了,如果您遇到任何问题,请告诉我们,但这应该是直截了当的。我遇到了一个问题,我似乎无法理解为什么在项目中实现并运行数据时,没有从代理处收到数据。请参阅原文中的更新部分。Greta job至今。您是否可以检查并添加最后一个代码段,以便获得有关引擎盖下发生的事情的一些跟踪信息?另外,请务必查看这些提示,了解哪些地方可能会出错。谢谢!我继续并删除了setup.cs
中包含app.useAllesticapm()的行
toapp.UseElasticApm(配置,新的HttpDiagnosticsSubscriber(),新的EfCoreDiagnosticsSubscriber())代码>然后,当我运行项目并对应用程序执行操作并检查代理状态时,它仍然不断地告诉我没有传递任何数据。然后我检查了故障排除页面,但在.exe文件中找不到它显示的内容。请参阅更新部分了解我的发现。
{
"ApplicationName": "customer-simulation-es-app",
"Serilog": {
"MinimumLevel": {
"Default": "Information",
"Override": {
"Microsoft": "Information",
"System": "Warning"
}
}
},
"ElasticConfiguration": {
"Uri": "http://localhost:9200"
},
"ElasticApm": {
"ServerUrl": "http://localhost:8200",
"ServiceName": "CustomerApp",
"Environment": "production",
"CloudProvider": "none",
"LogLevel": "Trace"
},
"AllowedHosts": "*"
}