This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch 6.0
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git


The following commit(s) were added to refs/heads/6.0 by this push:
     new 1e51702  Add component library settings document back.
1e51702 is described below

commit 1e51702bab524a44e6a00aa9db1bec982754263a
Author: Wu Sheng <[email protected]>
AuthorDate: Thu Aug 16 20:37:27 2018 +0800

    Add component library settings document back.
---
 .../en/setup/backend/Component-library-settings.md | 61 ++++++++++++++++++++++
 .../java-agent/Plugin-Development-Guide.md         |  6 +--
 docs/en/setup/service-agent/java-agent/README.md   |  4 ++
 3 files changed, 67 insertions(+), 4 deletions(-)

diff --git a/docs/en/setup/backend/Component-library-settings.md 
b/docs/en/setup/backend/Component-library-settings.md
new file mode 100644
index 0000000..c904576
--- /dev/null
+++ b/docs/en/setup/backend/Component-library-settings.md
@@ -0,0 +1,61 @@
+# 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
diff --git a/docs/en/setup/service-agent/java-agent/Plugin-Development-Guide.md 
b/docs/en/setup/service-agent/java-agent/Plugin-Development-Guide.md
index 2174c33..e493ac6 100644
--- a/docs/en/setup/service-agent/java-agent/Plugin-Development-Guide.md
+++ b/docs/en/setup/service-agent/java-agent/Plugin-Development-Guide.md
@@ -157,10 +157,8 @@ SpanLayer is the catalog of span. Here are 5 values:
 1. HTTP
 1. MQ
 
-Component IDs are defined and protected by SkyWalking project, 0 -> 10000 IDs 
are reserved. If you want to contribute
-a new plugin, you can ask for an official ID, after your pull request approved 
and automatic test cases accepted by PMC.
-Please use > 10000 ID, if you are going to develop a private plugin or don't 
intend to contribute the plugin to community,
-to avoid the ID conflict.
+Component IDs are defined and reserved by SkyWalking project.
+For component name/ID extension, please follow [component library setting 
document](../../backend/Component-library-settings.md).
 
 ## Develop a plugin
 ### Abstract
diff --git a/docs/en/setup/service-agent/java-agent/README.md 
b/docs/en/setup/service-agent/java-agent/README.md
index abf1f36..1d9544b 100644
--- a/docs/en/setup/service-agent/java-agent/README.md
+++ b/docs/en/setup/service-agent/java-agent/README.md
@@ -67,6 +67,10 @@ Now, we have the following known plugins.
     * If you want to use annotations or SkyWalking native APIs to read 
context, try [SkyWalking manual APIs](Application-toolkit-trace.md)
     * If you want to continue traces across thread manually, use [across 
thread solution APIs](Application-toolkit-trace-cross-thread.md).
 
+## Plugin Development Guide
+SkyWalking java agent supports plugin to extend [the supported 
list](Supported-list.md). Please follow 
+our [Plugin Development Guide](Plugin-Development-Guide.md).
+
 # Test
 If you are interested in plugin compatible tests or agent performance, see the 
following reports.
 * [Plugin 
Test](https://github.com/SkywalkingTest/agent-integration-test-report)

Reply via email to