Skip to content

Commit 72bc256

Browse files
authored
Fix dead link checker (#161)
1 parent cc42b50 commit 72bc256

File tree

5 files changed

+33
-30
lines changed

5 files changed

+33
-30
lines changed

.dlc.json

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
"fallbackRetryDelay": "1000s",
2020
"aliveStatusCodes": [
2121
200,
22+
301,
23+
302,
2224
401
2325
]
2426
}

.github/workflows/dead-link-checker.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
timeout-minutes: 30
3030
steps:
3131
- uses: actions/checkout@v2
32-
- run: sudo npm install -g markdown-link-check@3.8.7
32+
- run: sudo npm install -g markdown-link-check@3.10.0
3333
- run: |
3434
for file in $(find . -name "*.md"); do
3535
markdown-link-check -c .dlc.json -q "$file"

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Find the [demo](https://skywalking.apache.org/#demo) and [screenshots](https://s
3131
# Contact Us
3232
* Mail list: **[email protected]**. Mail to `[email protected]`, follow the reply to subscribe the mail list.
3333
* Send `Request to join SkyWalking slack` mail to the mail list(`[email protected]`), we will invite you in.
34-
* Twitter, [ASFSkyWalking](https://twitter.com/ASFSkyWalking)
34+
* Twitter, [ASFSkyWalking](https://twitter.com/AsfSkyWalking)
3535
* QQ Group: 901167865(Recommended), 392443393
3636
* [bilibili B站 视频](https://space.bilibili.com/390683219)
3737

docs/en/contribution/release-java-agent.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ This step is only for testing purpose. If your env is correctly set, you don't n
5050

5151
- Set version number as x.y.z, and tag as **v**x.y.z (The version tag must start with **v**. You will find out why this is necessary in the next step.)
5252

53-
_You could do a GPG signature before preparing for the release. If you need to input the password to sign, and the maven doesn't provide you with the opportunity to do so, this may lead to failure of the release. To resolve this, you may run `gpg --sign xxx` in any file. This will allow it to remember the password for long enough to prepare for the release._
53+
_You could do a GPG signature before preparing for the release. If you need to input the password to sign, and the maven doesn't provide you with the opportunity to do so, this may lead to failure of the release. To resolve this, you may run `gpg --sign xxx` in any file. This will allow it to remember the password for long enough to prepare for the release._
5454

55-
## Stage the release
55+
## Stage the release
5656
```
5757
./mvnw release:perform -DskipTests -Pall
5858
```
@@ -70,7 +70,7 @@ This script takes care of the following things:
7070
1. Use `v` + `RELEASE_VERSION` as tag to clone the codes.
7171
2. Complete `git submodule init/update`.
7272
3. Exclude all unnecessary files in the target source tar, such as `.git`, `.github`, and `.gitmodules`. See the script for more details.
73-
4. Execute `gpg` and `shasum 512` for source code tar.
73+
4. Execute `gpg` and `shasum 512` for source code tar.
7474
5. Use maven package to build the agent tar.
7575
6. Execute `gpg` and `shasum 512` for binary tar.
7676

@@ -251,7 +251,7 @@ Downloads:
251251
http://skywalking.apache.org/downloads/
252252
253253
Twitter:
254-
https://twitter.com/ASFSkyWalking
254+
https://twitter.com/AsfSkyWalking
255255
256256
SkyWalking Resources:
257257
- GitHub: https://github.com/apache/skywalking-java

docs/en/setup/service-agent/java-agent/Java-Plugin-Development-Guide.md

+25-24
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Plugin Development Guide
2-
This document describes how to understand, develop and contribute a plugin.
2+
This document describes how to understand, develop and contribute a plugin.
33

44
There are 2 kinds of plugin:
55
1. [Tracing plugin](#tracing-plugin). Follow the distributed tracing concept to collect spans with tags and logs.
@@ -19,7 +19,7 @@ SkyWalking has supported OpenTracing and OpenTracing-Java API since 2017. Our co
1919
There are three types of span:
2020

2121
1.1 EntrySpan
22-
The EntrySpan represents a service provider. It is also an endpoint on the server end. As an APM system, our target is the
22+
The EntrySpan represents a service provider. It is also an endpoint on the server end. As an APM system, our target is the
2323
application servers. Therefore, almost all the services and MQ-consumers are EntrySpan.
2424

2525
1.2 LocalSpan
@@ -28,10 +28,10 @@ nor a service (e.g. HTTP service) provider/consumer.
2828

2929
1.3 ExitSpan
3030
The ExitSpan represents a client of service or MQ-producer. It is named the `LeafSpan` in the early versions of SkyWalking.
31-
For example, accessing DB through JDBC and reading Redis/Memcached are classified as an ExitSpan.
31+
For example, accessing DB through JDBC and reading Redis/Memcached are classified as an ExitSpan.
3232

3333
### ContextCarrier
34-
In order to implement distributed tracing, cross-process tracing has to be bound, and the context must propagate
34+
In order to implement distributed tracing, cross-process tracing has to be bound, and the context must propagate
3535
across the process. This is where the ContextCarrier comes in.
3636

3737
Here are the steps on how to use the **ContextCarrier** in an `A->B` distributed call.
@@ -67,7 +67,7 @@ See the following examples, where we use the Apache HTTPComponent client plugin
6767
```
6868

6969
### ContextSnapshot
70-
Besides cross-process tracing, cross-thread tracing has to be supported as well. For instance, both async process (in-memory MQ)
70+
Besides cross-process tracing, cross-thread tracing has to be supported as well. For instance, both async process (in-memory MQ)
7171
and batch process are common in Java. Cross-process and cross-thread tracing are very similar in that they both require propagating
7272
context, except that cross-thread tracing does not require serialization.
7373

@@ -96,7 +96,7 @@ Create LocalSpan according to the operation name (e.g. full method signature).
9696
```java
9797
public static AbstractSpan createExitSpan(String endpointName, ContextCarrier carrier, String remotePeer)
9898
```
99-
Create ExitSpan according to the operation name (e.g. service name, uri) and the new **ContextCarrier** and peer address
99+
Create ExitSpan according to the operation name (e.g. service name, uri) and the new **ContextCarrier** and peer address
100100
(e.g. ip+port, hostname+port).
101101

102102
### AbstractSpan
@@ -165,7 +165,7 @@ The value should be an integer. The response code of OAL entities corresponds to
165165
#### Tag keys `db.statement` and `db.type`.
166166
The value of `db.statement` should be a string that represents the database statement, such as SQL, or `[No statement]/`+span#operationName if the value is empty.
167167
When the exit span contains this tag, OAP samples the slow statements based on `agent-analyzer/default/maxSlowSQLLength`.
168-
The threshold of slow statement is defined in accordance with `agent-analyzer/default/slowDBAccessThreshold`.
168+
The threshold of slow statement is defined in accordance with `agent-analyzer/default/slowDBAccessThreshold`.
169169
Check **Slow Database Statement** document of OAP server for details.
170170

171171
#### Extension logic endpoint: Tag key `x-le`
@@ -184,7 +184,7 @@ The value of `x-le` should be in JSON format. There are two options:
184184
{
185185
"logic-span": true
186186
}
187-
```
187+
```
188188

189189
### Advanced APIs
190190
#### Async Span APIs
@@ -271,8 +271,8 @@ Example:
271271
```java
272272
@Override
273273
protected ClassMatch enhanceClassName() {
274-
return byName("org.apache.catalina.core.StandardEngineValve");
275-
}
274+
return byName("org.apache.catalina.core.StandardEngineValve");
275+
}
276276

277277
```
278278

@@ -318,7 +318,7 @@ tomcat-7.x/8.x=TomcatInstrumentation
318318
"foo.Bar"
319319
};
320320
}
321-
321+
322322
// The plugin is activated only when the foo.Bar#hello method exists.
323323
@Override
324324
protected List<WitnessMethod> witnessMethods() {
@@ -330,10 +330,10 @@ tomcat-7.x/8.x=TomcatInstrumentation
330330
```
331331
For more examples, see [WitnessTest.java](../../../../../apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/plugin/witness/WitnessTest.java)
332332

333-
333+
334334

335335
### Implement an interceptor
336-
As an interceptor for an instance method, it has to implement
336+
As an interceptor for an instance method, it has to implement
337337
`org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor`
338338
```java
339339
/**
@@ -464,18 +464,18 @@ Every plugin could declare one or more classes to represent the config by using
464464
could initialize this class' static field through System environments, System properties, and `agent.config` static file.
465465

466466
The `#root()` method in the `@PluginConfig` annotation requires declaring the root class for the initialization process.
467-
Typically, SkyWalking prefers to use nested inner static classes for the hierarchy of the configuration.
467+
Typically, SkyWalking prefers to use nested inner static classes for the hierarchy of the configuration.
468468
We recommend using `Plugin`/`plugin-name`/`config-key` as the nested classes structure of the config class.
469469

470-
**NOTE**: because of the Java ClassLoader mechanism, the `@PluginConfig` annotation should be added on the real class used in the interceptor codes.
470+
**NOTE**: because of the Java ClassLoader mechanism, the `@PluginConfig` annotation should be added on the real class used in the interceptor codes.
471471

472-
In the following example, `@PluginConfig(root = SpringMVCPluginConfig.class)` indicates that initialization should
472+
In the following example, `@PluginConfig(root = SpringMVCPluginConfig.class)` indicates that initialization should
473473
start with using `SpringMVCPluginConfig` as the root. Then, the config key of the attribute `USE_QUALIFIED_NAME_AS_ENDPOINT_NAME`
474474
should be `plugin.springmvc.use_qualified_name_as_endpoint_name`.
475475
```java
476476
public class SpringMVCPluginConfig {
477477
public static class Plugin {
478-
// NOTE, if move this annotation on the `Plugin` or `SpringMVCPluginConfig` class, it no longer has any effect.
478+
// NOTE, if move this annotation on the `Plugin` or `SpringMVCPluginConfig` class, it no longer has any effect.
479479
@PluginConfig(root = SpringMVCPluginConfig.class)
480480
public static class SpringMVC {
481481
/**
@@ -509,12 +509,12 @@ public class SpringMVCPluginConfig {
509509
Java agent plugin could use meter APIs to collect metrics for backend analysis.
510510

511511
* `Counter` API represents a single monotonically increasing counter which automatically collects data and reports to the backend.
512-
```java
513-
import org.apache.skywalking.apm.agent.core.meter.MeterFactory;
512+
```java
513+
import org.apache.skywalking.apm.agent.core.meter.MeterFactory;
514514

515-
Counter counter = MeterFactory.counter(meterName).tag("tagKey", "tagValue").mode(Counter.Mode.INCREMENT).build();
516-
counter.increment(1d);
517-
```
515+
Counter counter = MeterFactory.counter(meterName).tag("tagKey", "tagValue").mode(Counter.Mode.INCREMENT).build();
516+
counter.increment(1d);
517+
```
518518
1. `MeterFactory.counter` creates a new counter builder with the meter name.
519519
1. `Counter.Builder.tag(String key, String value)` marks a tag key/value pair.
520520
1. `Counter.Builder.mode(Counter.Mode mode)` changes the counter mode. `RATE` mode means the reporting rate to the backend.
@@ -547,6 +547,7 @@ histogram.addValue(3);
547547
1. `Histogram.addValue(double value)` adds value into the histogram, and automatically analyzes what bucket count needs to be incremented. Rule: count into [step1, step2).
548548

549549
# Plugin Test Tool
550+
550551
The [Apache SkyWalking Agent Test Tool Suite](https://github.com/apache/skywalking-agent-test-tool) is an incredibly useful test tool suite that is available in a wide variety of agent languages. It includes the mock collector and validator. The mock collector is a SkyWalking receiver, like the OAP server.
551552

552553
You could learn how to use this tool to test the plugin in [this doc](Plugin-test.md). This is a must if you want to contribute plugins to the SkyWalking official repo.
@@ -560,6 +561,6 @@ Please follow these steps:
560561
1. Follow this guide to develop. Make sure comments and test cases are provided.
561562
1. Develop and test.
562563
1. Provide the automatic test cases. Learn `how to write the plugin test case` from this [doc](Plugin-test.md)
563-
1. Send a pull request and ask for review.
564+
1. Send a pull request and ask for review.
564565
1. The plugin committers will approve your plugins, plugin CI-with-IT, e2e, and the plugin tests will be passed.
565-
1. The plugin is accepted by SkyWalking.
566+
1. The plugin is accepted by SkyWalking.

0 commit comments

Comments
 (0)