未验证 提交 771bc87e 编写于 作者: wu-sheng's avatar wu-sheng 提交者: GitHub

Add document of component library settings and incuating features abstract. (#1185)

上级 f7d90899
......@@ -12,8 +12,9 @@
* [Open TLS](en/TLS.md)
* [Namespace Isolation](en/Namespace.md)
* [Token Authentication](en/Token-auth.md)
* [Add your own component library settings in collector](en/Component-libraries-extend.md)
* Incubating Features
* Abstract
* [Abstract](en/Incubating/Abstract.md)
* Application Toolkit
* [Overview](en/Applicaton-toolkit.md)
* [OpenTracing Tracer](en/Opentracing.md)
......
# Component library settings
Component library settings are about your own or 3rd part libraries used in monitored application.
In agent or SDK, no matter library name collected as ID or String(literally, e.g. SpringMVC), collector
formats data in ID for better performance and less storage requirements.
Also, collector conjectures the remote service based on the component library, such as:
the component library is MySQL Driver library, then the remote service should be MySQL Server.
For those two reasons, collector require two parts of settings in this file:
1. Component Library id, name and languages.
1. Remote server mapping, based on local library.
**All component names and IDs must be defined in this file.**
## Component Library id
Define all component libraries' names and IDs, used in monitored application.
This is a both-way mapping, agent or SDK could use the value(ID) to represent the component name in uplink data.
- Name: the component name used in agent and UI
- id: Unique ID. All IDs are reserved, once it is released.
- languages: Program languages may use this component. Multi languages should be separated by `,`
### ID rules
- Java and multi languages shared: (0, 3000]
- .NET Platform reserved: (3000, 4000]
- Node.js Platform reserved: (4000, 5000]
- Go reserved: (5000, 6000]
- PHP reserved: (6000, 7000]
Example
```yaml
Tomcat:
id: 1
languages: Java
HttpClient:
id: 2
languages: Java,C#,Node.js
Dubbo:
id: 3
languages: Java
H2:
id: 4
languages: Java
```
## Remote server mapping
Remote server will be conjectured by the local component. The mappings are based on Component library names.
- Key: client component library name
- Value: server component name
```yaml
Component-Server-Mappings:
Jedis: Redis
StackExchange.Redis: Redis
SqlClient: SqlServer
Npgsql: PostgreSQL
MySqlConnector: Mysql
EntityFrameworkCore.InMemory: InMemoryDatabase
```
\ No newline at end of file
# Incubating Features
Incubating features are developed or contributed from SkyWalking community,
but it is still a prototype or preview. At the same time, they need or their contributors
want to be included in the primary repository.
The PMC and committer team will evaluate the feature, make sure it stays in optional,
has compatible with current version.
List some typical incubating features
1. New storage implementor in collector, such as: ElasticSearch HTTP, MySQL...
1. New module provided in collector.
1. New optional plugins in agent.
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册