安装与配置DotNet Agent
要监控.NET应用,在透视宝云端的“配置→应用”页面中选择“.NET”语言,按照页面中的引导安装DotNet Agent,详细说明如下。
获取授权编号
授权编号是透视宝用户身份识别的License Key,每个用户对应一个唯一的授权编号,在后续配置中需要使用。
下载DotNet Agent安装包
DotNet Agent只支持Windows系统。
点击<下载DotNet Agent(版本)>按钮,下载最新版本的DotNet Agent安装包。
安装DotNet Agent
1、解压缩安装包。
2、在DotNet Agent的conf目录(如DotnetAgent_2.2.0/conf)下的config文件中,填写license、sendHost、registHost。例如:
License=J45Engw88NeKhK2NmrQque1/zEDvsVyPs/qJ6gVwSvcJ7epMEUpz6zDQxRn8nJKl sendHost=seal-data.toushibao.com registHost=seal-data.toushibao.com
3、执行如下命令启动DotNet Agent,输入Y后,会重启IIS服务。
.\dotNetAgent.bat start
4、启动成功后显示如下页面。
5、查看数据
安装配置完成后,稍等几分钟您可以在“应用”模块查看.NET应用数据。请注意,从来没被访问过的应用不会显示在应用列表中。
注意:为了保证DotNet Agent能够获取数据,IIS应用程序池的配置需要选择“集成模式”。
安装DotNet Agent后,您可以在DotNet Agent conf目录的app.conf文件中查看可配置项,主要配置项及相关说明见下表:
配置项 | 说明 |
AccountId | 用户ID,不需要配置。 |
HostId | 主机唯一标识,不需要配置。 |
AppName | 用于生成APPID标识。 |
RegistHost | 用户APP注册、主机注册、心跳发送、license配额监测的API服务器地址。 |
SendHost | 探针收集数据往外发送的地址。 |
License | 用户注册码 |
AgentServicePort | 探针与Windows服务通信端口 |
Log | 用于设置日志级别,级别包括debug、info、error、false。此配置需要在探针为debug版本时生效。 |
Qualifier | 探针标识,可为空,例如1004x0。 |
TracedUri | uri过滤,不采集包含此字符的URI请求,如果为空则全部采集。 |
CustomInstrumentRumJSUri | 用于设置JS脚本地址。 |
IsCatchFormAndCookieInfo | 用于设置是否抓取cookie数据,设置为“true”抓取,设置为“false”则不抓取。 |
MaxmusSizeInTracerbus | 用于配置DotNet Agent堆积的最大任务数量,默认配置值为“500000”,即当前DotNet Agent可堆积的最大任务数量为“500000”。 DotNet Agent运行时会不断抓取应用程序的运行数据并放入任务处理队列,DotNet Agent会以分钟为单位定时处理和发送这些数据,为避免产生性能问题和堆积任务过多,当数据量达到一个峰值时,DotNet Agent将不再抓取应用程序运行数据。
|
MinimumTimeToRecordTracer | 用于配置DotNet Agent抓取任务的最小时间阀值,默认配置值为“100”毫秒,即响应时间小于100毫秒的Request请求,将不会被记录。 DotNet Agent会以Request请求为单位抓取应用程序堆栈数据并记录时间,为更好的发现问题,提高程序运行效率,当Request 的响应时间小于MinimumTimeToRecordTracer中配置的值时,DotNet Agent将不会抓取此Request请求的堆栈等数据。 |
MaxmumTraceLine | 用于配置DotNet Agent抓取单次Request请求的最大堆栈深度,默认配置值为“500”,即Dotnet插件抓取的最大堆栈深度为“500”。 如果应用程序堆栈深度大于MaxmumTraceLine的值,DotNet Agent将不再抓取。 |
DealTracerCountInOnthTime | 用于配置队列批量处理单元。 |
SecurityMode | 用于配置安全模式,即是否抓取用户信息,设置为“true”时会抓取用户名、密码等信息。 |
IsInstrumentRumJS | 用于配置是否像Web前端页面注入JS,设置为“true”时会自动向应用的Web页面注入一段JS代码来监控页面性能。 |
FilterKey | 用于配置是否过滤敏感数据,主要针对SQL语句的敏感参数值。默认值为“true”,即打开敏感数据过滤功能,打开过滤功能后对应的敏感数据将显示为“##”。不需要过滤敏感数据时,设置为“false”即可。 目前支持过滤的敏感数据包括:
|
SetEnv | 环境参数,为空则为生产环境。当此值为qa时打印调试日志。 |
CpuFusing | 是否开启CPU熔断。 |
Sampling | 是否开启采样,此采样规则不同Java版本,此采样规则为同一个URI单位时间内只采集一条数据。 |
SamplingPoint | 采样单位秒。 |
此外,您还可以自定义详细的抓取信息。默认情况下,DotNet Agent仅会抓取Request请求的响应时间及当前请求所执行的SQL脚本(如果存在)。当您需要深入了解应用程序运行信息和堆栈时,您可自定义DotNet Agent抓取的程序集及程序集中特定的类、方法或参数。
配置方法如下:
在DotNet Agent conf目录下,使用文本编辑器打开InstrumentActoin.xml文件,文件内容如下图所示。
在extension结点下新增一个名称为tracer的结点,在assembly、class、method、parameters属性中设置您需要抓取的应用程序集名称、类名称、方法名称或参数名称。其中:
配置文件中只能存在一个名称为extension的根结点,extension结点下可以存在多个名称为tracer的子结点,tracer结点中只能存在一个名称为assembly的属性。
assembly属性中配置的应用程序集名称,不需要填写程序的扩展名“.dll”。
assambly为必需设置的属性,class、method、parameters属性可根据需要选择是否设置。
注意:修改“InstrumentActoin.xml”文件后,需要重启IIS后才会生效。
安装应用DotNetAgent后,您可以管理DotNetAgent,包括启动、停止、重启等。
首先,进入DotNetAgent安装目录下(如cloudwise/DotNetAgent),然后执行相应命令管理DotNetAgent。
启动DotNet Agent
在Windows系统中,执行以下命令可以启动DotNet Agent:
.\dotNetAgent.bat start
停止DotNet Agent
在Windows系统中,执行以下命令可以停止DotNet Agent:
.\dotNetAgent.bat stop
重启DotNet Agent
在Windows系统中,执行以下命令可以重启DotNet Agent:
.\dotNetAgent.bat restart
查看DotNet Agent状态
在Windows系统中,执行以下命令可以查看DotNet Agent状态:
.\dotNetAgent.bat status
目前,DotNet Agent支持的.Net框架、应用框架、应用服务器、开发语言、数据库等说明如下:
.NET框架+OS | 类型 | 支持类型/版本 |
Framework4.0 + Windows Server 2008 R2 SP1(195) | Web/App Server | IIS 7.5 |
SQL数据库 |
| |
NoSQL数据库 | ServiceStack.Redis-V4.0.17 | |
Framework4.0 + Windows Server 2008 R2(6.104) | Web/App Server | IIS 7.5 |
应用框架 | Web API | |
SQL数据库 |
| |
Framework4.0 + Windows Server 2008 SP1 | Web/App Server | IIS 7.0 |
SQL数据库 | SQL Sever | |
NoSQL数据库 |
| |
Framework4.0 + Windows Server 2012 R2 | Web/App Server | IIS 8.5 |
应用框架 |
| |
SQL数据库 |
| |
NoSQL数据库 | ServiceStack.Redis-V4.0.17 | |
Framework4.0 + Windows Server 2012 | Web/App Server | IIS 8.0 |
SQL数据库 | SQL Sever | |
NoSQL数据库 | ServiceStack.Redis-V4.0.17 | |
Framework4.5 + Windows Server 2008 R2 SP1 | Web/App Server | IIS 7.5 |
NoSQL数据库 | ServiceStack.Redis-V4.0.17 | |
Framework4.5 + Windows Server 2008 R2 | Web/App Server | IIS 7.5 |
NoSQL数据库 | ServiceStack.Redis-V4.0.17 | |
Framework4.5 + Windows Server 2012 R2 | Web/App Server | IIS 8.5 |
SQL数据库 | SQL Sever | |
NoSQL数据库 |
| |
Framework4.6 + Windows Server2016 | Web/App Server | IIS 10 |
SQL数据库 | SQL Sever | |
NoSQL数据库 | ServiceStack.Redis-V4.0.17 |