62 lines
1.7 KiB
Markdown
62 lines
1.7 KiB
Markdown
# 组件库设置
|
||
组件库设置与受监视应用程序中使用的您自己或第三方库有关。
|
||
|
||
在 agent 或 SDK 中, 无论将库名称收集为ID或String(简单地说,例如SpringMVC),收集器格式化ID中的数据,以获得更好的性能和更少的存储要。
|
||
|
||
此外,收集器根据组件库推测远程服务,例如:
|
||
组件库是MySQL驱动程序库,那么远程服务应该是MySQL Server。
|
||
|
||
出于这两个原因,收集器需要此文件中的两部分设置:
|
||
|
||
1.组件库ID,名称和语言。
|
||
1.远程服务器映射,基于本地库。
|
||
|
||
**必须在此文件中定义所有组件名称和ID。**
|
||
|
||
## 组件库ID
|
||
定义受监视应用程序中使用的所有组件库的名称和ID。
|
||
这是双向映射,agent或SDK可以value(ID)来表示上行链路数据中的组件名称。
|
||
|
||
- Name:agent和UI中使用的组件名称
|
||
- id:唯一ID。 一旦发布,所有ID都会被保留。
|
||
- languages:程序语言可以使用此组件。 多语言应该用`,`分隔
|
||
|
||
### ID 规则
|
||
- Java and 多语言共享: (0, 3000]
|
||
- .NET 平台使用: (3000, 4000]
|
||
- Node.js 平台使用: (4000, 5000]
|
||
- Go 平台使用: (5000, 6000]
|
||
- PHP 平台使用: (6000, 7000]
|
||
- Python 使用: (7000, 8000]
|
||
|
||
实例
|
||
```yaml
|
||
Tomcat:
|
||
id: 1
|
||
languages: Java
|
||
HttpClient:
|
||
id: 2
|
||
languages: Java,C#,Node.js
|
||
Dubbo:
|
||
id: 3
|
||
languages: Java
|
||
H2:
|
||
id: 4
|
||
languages: Java
|
||
```
|
||
|
||
## 远端服务映射
|
||
远端服务器根据本地组件推断而出,映射基于组件库名称.
|
||
|
||
- Key: 客户端组件库名称
|
||
- Value: 服务组件名称
|
||
|
||
```yaml
|
||
Component-Server-Mappings:
|
||
Jedis: Redis
|
||
StackExchange.Redis: Redis
|
||
SqlClient: SqlServer
|
||
Npgsql: PostgreSQL
|
||
MySqlConnector: Mysql
|
||
EntityFrameworkCore.InMemory: InMemoryDatabase
|
||
``` |