我们有一个使用Play Framwork的Java Web应用程序。如何使用Application Insights添加Web请求日志记录?其他项目类型https://docs.microsoft.com/en-us/azure/azure-monitor/app/java-get-started#4-add-an-http-filter
的文档可用答案 0 :(得分:0)
假设您使用的是playframework 2.7,在Java方面,有JavaHttpFilters。 https://www.playframework.com/documentation/2.7.x/JavaHttpFilters
不幸的是,它们没有实现javax.servlet.Filter,这是您链接到的文档所使用的。文档说您应该注册过滤器WebRequestTrackingFilter
。基本上,它使用RequestTelemetry
填充HttpServerHandler
,然后使用TelemetryClient将其发送到ApplicationInsights。
在您的play.mvc.Filter
中,您将执行相同的操作。创建一个TelemetryClient
(您可能想使用DI将其注入到Filter
中)。在您的Filter
的{{1}}方法中,创建一个RequestTelemetry
,然后使用TelemetryClient#trackRequest
发送。