提交 daabc1f5 编写于 作者: V Videl Smith 提交者: wu-sheng

Documentation proofreading (#3999)

* Fixes: README.md

* Adds: new FAQ

See issues #3924, #3935, #3975

* Fixes: setup documentation

* Update README.md
上级 fd24a29b
# Welcome
**Here are SkyWalking 6 official documents. Welcome to join us**
**Here are SkyWalking 6 official documents. You're welcome to join us.**
From here you can learn all about **SkyWalking**’s architecture, how to deploy and use SkyWalking, also develop based on SkyWalking.
From here you can learn all about **SkyWalking**’s architecture, how to deploy and use SkyWalking, and develop based on SkyWalking contributions guidelines.
- [Concepts and Designs](en/concepts-and-designs/README.md). Concepts and designs explain the most important core ideas about
SkyWalking. You can learn from here if you want to understand what is going on under our cool features and visualization.
- [Setup](en/setup/README.md). Setup contains guides for installing SkyWalking in different scenarios. As a platform, it provides
several ways to provide observability, including monitoring and alarm of course.
- [Contributing Guides](en/guides/README.md). Guides are for PMC member, committer or new contributor. At here, you can know how to contribute from beginning.
- [Protocols](en/protocols/README.md). Protocols show the communication ways between agents/probes and backend. Anyone, interested
in uplink telemetry data, definitely should read this.
- [FAQs](en/FAQ/README.md). Include a manifest, including already known setup problems, secondary developments experiments. When
you are facing a problem, check here first.
- [Concepts and Designs](en/concepts-and-designs/README.md). You'll find the the most important core ideas about SkyWalking. You can learn from here if you want to understand what is going on under our cool features and visualization.
- [Setup](en/setup/README.md). Guides for installing SkyWalking in different scenarios. As a platform, it provides several ways to provide observability, including monitoring and alarm of course.
- [Contributing Guides](en/guides/README.md). Guides are for PMC member, committer or new contributor. Here, you can find how to start contributing.
- [Protocols](en/protocols/README.md). Protocols show the communication ways between agents/probes and backend. Anyone interested in uplink telemetry data should definitely read this.
- [FAQs](en/FAQ/README.md). A manifest of already known setup problems, secondary developments experiments. When you are facing a problem, check here first.
In addition, you might find these links interesting:
- The latest and old releases are all available at [Apache SkyWalking release page](http://skywalking.apache.org/downloads/). The change logs are [here](../CHANGES.md).
- Up-to-date overview of SkyWalking module [call flow](https://sourcespy.com/github/skywalking/xx-omcalls-.html) and [hierarchy](https://sourcespy.com/github/skywalking/xx-omhierarchy-.html) including ability to analize each module individually.
- You can find the speaking schedules at Conf, online videos and articles about SkyWalking in [Community resource catalog](https://github.com/OpenSkywalking/Community).
Also, if you have some related to us, welcome to submit a pull request to add.
- We’re always looking for help improving our documentation and codes, so please don’t hesitate to [file an issue](https://github.com/apache/skywalking/issues/new)
if you see some problem.
We're always looking for help improving our documentation and codes, so please don’t hesitate to [file an issue](https://github.com/apache/skywalking/issues/new)
if you see any problem.
Or better yet, submit your own contributions through pull request to help make them better.
___
# Document Catalog
If you have been familiar with SkyWalking, you could use this catalog to find the document chapter directly.
If you are already familiar with SkyWalking, you could use this catalog to find the document chapter directly.
* [Concepts and Designs](en/concepts-and-designs/README.md)
* What is SkyWalking?
* [Overview and Core concepts](en/concepts-and-designs/overview.md). Provides a high-level description and introduction, including the problems the project solves.
* [Project Goals](en/concepts-and-designs/project-goals.md). Provides the goals, which SkyWalking is trying to focus and provide features about them.
* [Project Goals](en/concepts-and-designs/project-goals.md). Provides the goals which SkyWalking is trying to focus on and provide features about.
* Probe
* [Introduction](en/concepts-and-designs/probe-introduction.md). Lead readers to understand what the probe is, how many different probes existed and why need them.
* [Service auto instrument agent](en/concepts-and-designs/service-agent.md). Introduce what the auto instrument agents do and which languages does SkyWalking already support.
* [Manual instrument SDK](en/concepts-and-designs/manual-sdk.md). Introduce the role of the manual instrument SDKs in SkyWalking ecosystem.
* [Service Mesh probe](en/concepts-and-designs/service-mesh-probe.md). Introduce why and how SkyWalking receive telemetry data from Service mesh and proxy probe.
* [Introduction](en/concepts-and-designs/probe-introduction.md). Lead readers to understand what the probe is, how many different probes exists and why we need them.
* [Service auto instrument agent](en/concepts-and-designs/service-agent.md). Introduces what the auto instrument agents do and which languages does SkyWalking already support.
* [Manual instrument SDK](en/concepts-and-designs/manual-sdk.md). Introduces the role of the manual instrument SDKs in SkyWalking ecosystem.
* [Service Mesh probe](en/concepts-and-designs/service-mesh-probe.md). Introduces why and how SkyWalking receive telemetry data from Service mesh and proxy probe.
* Backend
* [Overview](en/concepts-and-designs/backend-overview.md). Provides a high level introduction about the OAP backend.
* [Observability Analysis Language](en/concepts-and-designs/oal.md). Introduces the core languages, which is designed for aggregation behaviour definition.
* [Observability Analysis Language](en/concepts-and-designs/oal.md). Introduces the core languages, which are designed for aggregation behaviour definition.
* [Query in OAP](en/protocols/README.md#query-protocol). A set of query protocol provided, based on the Observability Analysis Language metrics definition.
* UI
* [Overview](en/concepts-and-designs/ui-overview.md). A simple brief about SkyWalking UI.
......@@ -48,7 +50,7 @@ If you have been familiar with SkyWalking, you could use this catalog to find th
* [Setup](en/setup/README.md).
* Backend, UI, Java agent, and CLI are Apache official release, you could find them at [Apache SkyWalking DOWNLOAD page](http://skywalking.apache.org/downloads/).
* Language agents in Service
* [Java agent](en/setup/service-agent/java-agent/README.md). Introduce how to install java agent to your service, without change any codes.
* [Java agent](en/setup/service-agent/java-agent/README.md). Introduces how to install the java agent to your service, without changing any code.
* [Supported middleware, framework and library](en/setup/service-agent/java-agent/Supported-list.md).
* [Agent Configuration Properties](en/setup/service-agent/java-agent/README.md#table-of-agent-configuration-properties).
* [Optional plugins](en/setup/service-agent/java-agent/README.md#optional-plugins).
......@@ -58,43 +60,45 @@ If you have been familiar with SkyWalking, you could use this catalog to find th
* [Agent plugin tests and performance tests](en/setup/service-agent/java-agent/README.md#test).
* [Other language agents](en/setup/README.md#language-agents-in-service) includes .NetCore, PHP, NodeJS, Go, which are maintained by volunteers.
* Service Mesh
* [SkyWalking on Istio](en/setup/istio/README.md). Introduce how to use Istio Mixer bypass Adapter to work with SkyWalking.
* Use [ALS(access log service)](https://www.envoyproxy.io/docs/envoy/latest/api-v2/service/accesslog/v2/als.proto) to observe service mesh, without Mixer. Follow [document](en/setup/envoy/als_setting.md) to open it.
* [SkyWalking on Istio](en/setup/istio/README.md). Introduces how to use Istio Mixer bypass Adapter to work with SkyWalking.
* Use [ALS (access log service)](https://www.envoyproxy.io/docs/envoy/latest/api-v2/service/accesslog/v2/als.proto) to observe service mesh, without Mixer. Follow [document](en/setup/envoy/als_setting.md) to open it.
* [Backend, UI and CLI setup document](en/setup/backend/backend-ui-setup.md).
* [Backend setup document](en/setup/backend/backend-setup.md).
* [Overriding settings](en/setup/backend/backend-setting-override.md) in application.yml is supported
* [IP and port setting](en/setup/backend/backend-ip-port.md). Introduce how IP and port set and be used.
* [Backend init mode startup](en/setup/backend/backend-init-mode.md). How to init the environment and exit graciously. Read this before you try to initial a new cluster.
* [Cluster management](en/setup/backend/backend-cluster.md). Guide you to set backend server in cluster mode.
* [Deploy in kubernetes](en/setup/backend/backend-k8s.md). Guide you to build and use SkyWalking image, and deploy in k8s.
* [Choose storage](en/setup/backend/backend-storage.md). As we know, in default quick start, backend is running with H2 DB. But clearly, it doesn't fit the product env. In here, you could find what other choices do you have. Choose the one you like, we are also welcome anyone to contribute new storage implementor,
* [Overriding settings](en/setup/backend/backend-setting-override.md) in application.yml is supported.
* [IP and port setting](en/setup/backend/backend-ip-port.md). Introduces how IP and port set can be used.
* [Backend init mode startup](en/setup/backend/backend-init-mode.md). How to init the environment and exit graciously. Read this before you try to start a new cluster.
* [Cluster management](en/setup/backend/backend-cluster.md). Guide about backend server cluster mode.
* [Deploy in kubernetes](en/setup/backend/backend-k8s.md). Guides you to build and use SkyWalking image, and deploy in k8s.
* [Choose storage](en/setup/backend/backend-storage.md). As we know, in default quick start, backend is running with H2 DB. But clearly, it doesn't fit the product env. In here, you could find what other choices do you have. Choose the one you like, we also welcome anyone to contribute new storage implementors.
* [Set receivers](en/setup/backend/backend-receivers.md). You could choose receivers by your requirements, most receivers are harmless, at least our default receivers are. You would set and active all receivers provided.
* Do [trace sampling](en/setup/backend/trace-sampling.md) at backend. This sample keep the metrics accurate, only don't save some of traces in storage based on rate.
* Follow [slow DB statement threshold](en/setup/backend/slow-db-statement.md) config document to understand that, how to detect the Slow database statements(including SQL statements) in your system.
* Do [trace sampling](en/setup/backend/trace-sampling.md) at backend. Trace sampling allows you to keep your metrics accurate, whilst only keeping some traces in storage based on rate.
* Follow [slow DB statement threshold](en/setup/backend/slow-db-statement.md) config document to understand how to detect slow database statements (including SQL statements) in your system.
* Official [OAL scripts](en/guides/backend-oal-scripts.md). As you known from our [OAL introduction](en/concepts-and-designs/oal.md), most of backend analysis capabilities based on the scripts. Here is the description of official scripts, which helps you to understand which metrics data are in process, also could be used in alarm.
* [Alarm](en/setup/backend/backend-alarm.md). Alarm provides a time-series based check mechanism. You could set alarm rules targeting the analysis oal metrics objects.
* [Advanced deployment options](en/setup/backend/advanced-deployment.md). If you want to deploy backend in very large scale and support high payload, you may need this.
* [Metrics exporter](en/setup/backend/metrics-exporter.md). Use metrics data exporter to forward metrics data to 3rd party system.
* [Time To Live (TTL)](en/setup/backend/ttl.md). Metrics and trace are time series data, they would be saved forever, you could set the expired time for each dimension.
* [Alarm](en/setup/backend/backend-alarm.md). Alarm provides a time-series based check mechanism. You could set alarm rules targeting the analysis oal metrics objects.
* [Advanced deployment options](en/setup/backend/advanced-deployment.md). If you want to deploy backend in very large scale and support high loads, you may need this.
* [Metrics exporter](en/setup/backend/metrics-exporter.md). Use metrics data exporter to forward metrics data to 3rd party systems.
* [Time To Live (TTL)](en/setup/backend/ttl.md). Metrics and traces are time series data, they would be saved forever, you could set the expired time for each dimension.
* [Dynamic Configuration](en/setup/backend/dynamic-config.md). Make configuration of OAP changed dynamic, from remote service or 3rd party configuration management system.
* [Uninstrumented Gateways](en/setup/backend/uninstrumented-gateways.md). Configure gateways/proxies that are not supported by SkyWalking agent plugins, to reflect the delegation in topology graph.
* [UI setup document](en/setup/backend/ui-setup.md).
* [CLI setup document](https://github.com/apache/skywalking-cli).
* [Contributing Guides](en/guides/README.md). Guides are for PMC member, committer or new contributor. At here, you can know how to contribute from beginning.
* [Contributing Guides](en/guides/README.md). Guides are for PMC member, committer or new contributor. At here, you can find how to start contributing.
* [Contact us](en/guides/README.md#contact-us). Guide users about how to contact the official committer team or communicate with the project community.
* [Process to become official Apache SkyWalking Committer](en/guides/asf/committer.md). How to become an official committer or PMC member.
* [Compiling Guide](en/guides/How-to-build.md). Follow this to compile the whole project from the source code.
* [Agent plugin development guide](en/guides/Java-Plugin-Development-Guide.md). Guide the developer to write their plugin, and follow [plugin test requirement](en/guides/Plugin-test.md) when you push the plugin to the upstream.
* [Protocols](en/protocols/README.md). Protocols show the communication ways between agents/probes and backend. Anyone, interested in uplink telemetry data, definitely should read this.
* [FAQs](en/FAQ/README.md). Include a manifest, including already known setup problems, secondary developments experiments. When you are facing a problem, check here first.
* [Agent plugin development guide](en/guides/Java-Plugin-Development-Guide.md). Guide developers to write their plugin, and follow [plugin test requirements](en/guides/Plugin-test.md) when you push the plugin to the upstream.
* [Protocols](en/protocols/README.md). Protocols show the communication ways between agents/probes and backend. Anyone interested in uplink telemetry data should definitely read this.
* [FAQs](en/FAQ/README.md). A manifest of already known setup problems, secondary developments experiments. When you are facing a problem, check here first.
___
### Users from 5.x
SkyWalking 5.x is still supported by the community. For the user plans to upgrade from 5.x to 6.x, you should know there are some definitions of concepts changed.
The most important two changed concepts are
1. Application(in 5.x) is changed to **Service**(in 6.x), also Application Instance is changed to **Service Instance**.
1. Service(in 5.x) is changed to **Endpoint**(in 6.x).
SkyWalking 5.x is still supported by the community. For the users planning to upgrade from 5.x to 6.x, you should know some definitions of concepts changed.
The most important two changed concepts are:
1. Application (in 5.x) is changed to **Service** (in 6.x), also Application Instance is changed to **Service Instance**.
2. Service (in 5.x) is changed to **Endpoint** (in 6.x).
......@@ -17,3 +17,4 @@ These are known and common FAQs. We welcome you to contribute yours.
* [ElasticSearch server performance FAQ, including ERROR CODE:429](ES-Server-FAQ.md)
* [IllegalStateException when install Java agent on WebSphere 7](install_agent_on_websphere.md)
* ["FORBIDDEN/12/index read-only / allow delete (api)" appears in the log](https://discuss.elastic.co/t/forbidden-12-index-read-only-allow-delete-api/110282)
* [No data shown and backend replies with "Variable 'serviceId' has coerced Null value for NonNull type 'ID!'"](time-and-timezone.md)
# Why can't I see any data in the UI?
There are three main reasons no data can be shown by the UI:
1. No traces have been sent to the collector.
2. Traces have been sent, but the timezone of your containers is incorrect.
3. Traces are in the collector, but you're not watching the correct timeframe in the UI.
## No traces
Be sure to check the logs of your agents to see if they are connected to the collector and traces are being sent.
## Incorrect timezone in containers
Be sure to check the time in your containers.
## The UI isn't showing any data
Be sure to configure the timeframe shown by the UI.
# Setup
Setup based on which kind of probes are you going to use. If you don't understand, please read [Concepts and Designs](../concepts-and-designs/README.md) first.
The document explains how to install Skywalking based on the kind of probes you are going to use.
If you don't understand, please read [Concepts and Designs](../concepts-and-designs/README.md) first.
**Important: Please choose the timezone on UI, make it matches the timezone of your OAP backend servers.**
**Important: Don't forget to configure the timezone on your UI, and you also need to be sure your OAP backend servers are also using the same timezone.**
If you have any issues, please check that your issue is not already described in the [FAQ](../FAQ/README.md).
## Download official releases
- Backend, UI and Java agent are Apache official release, you could find them at [Apache SkyWalking DOWNLOAD page](http://skywalking.apache.org/downloads/).
- Backend, UI and Java agent are Apache official release, you can find them on the [Apache SkyWalking download page](http://skywalking.apache.org/downloads/).
## Language agents in Service
- [Java agent](service-agent/java-agent/README.md). Introduce how to install java agent to your service, without change any codes.
- [Java agent](service-agent/java-agent/README.md). Introduces how to install java agent to your service, without any impact in your code.
The following agents and SDKs are compatible with the SkyWalking's samples formats and protocols, but are maintained by 3rd-parties.
You can go to their project repositories for additional info about guides and releases.
The following agents and SDKs are compatible with the SkyWalking's formats and protocols, but maintained by the 3rd-party.
You could go to their project repositories to find out the releases and how to use them.
- [SkyAPM .NET Core agent](https://github.com/SkyAPM/SkyAPM-dotnet). See .NET Core agent project document for more details.
- [SkyAPM Node.js agent](https://github.com/SkyAPM/SkyAPM-nodejs). See Node.js server side agent project document for more details.
- [SkyAPM PHP SDK](https://github.com/SkyAPM/SkyAPM-php-sdk). See PHP agent project document for more details.
- [SkyAPM GO2Sky](https://github.com/SkyAPM/go2sky). See GO2Sky project document for more details.
## Service Mesh
- Istio
- [SkyWalking on Istio](istio/README.md). Introduce how to use Istio Mixer bypass Adapter to work with SkyWalking.
- [SkyWalking on Istio](istio/README.md). Introduces how to use Istio Mixer bypass adapter to work with SkyWalking.
- Envoy
- Use [ALS(access log service)](https://www.envoyproxy.io/docs/envoy/latest/api-v2/service/accesslog/v2/als.proto) to observe service mesh, without Mixer. Follow [document](envoy/als_setting.md) to open it.
- Use [ALS (access log service)](https://www.envoyproxy.io/docs/envoy/latest/api-v2/service/accesslog/v2/als.proto) to observe service mesh, without Mixer. Follow [document](envoy/als_setting.md) for guides.
## Proxy
- [Envoy Proxy](https://www.envoyproxy.io/)
- [Sending metrics to Skywalking from Envoy](envoy/metrics_service_setting.md). How to send metrics from Envoy to SkyWalking using [Metrics service](https://www.envoyproxy.io/docs/envoy/latest/api-v2/config/metrics/v2/metrics_service.proto.html).
## Setup backend
Follow [backend and UI setup document](backend/backend-ui-setup.md) to understand and config the backend for different
scenarios, and open advanced features.
Follow [backend and UI setup document](backend/backend-ui-setup.md) to understand how the backend and UI configuration works. Different scenarios and advanced features are also explained.
## Changes log
Backend, UI and Java agent changes are available [here](../../../CHANGES.md).
# Backend, UI, and CLI
# Backend, UI, and CLI setup
SkyWalking backend distribution package includes following parts
1. **bin/cmd scripts**, in `/bin` folder. Include startup linux shell and Windows cmd scripts for Backend
SkyWalking backend distribution package includes the following parts:
1. **bin/cmd scripts**, in `/bin` folder. Includes startup linux shell and Windows cmd scripts for Backend
server and UI startup.
1. **Backend config**, in `/config` folder. Include setting files of backend, which are `application.yml`,
`log4j.xml` and `alarm-settings.yml`. Most open settings are in these files.
1. **Libraries of backend**, in `/oap-libs` folder. All jar files of backend are in it.
1. **Webapp env**, in `webapp` folder. UI frontend jar file is in here and its `webapp.yml` setting file.
2. **Backend config**, in `/config` folder. Includes settings files of the backend, which are:
* `application.yml`
* `log4j.xml`
* `alarm-settings.yml`
3. **Libraries of backend**, in `/oap-libs` folder. All the dependencies of the backend are in it.
4. **Webapp env**, in `webapp` folder. UI frontend jar file is here, with its `webapp.yml` setting file.
## Quick start
### Requirements and default settings
Requirement: **JDK8 to JDK12 are tested**, other versions are not tested and may or may not work.
Before you do quick start, you should know, quick start is to run skywalking backend and UI for preview
or demonstration. In here, performance and long-term running are not our goals.
Before you start, you should know that the quickstart aims to get you a basic configuration mostly for previews/demo, performance and long-term running are not our goals.
For production/QA/tests environments, you should head to [Backend and UI deployment documents](#deploy-backend-and-ui).
Want to deploy to product/test env? Go to [Backend and UI deployment documents](#deploy-backend-and-ui)
You can use `bin/startup.sh` (or cmd) to startup the backend and UI with their default settings, which are:
You can use `bin/startup.sh`(or cmd) to startup backend and UI in default settings, which include the following
things you need to know.
- Storage, use H2 by default, in order to make sure, don't need further deployment.
- Backend storage uses **H2 by default** (for an easier start)
- Backend listens `0.0.0.0/11800` for gRPC APIs and `0.0.0.0/12800` for http rest APIs.
In Java, .NetCore, Node.js, Istio agents/probe, set the gRPC service address to `ip/host:11800`.
(ip/host is where the backend at)
- UI listens `8080` port and request `127.0.0.1/12800` to do GraphQL query.
In Java, .NetCore, Node.js, Istio agents/probe, you should set the gRPC service address to `ip/host:11800`, with ip/host where your backend is.
- UI listens on `8080` port and request `127.0.0.1/12800` to do GraphQL query.
## Deploy Backend and UI
After the quick start, you should want to deploy the backend and UI in the distributed env.
Before that, you should know how agent/probe, backend, UI communicate with each other.
Before deploying Skywalking in your distributed environment, you should know how agents/probes, backend, UI communicates with each other:
<img src="http://skywalking.apache.org/doc-graph/communication-net.png"/>
- All native agents and probes, either language based or mesh probe, are using gRPC service(`core/default/gRPC*` in `application.yml`) to report
data to backend. Also, jetty service supported in JSON format.
- UI uses GraphQL(HTTP) query to access backend also in Jetty service(`core/default/rest*` in `application.yml`).
- All native agents and probes, either language based or mesh probe, are using gRPC service (`core/default/gRPC*` in `application.yml`) to report data to the backend. Also, jetty service supported in JSON format.
- UI uses GraphQL (HTTP) query to access the backend also in Jetty service (`core/default/rest*` in `application.yml`).
Now, let's continue with the backend, UI and CLI setting documents.
- [Backend setup document](backend-setup.md)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册