wu-sheng commented on code in PR #745:
URL: 
https://github.com/apache/skywalking-website/pull/745#discussion_r1804701998


##########
content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.md:
##########
@@ -0,0 +1,151 @@
+---
+title: "Introduce R3 to recognition RESTFul URL"
+date: 2024-10-17
+author: Han Liu
+description: "This article will introduce how to use R3 to identify RESTFul 
URLs and integrate them into SkyWalking."
+tags:
+- RESTFul
+- R3
+---
+
+## Background
+
+In modern applications, services are typically provided through RESTFul HTTP 
URLs.
+Using RESTFul HTTP URLs (as unique resource identifiers) offers high 
readability, making it easier for both clients and servers to understand.
+However, in the observability field, this approach poses several challenges:
+
+1. **A large number of endpoints (HTTP URL)**: Browsing through all externally 
provided endpoints becomes more difficult, making it hard to identify 
problematic endpoints.
+2. **Metrics are difficult to collect**: It becomes particularly challenging 
to categorize similar endpoints and generate observability metrics.
+
+In existing solutions, this issue can be resolved following these 
application-level resolutions:
+
+1. **Agent Detection**: In certain frameworks, rules are often declared to 
handle RESTFul requests. For example, in Java's Spring Web, annotations like 
`@GET` can be used,
+   which can then be linked to current requests using a Java Agent.
+2. **OpenAPI**: Predefined files can be associated with the application, 
allowing the observability system to be aware of the URLs that may be used.
+
+Both resolutions are tightly coupled with application settings, which can be 
limiting for unknown applications or applications
+where the agent cannot be monitored. Therefore, we need to consider whether 
there is a more general solution to identify URLs and
+merge metrics generated from similar URLs for better representation.
+
+## R3
+
+R3(RESTFul Pattern Recognition) is a high-performance RESTFul URL recognition 
tool inspired by [Drain3](https://github.com/logpai/Drain3).
+It can be deployed as a standalone application on the observability server and 
communicate with the SkyWalking OAP.
+
+R3 can accept a URL list via the gRPC protocol and aggregate similar URLs into 
a specific format.
+The aggregated (formatted) URL list can also be queried using the gRPC 
protocol.
+
+### Data Interaction Flow
+
+![Data Interaction Flow between OAP, R3](data_interaction_flow.png)

Review Comment:
   This seems not to work in preview page. Please recheck.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to