关键词优化网站排名,做视频的网站带模板,做网站的一些好处,公众号开发菜单Application Insignhts是微软开发的一套监控程序。他可以对线上的应用程序进行全方位的监控#xff0c;比如监控每秒的请求数#xff0c;失败的请求#xff0c;追踪异常#xff0c;对每个请求进行监控#xff0c;从http的耗时#xff0c;到SQL查询的耗时#xff0c;完完… Application Insignhts是微软开发的一套监控程序。他可以对线上的应用程序进行全方位的监控比如监控每秒的请求数失败的请求追踪异常对每个请求进行监控从http的耗时到SQL查询的耗时完完整整的被记录下来。当对程序进行优化跟排错时非常好使。它原来是visualstudio online的一个服务现在合并进了Azure作为Azure Monitor的一个组件。虽然合并进了Azure但是Application Insignhts还是免费的。什么是Application InsignhtsApplication Insights 是 Azure Monitor 的一项功能是面向开发人员和 DevOps 专业人员的可扩展应用程序性能管理 (APM) 服务。使用它可以监视实时应用程序。它将自动检测性能异常并且包含了强大的分析工具来帮助诊断问题了解用户在应用中实际执行了哪些操作。它旨在帮助持续提高性能与可用性。它适用于本地云、混合云或任何公有云中托管的各种平台包括 .NET、Node.js、Java 和 Python上的应用。它与 DevOps 进程集成并且具有与不同开发工具的连接点。可以通过与 Visual Studio App Center 集成来监视和分析移动应用的遥测数据。摘自微软文档app-insights-overview在Azure创建Application Insignhts服务上一次介绍了如何注册12个月免费订阅账号如何白嫖微软Azure12个月及避坑指南使用账号登录管理平台后找到Application Insignhts服务点击创建。在创建界面选择资源组填写实例名称选择区域选择个离你近的。创建一个标记。标记其实就是一组键值对主要用来统计的时候进行区分跟合并用的。最后点提交等待一会就会提示部署完成。部署成功后回到管理控制台主页找到所有资源点击刚才填写的实例名就可以查看详情了。这个页面默认会显示几个指标因为截图的时候是我已经接入过了所以有数据第一次进去应该是没有数据的。“检测密钥”比较重要后面asp.net core程序对接的时候需要用到。在asp.net core程序接入Application Insignhts服务在asp.net core程序接入Application Insignhts服务非常简单。简单的配置几行代码就可以运行了对业务代码完全没有侵入。找一个asp.net core的程序在.csproj文件下加入Application Insignhts包的引用。Project SdkMicrosoft.NET.Sdk.Web......ItemGroupPackageReference IncludeMicrosoft.ApplicationInsights.AspNetCore Version2.13.1 //ItemGroup
/Project
在Startup.ConfigureServices下注入Application Insignhts相关的服务。 public void ConfigureServices(IServiceCollection services){//register application insightsservices.AddApplicationInsightsTelemetry();......}
在配置文件appsettings.json下配置检测密钥。{ApplicationInsights: {InstrumentationKey: xxxxxxxxxxxxxx},Logging: {LogLevel: {Default: Warning}},......
}
这样asp.net core程序就配置好了。正常流程发布程序后部署它。查看应用程序监控指标发布完程序等程序运行一段时间后就可以去管理界面查看监控指标了。默认有4个指标失败的请求数服务器响应时间服务器请求可用性其中比较有意思的是服务器响应时间跟服务器请求这2个指标对于我们调优有非常大的意义。服务器响应时间跟服务器请求点进去其实是进了性能指标的界面。该界面展示了服务器一段时间内接受到的请求数量及响应速度。同时列出一些慢的请求点击一个请求可以看到更加明细的信息。点击第一个最慢的看看为什么会这么慢。可以看到这个请求耗时主要是SQL跟HTTP其中SQL平均耗时17ms这个肯定没问题。HTTP平均耗时650ms那么这个接口慢的问题基本被锁定了。这还没完继续点击深入钻取...示例按钮还有更加详细的信息。点击示例按钮会列出该接口近期的一些调用示例。选一个耗时比较长的进入点击进去还有更详细的信息。通过这图就很清晰了这个请求包含了多次SQL请求跟2次HTTP请求。SQL请求耗时都在1ms左右其中一次HTTP请求1.7s那么很明显了就是这个HTTP请求拖慢了整个请求所有需要对这个HTTP请求进行优化。这还没完点击其中的SQL请求还有更详细的信息能显示执行了什么SQL语句。点击HTTP请求同样会列出详细信息包括请求的URL等信息。其他指标除了默认列出来的指标其实还有很多指标能够查看。在右侧边栏点击指标菜单显示指标筛选界面。在该界面可以添加自己想看的指标。比如CPU内存等信息。实时指标实时指标是个很酷炫的功能可以在一个界面动态实时显示N个指标。总结asp.net core程序使用Application Insignhts非常简单通过简单的几行代码就集成完成并且对业务代码零侵入。Application Insignhts的监控功能非常强大可以对应用程序、服务器各种指标进行监控。特别是性能指标的请求对我们进行线上程序的排错调优具有非常强大指导意义。关注我的公众号一起玩转技术