ApplicationInsights入门到精通系列(一)
在11月9号的上海.Net Conf开发者峰会上,我做了一个对Application Insights的Persentation,本来想着快速将其转化为一篇博客无赖最近忙成🐶。
由于Application Insights依赖于Azure,可能对于大多数人没有Azure订阅,为了便于大家了解Application Insights,我这里提供一个简单的demo
账号 publicdemo@myluobin.onmicrosoft.com
密码 Qq123654.. (最后面有2个英文句号,被那该死密码规则搞死了)
在
右下角带AI字样就是可以集成SDK的(都是“你的",你肯定能集成)然后由它们发送数据到Azure上的AI,之后他在数据用于各种用途。
有一些地方不能进行整合的比如外部服务或者SQL之类的在AI里会体现为依赖项的形式。
另外默认情况下AI的数据是发给国际版的Azure上的AI,如果是国内版的AI记得要修改其终结点地址,不然会发到国际版去(就相当于没收集到数据)
可以参考 upload/201912021538381652.png" style="margin: 0px; padding: 0px; border: 0px; max-width: 800px; height: auto;" alt="" />
找到一个叫bookStore的资源点击进入
下面我会简单说下左侧侧边栏框出来的4个内容
应用程序映射
有时候,你会不会想知道,你的站点调用了哪几个别人家的站点,调用了几个数据库,当前性能如何,错误率怎样。
应用程序映射就是为了解决你这个问题而生的。
在bookStore这个demo里它只调用了一个数据库,看起来好像没啥特别的,来看看我司的调用拓扑吧(测试环境的)
一般公司的内部调用可能会更接近我上面图的情况,再配合一些筛选,就可以从这个图里整理出你所想知道的某站点调用关系拓扑,以及性能和错误率等数据,
在整理站点间关系的时候这个还是挺有用的。
实时指标流
正常来说从程序触发了某个行为开始,此行为的数据要进入到AI里且能在图表上展示出这个数据,一般要延迟个三五分钟左右。
因为AI首先它是有一个独立线程它会收集数据,积攒起来,到达某个阈值或者某个间隔时间的时候它才会将数据一次性发送给AI。
不然每请求一次接口就将数据直接上报给AI这都要流量风暴了,因为上述机制首先数据发送的时候就会有延迟。
另外AI收集到数据后它也要做数据的处理,这也会产生一定的延迟。
但是有时候你新上线一个东西,你很急,你就想立马看到结果是怎样(比如线上改bug什么的😂)
此时你可以找到实时指标流,点进去,立马看到结果。
(我站点里点击下实时指标流里立马就能体现出来)
一般实时指标流延迟不会超过1秒,你操作之后立马会在AI的实时指标流面板里体现。
但是请注意:实时指标流里的任何数据都不会存储到AI里,所以它是属于转瞬即逝的数据,要看请抓紧。
同时此功能是不收费的,正统AI的收费就是收存储数据的¥,而因为实时指标流不存数据所以是免费的。
异常和性能
异常和性能这两个页面感觉主要大家多点点,没啥太多好说的。
如果点到爆炸了可以在右上方发个哭脸投诉微软🤣
另外无论是异常还是性能页面在最右下方会有要给“深入钻取",里面点击”示例“之后可以看到你每个请求的信息
点击之后会进入它的一个端到端事务的视图,通俗的说就是该请求下的调用链的情况
此页面你可以看到你请求哪里来的然后经历了什么步骤,然后分析出瓶颈再做优化。
如果你多个站点都是集成了AI,他会将其他站点的情况只要和这个请求有关联的一并反映到该视图下。
本篇入门级的就大概先说那么多。
后续有空的话再写一篇如何使用AI的语句查询(我觉得这是AI最强的地方之一的功能,也是我个人平时用的最多的功能)。
有兴趣的可以点击”日志(分析)“自己先进去玩玩。https://www.cnblogs.com/leolaw/p/11839221.html