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

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


The following commit(s) were added to refs/heads/main by this push:
     new 949fbfc  Polish documentation and add changes (#22)
949fbfc is described below

commit 949fbfcc63131c3ccc718a1cfc9998b548b27bd6
Author: mrproliu <[email protected]>
AuthorDate: Thu May 5 23:47:48 2022 +0800

    Polish documentation and add changes (#22)
---
 CHANGES.md                                         |  2 +
 README.md                                          |  2 +-
 docs/en/concepts-and-designs/overview.md           |  6 +--
 docs/en/guides/compile/how-to-compile.md           |  2 +-
 .../configuration/process_discovery/kubernetes.md  | 44 +++++++++++-----------
 .../configuration/process_discovery/overview.md    |  6 +--
 .../configuration/process_discovery/scanner.md     | 20 +++++-----
 docs/en/setup/configuration/profiling.md           |  4 +-
 .../en/setup/examples/cases/agent-sensor/readme.md |  8 ++--
 .../examples/cases/kubernetes-process/readme.md    | 14 +++----
 .../examples/cases/profiling-process/readme.md     | 10 ++---
 docs/en/setup/overview.md                          |  2 +-
 docs/menu.yml                                      |  2 +-
 13 files changed, 62 insertions(+), 60 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index daec542..c545b0e 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -5,6 +5,8 @@ Release Notes.
 0.1.0
 ------------------
 #### Features
+* Support detect processes in `scanner` or `kubernetes` mode.
+* Support profiling C, C++, Golang, and Rust service.
 
 #### Bug Fixes
 
diff --git a/README.md b/README.md
index 790661e..3456657 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@ Apache SkyWalking Rover
 
 <img src="http://skywalking.apache.org/assets/logo.svg"; alt="Sky Walking logo" 
height="90px" align="right" />
 
-**SkyWalking Rover**: Metrics collector and ebpf-based profiler for C, C++, 
Golang and Rust.
+**SkyWalking Rover**: Metrics collector and ebpf-based profiler for C, C++, 
Golang, and Rust.
 
 [![GitHub 
stars](https://img.shields.io/github/stars/apache/skywalking.svg?style=for-the-badge&label=Stars&logo=github)](https://github.com/apache/skywalking)
 [![Twitter 
Follow](https://img.shields.io/twitter/follow/asfskywalking.svg?style=for-the-badge&label=Follow&logo=twitter)](https://twitter.com/AsfSkyWalking)
diff --git a/docs/en/concepts-and-designs/overview.md 
b/docs/en/concepts-and-designs/overview.md
index a072002..ac9c3dd 100644
--- a/docs/en/concepts-and-designs/overview.md
+++ b/docs/en/concepts-and-designs/overview.md
@@ -1,13 +1,13 @@
 # Overview
 
-SkyWalking Rover is an open-source collector, which provides a metrics 
collector and eBPF-based profiler for C, C++, Golang and Rust.
+SkyWalking Rover is an open-source collector, which provides a metrics 
collector and eBPF-based profiler for C, C++, Golang, and Rust.
 
 ## Why use SkyWalking Rover?
 
 On the Linux platform, we could collect a lot of telemetry data. Rover could 
collect them based on the eBPF technology,
 and upload them to the SkyWalking backend for analysis, aggregate, and 
visualize them.
 
-1. EBPF based profiling for C, C++, Golang and Rust.
+1. EBPF-based profiling for C, C++, Golang, and Rust.
 
 ## Architecture
 
@@ -15,4 +15,4 @@ and upload them to the SkyWalking backend for analysis, 
aggregate, and visualize
 
 - **Process** represents the data monitored by Rover.
 - **Rover** is deployed in the VM instance, collects data in VM and Process, 
and reports it to the OAP cluster.
-- **OAP** collect data from the rover side, analysis, and storage them.
\ No newline at end of file
+- **OAP** collect data from the rover side, analysis, and stores them.
diff --git a/docs/en/guides/compile/how-to-compile.md 
b/docs/en/guides/compile/how-to-compile.md
index 2b51725..f9aee78 100644
--- a/docs/en/guides/compile/how-to-compile.md
+++ b/docs/en/guides/compile/how-to-compile.md
@@ -14,7 +14,7 @@ Linux version >= `4.4`, and dependency these tools:
 
 ### MacOS or Windows
 
-Make sure it already has docker environment.
+Make sure it already has a docker environment.
 
 ## Command
 ```shell script
diff --git a/docs/en/setup/configuration/process_discovery/kubernetes.md 
b/docs/en/setup/configuration/process_discovery/kubernetes.md
index b70eda4..eede8c8 100644
--- a/docs/en/setup/configuration/process_discovery/kubernetes.md
+++ b/docs/en/setup/configuration/process_discovery/kubernetes.md
@@ -1,8 +1,8 @@
 # Kubernetes Process Detector
 
 The Kubernetes process detector could detect any process under the Kubernetes 
container.
-If active the kubernetes process detector, the rover must be deployed in the 
kubernetes cluster.
-After find the process, it would be collect the metadata of the process when 
the report to the backend.
+If active the Kubernetes process detector, the rover must be deployed in the 
Kubernetes cluster.
+After finding the process, it would collect the metadata of the process when 
the report to the backend.
 
 ## Configuration
 
@@ -21,32 +21,32 @@ After find the process, it would be collect the metadata of 
the process when the
 
 ## Process Analyze
 
-The process analyze declares which process could be profiled and how to build 
the process entity. 
-The istio and kuberentes resources is active on default. 
+The process analysis declares which process could be profiled and how to build 
the process entity.
+The Istio and Kubernetes resources are active on default.
 
 ### Filter
 
-The filter provide expression(go template) mechanism to match process that can 
build the entity. Multiple expressions work together to determine whether the 
process can create entity.
-Each expression must be return the boolean value. Otherwise, the decision 
throws an error.
+The filter provides an expression(go template) mechanism to match the process 
that can build the entity. Multiple expressions work together to determine 
whether the process can create the entity.
+Each expression must return the boolean value. Otherwise, the decision throws 
an error.
 
-The context is similar to the entity builder. Use context could help rover 
understanding which process could build entity.
+The context is similar to the entity builder. Using context could help the 
rover understand which process could build the entity.
 
 #### Process Context
 
-Is same with the [process context in scanner](./scanner.md#process), but don't 
need to add the `{{` and `}}` in prefix and suffix. 
+Is the same with the [process context in scanner](./scanner.md#process), but 
doesn't need to add the `{{` and `}}` in prefix and suffix.
 
 #### Pod Context
 
-Provide current pod information and judgements. 
+Provide current pod information and judgments.
 
 | Name | Argument |  Example  | Description |
 |------|--------- |-----------|-------------|
-| Name | None | `eq .Pod.Name "test-pod-name"` | The name of current pod. The 
example shows the pod name is equals to `test-pod-name`. |
-| Namespace | None | `eq .Pod.Namespace "test-namesapce"` | The name of 
current pod namespace. The example shows the pod namespace name is equals to 
`test-namespace`. |
-| Node | None | `eq .Pod.Node "test-node"` | The name of node which deployed. 
The example shows the pod node name is equals to `test-node`. |
-| LabelValue | KeyNames | `eq .Pod.LavelValue "a,b" "v"` | The label value of 
the label keys, If provide multiple keys, if any key has value, then don't need 
to get other values. The examples shows the pod has any one `a` or `b` label 
key, and the value matches to `v`. |
+| Name | None | `eq .Pod.Name "test-pod-name"` | The name of the current pod. 
The example shows the pod name is equal to `test-pod-name`. |
+| Namespace | None | `eq .Pod.Namespace "test-namesapce"` | The name of the 
current pod namespace. The example shows the pod namespace name is equal to 
`test-namespace`. |
+| Node | None | `eq .Pod.Node "test-node"` | The name of the node deployed. 
The example shows the pod node name is equal to `test-node`. |
+| LabelValue | KeyNames | `eq .Pod.LavelValue "a,b" "v"` | The label value of 
the label keys, If provide multiple keys, if any key has value, then don't need 
to get other values. The example shows the pod has anyone `a` or `b` label key, 
and the value matches to `v`. |
 | ServiceName | None | `eq .Pod.ServiceName "test-service"` | The service name 
of the pod. The example shows current pods matched service name is 
`test-service`. |
-| HasContainer | Container name | `.Pod.HasContainer "istio-proxy"` | The pod 
is have the appoint container name. |
+| HasContainer | Container name | `.Pod.HasContainer "istio-proxy"` | The pod 
has the appointed container name. |
 | LabelSelector | selector | `.Pod.LabelSelector` | The pod is matches the 
label selector. For more details, please read the [official 
documentation](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors).
 |
 | HasServiceName | None | `.Pod.HasServiceName` | The pod has the matched 
service. |
 
@@ -56,10 +56,10 @@ Provide current container(under the pod) information.
 
 | Name | Argument | Example | Description |
 |------|--------- |-----------|-------------|
-| Name | None | `eq .Container.Name "istio-proxy"`| The name of current 
container under the pod. The examples shows the container name is equals to 
`istio-proxy`. |
+| Name | None | `eq .Container.Name "istio-proxy"`| The name of the current 
container under the pod. The examples show the container name is equal to 
`istio-proxy`. |
 
-### Entity 
-The entity including `layer`, `serviceName`, `instanceName`, `processName` and 
`labels` properties. 
+### Entity
+The entity including `layer`, `serviceName`, `instanceName`, `processName` and 
`labels` properties.
 
 The entity also could use expression to build(`serviceName`, `instanceName` 
and `processName`).
 
@@ -73,15 +73,15 @@ Same with the [process context in the 
scanner](./scanner.md#process).
 
 #### Pod
 
-The information of the current pod.
+The information on the current pod.
 
 | Name | Argument |  Example  | Description |
 |------|--------- |-----------|-------------|
 | Name | None | `{{.Pod.Name}}` | The name of current pod. |
 | Namespace | None | `{{.Pod.Namespace}}` | The name of current pod namespace. 
|
-| Node | None | `{{.Pod.Node}}` | The name of node which deployed. |
+| Node | None | `{{.Pod.Node}}` | The name of the node deployed. |
 | LabelValue | KeyNames | `{{.Pod.LavelValue "a,b"}}` | The label value of the 
label keys, If provide multiple keys, if any key has value, then don't need to 
get other values. |
-| ServiceName | None | `{{.Pod.ServiceName}}` | The service name of the pod. 
If the pod haven't matched service, then return empty string. |
+| ServiceName | None | `{{.Pod.ServiceName}}` | The service name of the pod. 
If the pod hasn't matched service, then return an empty string. |
 
 #### Container
 
@@ -89,5 +89,5 @@ The information of the current container under the pod.
 
 | Name | Argument | Example | Description |
 |------|--------- |-----------|-------------|
-| Name | None | `{{.Container.Name}}`| The name of current container under the 
pod. |
-| ID | None | `{{.Container.ID}}`| The id of current container under the pod. |
\ No newline at end of file
+| Name | None | `{{.Container.Name}}`| The name of the current container under 
the pod. |
+| ID | None | `{{.Container.ID}}`| The id of the current container under the 
pod. |
\ No newline at end of file
diff --git a/docs/en/setup/configuration/process_discovery/overview.md 
b/docs/en/setup/configuration/process_discovery/overview.md
index 07944c4..9abb8ad 100644
--- a/docs/en/setup/configuration/process_discovery/overview.md
+++ b/docs/en/setup/configuration/process_discovery/overview.md
@@ -7,10 +7,10 @@ After the process upload is completed, the other modules 
could perform more oper
 
 | Name | Default | Environment Key | Description |
 |------|---------|-----------------|-------------|
-| process_discovery.heartbeat_period | 20s | 
ROVER_PROCESS_DISCOVERY_HEARTBEAT_PERIOD | The period of report or keep alive 
process to the backend. |
+| process_discovery.heartbeat_period | 20s | 
ROVER_PROCESS_DISCOVERY_HEARTBEAT_PERIOD | The period of report or keep-alive 
process to the backend. |
 
 ## Process Detector
 
-Process Detector is used to detect the process from the VM with the different 
environment:
+Process Detector is used to detect the process from the VM with the different 
environments:
 1. [Linux Process Scanner](./scanner.md)
-2. [Kubernetes Process Detector](./kubernetes.md)
\ No newline at end of file
+2. [Kubernetes Process Detector](./kubernetes.md)
diff --git a/docs/en/setup/configuration/process_discovery/scanner.md 
b/docs/en/setup/configuration/process_discovery/scanner.md
index 0628dbd..133285b 100644
--- a/docs/en/setup/configuration/process_discovery/scanner.md
+++ b/docs/en/setup/configuration/process_discovery/scanner.md
@@ -1,10 +1,10 @@
 # Linux Process Detector
 
-The Linux process scanner could detect any process in the Linux with finders. 
It has two mode:
+The Linux process scanner could detect any process in Linux with finders. It 
has two modes:
 1. **REGEX**: could define a regex to filter which processes declare to 
monitor.
-2. **AGENT_SENSOR**: scan recent active agent which have process status hook.
+2. **AGENT_SENSOR**: scan recent active agents which have process status hook.
 
-After find the process, it would be collect the metadata of the process when 
the report to the backend.
+After finding the process, it would collect the metadata of the process when 
the report to the backend.
 
 ## Configuration
 
@@ -24,13 +24,13 @@ After find the process, it would be collect the metadata of 
the process when the
 
 ## Agent Sensor Mode
 
-Agent Sensor mode scanner could scan process which have installed the 
skywalking agent and report them.
+Agent Sensor mode scanner could scan processes that have installed the 
skywalking agent and report them.
 
 ### Process Status Hook File Protocol
 
-The agent must be implemented the process status hook file protocol, then the 
rover could be collected the information of the process.
+The agent must be implemented the process status hook file protocol, then the 
rover could be collected the information on the process.
 
-This protocol is mainly is a metadata file, which contains the metadata of the 
process. 
+This protocol is mainly a metadata file, which contains the metadata of the 
process.
 It should be saved in: 
`{TMPDIR}/apache_skywalking/process/{pid}/metadata.properties`, and update 
modify time with the interval to keep alive, the content in the `properties` 
format as below:
 
 | Key | Type | Description |
@@ -45,17 +45,17 @@ It should be saved in: 
`{TMPDIR}/apache_skywalking/process/{pid}/metadata.proper
 
 ## Regex Mode
 
-Regex mode scanner could define a regex to filter which process declare to 
monitor by command line. 
-Multiple regex can be defined to mach different types of processes.
+Regex mode scanner could define a regex to filter which process declare to 
monitor by command line.
+Multiple regexes can be defined to match different types of processes.
 
-Note, the duplicate processes entities cannot be reported. If multiple 
entities are generated, only one process will be reported.
+Note, that the duplicate processes entities cannot be reported. If multiple 
entities are generated, only one process will be reported.
 If the multiple finders could match the same process, only the first finder 
could be selected and reported.
 
 ### Entity Builder
 
 The metadata of the process could build by the Go Template to help dynamically 
build them, also, you could just configure it as the string value, and it still 
works.
 
-These fields are supported using template to build:
+These fields are supported using the template to build:
 1. Service Name
 2. Service Instance Name
 3. Process NAme
diff --git a/docs/en/setup/configuration/profiling.md 
b/docs/en/setup/configuration/profiling.md
index 46a27c6..1a3db98 100644
--- a/docs/en/setup/configuration/profiling.md
+++ b/docs/en/setup/configuration/profiling.md
@@ -13,7 +13,7 @@ and send the snapshot to the backend server.
 
 ## Profiling Type
 
-All the profiling tasks is using the [Linux Official 
Function](https://man7.org/linux/man-pages/man2/perf_event_open.2.html) to open 
perf event,
+All the profiling tasks are using the [Linux Official 
Function](https://man7.org/linux/man-pages/man2/perf_event_open.2.html) to open 
perf event,
 and attach the eBPF Program to dump stacks.
 
 ### On CPU
@@ -24,4 +24,4 @@ On CPU Profiling task is using `PERF_COUNT_SW_CPU_CLOCK` to 
profiling the proces
 
 | Name | Default | Environment Key | Description |
 |------|---------|-----------------|-------------|
-| profiling.task.on_cpu.dump_period | 9ms | 
ROVER_PROFILING_TASK_ON_CPU_DUMP_PERIOD | The profiling stack dump period. |
\ No newline at end of file
+| profiling.task.on_cpu.dump_period | 9ms | 
ROVER_PROFILING_TASK_ON_CPU_DUMP_PERIOD | The profiling stack dump period. |
diff --git a/docs/en/setup/examples/cases/agent-sensor/readme.md 
b/docs/en/setup/examples/cases/agent-sensor/readme.md
index 63f0a4c..1630207 100644
--- a/docs/en/setup/examples/cases/agent-sensor/readme.md
+++ b/docs/en/setup/examples/cases/agent-sensor/readme.md
@@ -1,6 +1,6 @@
 # Detect Process by Agent Sensor
 
-This documentation helps you to set up service which could let rover detected 
automatically.
+This documentation helps you to set up a service that could let rover detected 
automatically.
 
 ## Configure Service
 
@@ -16,13 +16,13 @@ defer r.Close()
 tracer, err := go2sky.NewTracer("example", go2sky.WithReporter(r))
 ```
 
-The `reporter.WithProcessStatusHook(true)` declare to enable the Process 
Status Hook feature.
+The `reporter.WithProcessStatusHook(true)` declares to enable the Process 
Status Hook feature.
 
 ## Starting Rover
 
 ### Enable Linux Process Scanner
 
-After your service been startup, then configure the Linux process scanner with 
"AGENT_SENSOR" mode.
+After your service has been startup, then configure the Linux process scanner 
with "AGENT_SENSOR" mode.
 
 ### Full Configuration
 
@@ -47,4 +47,4 @@ process_discovery:
     mode: AGENT_SENSOR
     agent:
       processStatusRefreshPeriod: 1m
-```
\ No newline at end of file
+```
diff --git a/docs/en/setup/examples/cases/kubernetes-process/readme.md 
b/docs/en/setup/examples/cases/kubernetes-process/readme.md
index 2cf276f..17fd0d3 100644
--- a/docs/en/setup/examples/cases/kubernetes-process/readme.md
+++ b/docs/en/setup/examples/cases/kubernetes-process/readme.md
@@ -1,20 +1,20 @@
 # Detect Process by Kubernetes
 
-This documentation helps you to set up the rover in the kubernetes environment 
and detect kubernetes process automaticlly.
+This documentation helps you to set up the rover in the Kubernetes environment 
and detect the kubernetes process automatically.
 
 ## Startup Kubernetes
 
-Make sure that you already have a Kubernetes cluster. 
+Make sure that you already have a Kubernetes cluster.
 
 If you don't have a running cluster, you can also leverage [KinD (Kubernetes 
in Docker)](https://kind.sigs.k8s.io)
 or [minikube](https://minikube.sigs.k8s.io) to create a cluster.
 
 ## Deploy Rover
 
-Please following the [rover-darmonset.yml](./rover-darmonset.yml) to deploy 
the rover in your kubernetes cluster.
-Update the comment in the file, which including two config:
-1. **Rover docker image**: You could use `make docker` to build an image and 
upload to your private registry.
+Please follow the [rover-darmonset.yml](./rover-darmonset.yml) to deploy the 
rover in your Kubernetes cluster.
+Update the comment in the file, which includes two configs:
+1. **Rover docker image**: You could use `make docker` to build an image and 
upload it to your private registry.
 2. **OAP address**: Update the OAP address.
 
-Then, you could use `kuberctl apply -f rover-darmonset.yml` to deploy the 
skywalking-rover into your cluster. 
-It would deploy in each node as a DaemonSet. 
\ No newline at end of file
+Then, you could use `kuberctl apply -f rover-darmonset.yml` to deploy the 
skywalking-rover into your cluster.
+It would deploy in each node as a DaemonSet. 
diff --git a/docs/en/setup/examples/cases/profiling-process/readme.md 
b/docs/en/setup/examples/cases/profiling-process/readme.md
index e48a9c8..47ec0cc 100644
--- a/docs/en/setup/examples/cases/profiling-process/readme.md
+++ b/docs/en/setup/examples/cases/profiling-process/readme.md
@@ -1,10 +1,10 @@
-# Profiling a Golang/C service on Linux
+# Profiling a Golang/C/C++/Rust service on Linux
 
 This documentation helps you set up the configuration to find which processes 
want to be monitored and profiled.
 
 ## Startup service
 
-Startup your service in the Linux, and make sure your service already have the 
symbol data inside the binary file.
+Startup your service in Linux, and make sure your service already has the 
symbol data inside the binary file.
 So we could locate the stack symbol, It could be checked following these ways:
 1. **objdump**: Using `objdump --syms path/to/service`.
 2. **readelf**: Using `readelf --syms path/to/service`.
@@ -13,8 +13,8 @@ So we could locate the stack symbol, It could be checked 
following these ways:
 
 ### Enable Linux Process Scanner
 
-After your service been startup, then configure the Linux process scanner to 
let Rover known how to find service.
-Please make sure the Linux Process Detector have been active.
+After your service has been started, then configure the Linux process scanner 
to let Rover know how to find the service.
+Please make sure the Linux Process Detector has been active.
 
 Then configure the finder to locate/identity service. It contains these data 
configure:
 1. Regex to locate the service by command line.
@@ -29,7 +29,7 @@ $ ps -ef|grep sqrt
 root      2072    1790  0 14:59 pts/0    00:00:00 ./sqrt name=a
 ```
 
-Follow the command example in above, you could see the last column showing the 
process command line is `./sqrt name=a`.
+Following the command example above, you could see the last column showing the 
process command line is `./sqrt name=a`.
 We use the regex to filter the process, In this case, we could use `sqrt` as 
the service identity.
 
 #### Update Process Entity
diff --git a/docs/en/setup/overview.md b/docs/en/setup/overview.md
index f94579d..2e1bea7 100644
--- a/docs/en/setup/overview.md
+++ b/docs/en/setup/overview.md
@@ -25,7 +25,7 @@ You can quickly build your Rover according to the following 
examples:
 
 ### Use Cases
 
-1. [Profiling a Golang/C service on 
Linux](examples/cases/profiling-process/readme.md)
+1. [Profiling a Golang/C/C++/Rust service on 
Linux](examples/cases/profiling-process/readme.md)
 1. [Detect Process by Agent Sensor](examples/cases/agent-sensor/readme.md)
 1. [Detect Process in Kubernetes 
Environemnt](examples/cases/kubernetes-process/readme.md)
 
diff --git a/docs/menu.yml b/docs/menu.yml
index 640a6f4..307ae21 100644
--- a/docs/menu.yml
+++ b/docs/menu.yml
@@ -55,7 +55,7 @@ catalog:
                   path: /en/setup/examples/deploy/linux/readme
             - name: Use Cases
               catalog:
-                - name: Profiling a Golang/C service on Linux
+                - name: Profiling a Golang/C/C++/Rust service on Linux
                   path: /en/setup/examples/cases/profiling-process/readme
                 - name: Detect Process by Agent Sensor
                   path: /en/setup/examples/cases/agent-sensor/readme

Reply via email to