ApplicationInsights的探测器尝鲜
通常我们可以依靠ApplicationInsights(以下简称ai)来收集比如请求(request),依赖项(dependencies),异常(exception)等信息,但是无法收集到比如一个方法(方法内部比如没有依赖项调用)的信息。
很多时候如果一个方法很慢,我们只能根据ai分析首先是不是依赖项慢导致,如果不是,就以依赖项为节点,看这个依赖项是前面慢还是后面慢,然后在进行下一步分析。
然后又回到了性能优化全靠猜的地步。

ai能不能也有类似一些高阶的分析工具所具有的分析代码某路径耗时的功能呢?答案是肯定的。
ai有一个功能称之为探查器,就是专门用于诊断这种代码级性能的,其中早期的只能在azure上才能使用(无论你是web app部署还是vm部署都可以但是必须要是在azure上的)
这个其实限制了其使用范围,因为我司并没有使用azure web app来承载站点而是跑在自己机房上(只能干瞪眼流口水)
现在他有一个面向core的可以自己安装的版本
具体地址 https://github.com/microsoft/ApplicationInsights-Profiler-AspNetCore
目前这个项目还处于beta阶段,可以运行在windows和linux下
使用也很简单,首先项目肯定要是用了ai的,而且要是2.1以上的asp.net core项目,然后在使用ai的基础上安装对应的包,然后添加一行代码即可
需要安装一个新的ai的profiler的nuget包,注意目前该包只有pre-release版本,如果搜索不到注意下是否勾选了show pre-release package

添加使用Profiler的代码

装好之后,站点直接启动运行即可
此时站点除了常规的ai监控外,额外获得了profiler的能力,他会偶尔的汇报几个profiler的包,汇报的策略目前我个人还不清楚不过可以确定这个汇报的包肯定不多
我手头一个一天5万多访问量(2台机器)的站点1天下来也就4个profiler
众所周知的是ai是基于数据量收费的,如果过多的包这个荷包子是个问题,我这边目前也是一个项目先扔上去看下会导致多少费用增长,目前看起来还好。
先看看profiler的效果,如果收集到了profiler的话,会在性能面板里显示出来,嗯。我这里只有4个

点进去可以看到ai所收集到的profiler的详细信息

这里可以看到我整个流程的一个耗时(当前选中的这个)是300多ms,然后这里可以细化到每个方法的耗时是多少,我就随便找一个分支不断点下去


从上图我们可以看到我这每个操作流程中的耗时,具体可以参考官方文档 https://docs.microsoft.com/zh-cn/azure/azure-monitor/app/profiler-overview 如何从中分析出你的代码
ApplicationInsights的探测器尝鲜的更多相关文章
- Windows 10 周年版尝鲜
早在今年的 Build 大会上,微软就开始宣传最新的 Windows 10 周年版更新,炫了不少特技,直到昨天(2016/8/2 PST)才正式放出,相关新闻可以参考这里,正式的版本为 Version ...
- 【翻译】五步快速使用LINQPad尝鲜StreamInsight
StreamInsight 学习地址:http://www.cnblogs.com/StreamInsight/archive/2011/10/26/StreamInsight-Query-Seri ...
- 小程序新能力-个人开发者尝鲜微信小程序
个人开发者的福利 微信小程序,刚听到这个新名词的时候,我就兴冲冲的去找入口,看看自己能不能搞个微信小程序的HelloWorld,毕竟能在微信上把自己写的一些小工具跑起来还是满炫酷的. 没想,网上一查, ...
- 【响应式】foundation栅格布局的“尝鲜”与“填坑”
提到响应式,就不得不提两个响应式框架--bootstrap和foundation.在标题上我已经说明白啦,今天给大家介绍的是foundation框架. 何为"尝鲜"?就是带大伙 ...
- Spring-Data-JPA尝鲜:快速搭建CRUD+分页后台实例
前言:由于之前没有接触过Hibernate框架,但是最近看一些博客深深被它的"效率"所吸引,所以这就来跟大家一起就着一个简单的例子来尝尝Spring全家桶里自带的JPA的鲜 Spr ...
- 微信团队分享:Kotlin渐被认可,Android版微信的技术尝鲜之旅
本文由微信开发团队工程是由“oneliang”原创发表于WeMobileDev公众号,内容稍有改动. 1.引言 Kotlin 是一个用于现代多平台应用的静态编程语言,由 JetBrains 开发( ...
- Linux下尝鲜IDE Rider .NET又一开发利器
RiderRS 扯淡:很多人说:jetbrains出品,必属精品,jetbrains确实出了不少好东西,但是他的产品总感觉越用越慢,我的小Y430P高配版也倍感压力,内存占用率高. Multiple ...
- Win10尝鲜体验——初识传说中不一样的Windows 分类: 资源分享 2015-07-24 18:27 13人阅读 评论(0) 收藏
这几天,网上传来一个消息,虽然不知是好是坏,Win10可以下载安装了! 出于好奇,下载尝鲜,几个截图,留作纪念~ 中文,还是要好好支持的,毕竟中国有如此多的用户 可选的安装版本 许可条款也刚刚出炉,估 ...
- 微信小程序“满月”:尝鲜之后你还用过它吗?
距离 2017 年 1 月 9 日微信小程序上线,整整过去了一个月时间.和互联网时代每天出现的众多新鲜事物相似,小程序甫一诞生,立即占据了各大科技媒体网站头屏并引起社交圈的兴奋讨论.由于背靠微信,纷纷 ...
随机推荐
- k8s笔记之chartmuseum搭建
一.下载安装包 #在master节点中执行,以下这条命令就是下载文件到当前目录而已,下载完成之后让我们将chartmuseum赋予权限,就是可执行了chmod chartmuseum,然后移动到/us ...
- SpringCloud的阿里巴巴相关开源组件
Sentinel 阿里巴巴开源产品,把流量作为切入点,从流量控制.熔断降级.系统负载保护等多个维度保护服务的稳定性. Nacos 阿里巴巴开源产品,一个更易于构建云原生应用的动态服务发现.配置管理和服 ...
- Can't toast on a thread that has not called Looper.prepare()
Android开发中Can't toast on a thread that has not called Looper.prepare()问题 说一下问题出现场景: 在一个Android项目中,利用 ...
- 章节十一、6-操作集合里面的Web元素
以下演示操作以该网站为例:https://learn.letskodeit.com/p/practice 一.如何操作多个元素(把多个元素放到集合容器中然后操作它们) 列如我们需要操作这些单选框:: ...
- HLAPI
和SPS硬件交互的API
- hashlib以及hmac的日常应用
首先我们要明白日常的Web网页为了保证数据的安全都会对数据的存储进行一些加密,当我需要在此网站验证时就需要对原有的密码以及账号进行加密此时我们就需要用到hashlib这个框架的一些功能,下面我就来更大 ...
- 素数、杨辉三角、封装结构和集合操作(15)——IPython使用和封装解构
IPython使用 帮助 ? ##Ipython的概述和简介 help(name) ##查询指定名称和帮助 obj? ##列出obj对象的详细信息 obj?? ##列出更详细的信息 特殊变量 _表示前 ...
- Shel脚本-初步入门之《03》
Shel脚本-初步入门-Shell 脚本在 Linux 运维工作中的地位 3.Shell 脚本在 Linux 运维工作中的地位 Shell 脚本语言很适合用于处理纯文本类型的数据,而 Linux 系统 ...
- Windows下使用mingw+cmake编译C/C++程序
按照正常流程安装好mingw和cmake后,仍然是无法直接使用cmake编译处MakeFile文件的,我们需要在CMakeLists.txt中做一些配置. 首先,在PROJECT之前,设置: SET( ...
- ssh 到服务器然后输入中文保存到本地变成乱码
很有可能是 默认的编码导致的 尝试执行 echo $LANG 如果是 en_US vim 输入中文有较大概率是 GBK 编码 尝试把这个加入到 ~/.bashrc export LANG=zh_CN. ...