You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2022/04/04 15:31:38 UTC

[skywalking] 01/01: Rewrite UI introduction

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

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

commit c77c095d15c8893af1aacdc384d130ce74e1a8ba
Author: Wu Sheng <wu...@foxmail.com>
AuthorDate: Mon Apr 4 23:31:24 2022 +0800

    Rewrite UI introduction
---
 CHANGES.md                                   |   1 +
 docs/en/setup/backend/ui-setup.md            |   2 +-
 docs/en/setup/service-agent/server-agents.md |  28 ++++--
 docs/en/ui/README.md                         | 142 +++++----------------------
 docs/menu.yml                                |   4 +-
 5 files changed, 48 insertions(+), 129 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 2d8febd82e..785597e372 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -181,6 +181,7 @@ NOTICE, this sharding concept is NOT just for splitting data into different data
 * Update Booster UI's dependency licenses.
 * Add profiling doc, and remove service mesh intro doc(not necessary).
 * Add a doc for virtual database.
+* Rewrite UI introduction.
 
 All issues and pull requests are [here](https://github.com/apache/skywalking/milestone/112?closed=1)
 
diff --git a/docs/en/setup/backend/ui-setup.md b/docs/en/setup/backend/ui-setup.md
index 982db29227..48be2a76b2 100644
--- a/docs/en/setup/backend/ui-setup.md
+++ b/docs/en/setup/backend/ui-setup.md
@@ -46,4 +46,4 @@ We could set up environment variables to configure this image.
 
 ### SW_OAP_ADDRESS
 
-The address of OAP server. Default value is `http://127.0.0.1:12800`.
+The address of OAP server. Default value is `http://127.0.0.1:12800`.
\ No newline at end of file
diff --git a/docs/en/setup/service-agent/server-agents.md b/docs/en/setup/service-agent/server-agents.md
index faec4b1343..b3f657b51a 100644
--- a/docs/en/setup/service-agent/server-agents.md
+++ b/docs/en/setup/service-agent/server-agents.md
@@ -1,23 +1,35 @@
+# Server Agents
+
+Server agents in various languages provide auto-instrumentation or/and manual-instrumentation(APIs-based) mechanism to
+integrate with target services. They support collecting traces, logs, metrics and events by using SkyWalking's native
+format, and maximum the analysis capabilities of SkyWalking OAP server.
+
 ## Installing language agents in services
 
-- [Java agent](http://github.com/apache/skywalking-java). Learn how to install the Java agent in your service without affecting your code.
+- [Java agent](http://github.com/apache/skywalking-java). Learn how to install the Java agent in your service without
+  affecting your code.
 
-- [LUA agent](https://github.com/apache/skywalking-nginx-lua). Learn how to install the Lua agent in Nginx + LUA module or OpenResty.
+- [LUA agent](https://github.com/apache/skywalking-nginx-lua). Learn how to install the Lua agent in Nginx + LUA module
+  or OpenResty.
 
 - [Kong agent](https://github.com/apache/skywalking-kong). Learn how to install the Lua agent in Kong.
 
-- [Python Agent](https://github.com/apache/skywalking-python). Learn how to install the Python Agent in a Python service.
+- [Python Agent](https://github.com/apache/skywalking-python). Learn how to install the Python Agent in a Python
+  service.
 
-- [Node.js agent](https://github.com/apache/skywalking-nodejs). Learn how to install the NodeJS Agent in a NodeJS service.
+- [Node.js agent](https://github.com/apache/skywalking-nodejs). Learn how to install the NodeJS Agent in a NodeJS
+  service.
 
-The following agents and SDKs are compatible with SkyWalking's data formats and network protocols, but are maintained by third parties.
-See their project repositories for guides and releases.
+- [Rust agent](https://github.com/apache/skywalking-rust). Learn how to integrate the rust agent in a rust service.
 
-- [SkyAPM .NET Core agent](https://github.com/SkyAPM/SkyAPM-dotnet). See .NET Core agent project document for more details.
+The following agents and SDKs are compatible with SkyWalking's data formats and network protocols, but are maintained by
+third parties. See their project repositories for guides and releases.
+
+- [SkyAPM .NET Core agent](https://github.com/SkyAPM/SkyAPM-dotnet). See .NET Core agent project document for more
+  details.
 
 - [SkyAPM PHP agent](https://github.com/SkyAPM/SkyAPM-php-sdk). See PHP agent project document for more details.
 
 - [SkyAPM Go SDK](https://github.com/SkyAPM/go2sky). See go2sky project document for more details.
 
 - [SkyAPM C++ SDK](https://github.com/SkyAPM/cpp2sky). See cpp2sky project document for more details.
-
diff --git a/docs/en/ui/README.md b/docs/en/ui/README.md
index 79c7596fb5..e063a90530 100644
--- a/docs/en/ui/README.md
+++ b/docs/en/ui/README.md
@@ -1,133 +1,39 @@
 # Introduction to UI
-The SkyWalking official UI provides the default and powerful visualization capabilities for SkyWalking to observe distributed
-clusters.
 
-<img src="https://skywalking.apache.org/ui-doc/8.9.0/dashboard.png"/>
+The SkyWalking official UI provides the default and powerful visualization capabilities for SkyWalking to observe
+full-stack application.
 
-The right top has the setup zone. User could set time range, time zone, auto refresh and language from there.
+<img src="https://skywalking.apache.org/ui-doc/9.0.0/home.png"/>
 
-## Dashboard
-The dashboard provides metrics of services, service instances, and endpoints. Here's a quick terminology guide on metrics:
-* **Throughput CPM**: Represents calls per minute.
-* **Apdex score**: See [Apdex on Wiki](https://en.wikipedia.org/wiki/Apdex).
-* **Response Time Percentile**: Includes `p99`, `p95`, `p90`, `p75`, and `p50`. See [percentile on Wiki](https://en.wikipedia.org/wiki/Percentile).
-* **SLA**: Represents the success rate. For HTTP, the response status code is default to 200.
+The left side menu lists all available supported stack, with default dashboards.
 
-The UI would check the local dashboard settings with the OAP backend in every 3 days, once inconsistent detected, a notification
-box would pop up asking for reload.
+Follow `Official Dashboards` menu explores all default dashboards about how to monitor different tech stacks.
 
-### Custom Dashboard
-Users may customize their dashboards. The default dashboards are provided in the default templates located in the `/ui-initialized-templates` folders.
+## Custom Dashboard
 
-The template file must end with `.yml` or `.yaml`. It follows this format:
-```yaml
-templates:
-  - name: template name # The unique name
-    # The type includes DASHBOARD, TOPOLOGY_INSTANCE, TOPOLOGY_ENDPOINT.
-    # DASHBOARD type templates could have multiple definitions, by using different names.
-    # TOPOLOGY_INSTANCE, TOPOLOGY_ENDPOINT type templates should be defined once, 
-    # as they are used in the topology page only.
-    type: "DASHBOARD" 
-    # Custom the dashboard or create a new one on the UI, set the metrics as you like in the edit mode.
-    # Then, you could export this configuration through the page and add it here.
-    configuration: |-
-      [
-        {
-          "name":"Spring Sleuth",
-          "type":"service",
-          "children":[
-            {
-              "name":"Sleuth",
-              "children": [{
-                "width": "3",
-                "title": "HTTP Request",
-                "height": "200",
-                "entityType": "ServiceInstance",
-                "independentSelector": false,
-                "metricType": "REGULAR_VALUE",
-                "metricName": "meter_http_server_requests_count",
-                "queryMetricType": "readMetricsValues",
-                "chartType": "ChartLine",
-                "unit": "Count"
-              }
-              ...
-              ]
-            }
-          ]
-      }
-      ]
-    # Activated means this templates added into the UI page automatically.
-    # False means providing a basic template, user needs to add it manually on the page.
-    activated: false
-    # True means wouldn't show up on the dashboard. Only keeps the definition in the storage.
-    disabled: false
-```
+Besides, official dashboards, **Dashboards** provides customization to end users to add new tabs/pages/widgets, and
+flexibility to re-config the dashboard on your own preference.
 
-**NOTE**: UI initialized templates would only be initialized if no template in the storage has the same name.
-Check the entity named `ui_template` in your storage.
+The dashboard has two key attributes, **Layer** and **Entity Type**. Learn these two concepts first before you begin any
+customization. Also, trace, metrics, log analysis are relative to OAL, MAL, and LAL engines in SkyWalking kernel. You
+should learn them first too.
 
-## Topology
-A topology map shows the relationship between services and instances with metrics.
+Service and All entity type dashboard could be set as root(`set this to root`), which mean this dashboard would be used
+as the entrance of its layer. If you have multiple root dashboards, UI could choose one randomly(Don't recommend doing
+so).
 
-<img src="https://skywalking.apache.org/ui-doc/8.4.0/topology.png"/>
+**Notice, dashboard editable is disabled on release, set system env(**SW_ENABLE_UPDATE_UI_TEMPLATE=true**) to activate
+them.** Before you save the edited dashboard, it is just stored in memory, closing tab would LOSE the change
+permanently.
 
-Global topology is shown by default, which means that all services are included.
-* **Service Selector** provides two-level selectors, service group lists, and service name lists. The group name is separated from 
-the service name if it follows the `<group name>::<logic name>` format. Topology maps are available for single group, single service, 
-or global (where all services are included).
-* **Custom Group** allows you to create sub-topologies for a service group.
-* **Service Deep Dive** opens when you click on any service. The honeycomb could carry out metrics, trace, and alarm query of the selected service.
-* **Service Relationship Metrics** provides the metrics of service RPC interactions and the instances of these two services.
+## Settings
 
-## Trace Query
-Since SkyWalking provides distributed agents, trace query is a key feature.
+Settings provide language, server time zone, and auto-fresh option. These settings are stored in browser local
+storage. Unless you clear them manually, those would not change. 
 
-<img src="https://skywalking.apache.org/ui-doc/7.0.0/trace.png"/>
+## FAQ
 
-* **Trace Segment List** is not the same as a trace list. Every trace has several segments belonging to different services. If you start a query by all services or by trace IDs, different segments with the same trace ID may be listed there.
-* **Span** can be clicked. The details of each span will pop up on the left.
-* **Trace Views** provides three typical and different usage views to visualize the trace. 
+### Login and Authentication
 
-## Profile
-Profile is an interactive feature. It provides method-level performance diagnoses. 
-
-Make sure you have read the blog [**Apache SkyWalking: Use Profiling to Fix the Blind Spot of Distributed Tracing**](https://skywalking.apache.org/blog/2020-04-13-apache-skywalking-profiling/) first.
-If you are using Python agent, the blog [**Python Agent Supports Profiling**](https://skywalking.apache.org/blog/2021-09-12-skywalking-python-profiling/) should be read too.
-
-To start profile analysis, you need to create a profile task:
-
-<img src="https://skywalking.apache.org/ui-doc/7.0.0/profile-create.png" width="440px"/>
-
-1. Select the specific service. 
-1. Set the Endpoint Name. This endpoint name is typically the operation name of the first span. Find this on the trace 
-segment list view.
-1. Monitor Time could start right now or from any given future time.
-1. Monitor Duration defines the observation time window to find the suitable request to conduct performance analysis.
-Even though the profile has a very limited performance impact on the target system, it still amounts to an additional load. Setting this duration allows you to control the impact.
-1. Min Duration Threshold provides a filter mechanism. If a request of the given endpoint responds quickly, it will not be profiled. This ensures that the profiled data is the expected one.
-1. Max Sampling Count gives the maximum dataset to be collected by the agent. It helps reduce memory and network load.
-1. An implicit condition is that **at any moment, SkyWalking only accepts one profile task for each service**.
-1. Individual agents may have different settings to control or limit this feature. Read document setup for more details.
-1. Not all SkyWalking ecosystem agents support this feature. Java agent from version 7.0.0 supports this by default.
-
-Once the profile is done, the profiled trace segments would show up, and you could request to analyze any span.
-Typically, we analyze spans with long self duration. If a span and its children both have long duration, you could set the analysis boundaries by choosing to `Include Children` or `Exclude Children`. 
-
-Choose the appropriate span, and click `Analyze`. You will see the stack-based analysis results. The slowest methods are highlighted.
-
-<img src="https://skywalking.apache.org/ui-doc/7.0.0/profile-result.png"/>
-
-### Advanced features
-1. Since version 7.1.0, the profiled trace automatically collects the HTTP request parameters for Tomcat and SpringMVC Controller.
-
-## Log
-Since version 8.3.0, SkyWalking has provided log query for browser monitoring. Use [Apache SkyWalking Client JS](https://github.com/apache/skywalking-client-js) agent to collect metrics and error logs.
-
-Since version 8.5.0, SkyWalking supports collecting logs through its native agents and third party agents (such as Fluentd and Filebeat). 
-See [Log Analyzer Document](../setup/backend/log-analyzer.md) for more details.
-
-<img src="https://skywalking.apache.org/ui-doc/8.3.0/log.png"/>
-
-## Alarm
-The alarm page lists all triggered alarms. See backend setup documentation to learn how to set up alarm rules or integrate
-with third party systems.
+SkyWalking doesn't provide login and authentication as usual for years. If you need, a lot of Gateway solutions have
+provides well-established solutions, such as Nginx ecosystem.
\ No newline at end of file
diff --git a/docs/menu.yml b/docs/menu.yml
index 63f4692e13..85aa40e60e 100644
--- a/docs/menu.yml
+++ b/docs/menu.yml
@@ -143,6 +143,8 @@ catalog:
         path: "/en/setup/backend/ui-setup"
       - name: "Official Dashboards"
         catalog:
+          - name: "Overview"
+            path: "/en/ui/readme"
           - name: "General Service"
             catalog:
               - name: "Server Agents"
@@ -177,8 +179,6 @@ catalog:
                 path: "/en/setup/backend/backend-health-check"
       - name: "CLI Setup"
         path: "https://github.com/apache/skywalking-cli"
-  - name: "UI Introduction"
-    path: "/en/ui/readme"
   - name: "Contributing Guides"
     catalog:
       - name: "Contribute"