@@ -5,22 +5,22 @@ Here you can learn all you need to know about **SkyWalking**’s architecture, u
**NOTE: SkyWalking 8 uses brand new tracing APIs which are incompatible with all previous releases.**
-[Concepts and Designs](en/concepts-and-designs/README.md). You'll find the the core logic behind SkyWalking. You may start from here if you want to understand what is going on under our cool features and visualization.
-**Concepts and Designs**. You'll find the core logic behind SkyWalking. You may start from here if you want to understand what is going on under our cool features and visualization.
-[Setup](en/setup/README.md). A guide to installing SkyWalking for different use cases. It is an observability platform that supports multiple observability modes.
-**Setup**. A guide to installing SkyWalking for different use cases. It is an observability platform that supports multiple observability modes.
-[UI Introduction](en/ui/README.md). An introduction to the UI components and their features.
-**UI Introduction**. An introduction to the UI components and their features.
-[Contributing Guides](en/guides/README.md). If you are a PMC member, a committer, or a new contributor, learn how to start contributing with these guides!
-**Contributing Guides**. If you are a PMC member, a committer, or a new contributor, learn how to start contributing with these guides!
-[Protocols](en/protocols/README.md). The protocols show how agents/probes and the backend communicate with one another. Anyone interested in uplink telemetry data should definitely read this.
-**Protocols**. The protocols show how agents/probes and the backend communicate with one another. Anyone interested in uplink telemetry data should definitely read this.
-[FAQs](en/FAQ/README.md). A manifest of known issues with setup and secondary developments processes. Should you encounter any problems, check here first.
-**FAQs**. A manifest of known issues with setup and secondary developments processes. Should you encounter any problems, check here first.
You might also 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 can be found [here](../CHANGES.md).
- The latest and old releases are all available at [Apache SkyWalking release page](https://skywalking.apache.org/downloads/). The change logs can be found [here](https://github.com/apache/skywalking/tree/master/changes).
-[SkyWalking WIKI](https://cwiki.apache.org/confluence/display/SKYWALKING/Home) hosts the context of some changes and events.
Concepts and Designs help you to learn and understand the SkyWalking and the landscape.
- What is SkyWalking?
-[Overview and Core concepts](overview.md). Provides a high-level description and introduction, including the problems the project solves.
-[Project Goals](project-goals.md). Provides the goals, which SkyWalking is trying to focus and provide features about them.
After you read the above documents, you should understand the SkyWalking basic goals. Now, you can choose which following parts
you are interested, then dive in.
- Probe
-[Introduction](probe-introduction.md). Lead readers to understand what the probe is, how many different probes existed and
why need them.
-[Service auto instrument agent](service-agent.md). Introduce what the auto instrument agents do and which languages does
SkyWalking already support.
-[Manual instrument SDK](manual-sdk.md). Introduce the role of the manual instrument SDKs in SkyWalking ecosystem.
-[Service Mesh probe](service-mesh-probe.md). Introduce why and how SkyWalking receive telemetry data from Service mesh and proxy probe.
- Backend
-[Overview](backend-overview.md). Provides a high level introduction about the OAP backend.
-[Observability Analysis Language](oal.md). Introduces the core languages, which is designed for aggregation behaviour definition.
-[Meter Analysis Language](mal.md). Introduces the way to let the user analyze and aggregate meter data in OAP streaming system.
-[Log Analysis Language](lal.md). Introduces the Domain-Specific Language (DSL) to analyze logs.
-[Query in OAP](../protocols/README.md#query-protocol). A set of query protocol provided, based on the Observability Analysis Language metrics definition.
- UI
-[Overview](ui-overview.md). A simple brief about SkyWalking UI.
- CLI
-[SkyWalking CLI](https://github.com/apache/skywalking-cli). A command line interface for SkyWalking.
- Events
-[Events](event.md). Introduce the concept of "Event" in SkyWalking.
First and most important thing is, SkyWalking backend startup behaviours are driven by `config/application.yml`.
Understood the setting file will help you to read this document.
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.
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.
## Requirements and default settings
Requirement: **JDK8 to JDK12 are tested**, other versions are not tested and may or may not work.
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).
You can use `bin/startup.sh` (or cmd) to startup the backend and UI with their default settings, which are:
- 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, DotNetCore, 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.
### Interaction
Before deploying Skywalking in your distributed environment, you should know how agents/probes, backend, UI communicates with each other:
- 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`).
## Startup script
The default startup scripts are `/bin/oapService.sh`(.bat).
...
...
@@ -9,6 +46,8 @@ of starting backend.
## application.yml
SkyWalking backend startup behaviours are driven by `config/application.yml`.
Understood the setting file will help you to read this document.
The core concept behind this setting file is, SkyWalking collector is based on pure modularization design.
End user can switch or assemble the collector features by their own requirements.
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.
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 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).
You can use `bin/startup.sh` (or cmd) to startup the backend and UI with their default settings, which are:
- 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, 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
Before deploying Skywalking in your distributed environment, you should know how agents/probes, backend, UI communicates with each other:
- 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)
### [UI setup document](ui-setup.md)
### [CLI set up document](https://github.com/apache/skywalking-cli)
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: 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 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). Introduces how to install java agent to your service, without any impact in your code.
-[Java agent](java-agent/README.md). Introduces how to install java agent to your service, without any impact in your code.
-[LUA agent](https://github.com/apache/skywalking-nginx-lua). Introduce how to install the lua agent in Nginx + LUA module or OpenResty.
...
...
@@ -33,28 +21,3 @@ You can go to their project repositories for additional info about guides and re
-[SkyAPM C++ SDK](https://github.com/SkyAPM/cpp2sky). See cpp2sky project document for more details.
## Browser Monitoring
[Apache SkyWalking Client JS](https://github.com/apache/skywalking-client-js). Support collecting metrics and error logs
for the Browser or JavaScript based mobile app.
Note, make sure the [`receiver-browser`](backend/backend-receivers.md) has been opened, default is **ON** since 8.2.0.
## Service Mesh
- Istio
-[SkyWalking on Istio](istio/README.md). Introduces how to analyze Istio metrics.
- 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) 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 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).