Testing is an indispensable part of the modern software development process. In order to ensure product quality, it is necessary for the software test station to conduct a comprehensive test of the product from the user's point of view, find as many defects as possible as soon as possible, track and analyze the problems in the product, and question the deficiencies and improve the suggestions. However, in the current era of frequent iteration of requirements, the traditional test management method requires testers to spend a lot of time and energy to maintain and update test cases and problems found in the test process. How to build a full-link tracing and analysis path of the test environment to achieve controllable test progress and efficient collaboration and communication is a problem worth considering.
Observability Cloud follows the concept of observability and provides enterprises or teams with end-to-end analysis solutions in different environments, such as testing, pre-launching, and online. Based on the three observability pillars of "metrics", "links", and "logs", it provides data-driven visualization and integrated platform analysis capabilities such as log management, distributed tracing (APM, profile), and user access tracing.
This article focuses on the three scenarios of user access monitoring, application performance monitoring, and logs to introduce how testers can conduct end-to-end testing from the perspective of users, and implement multiple teams of business, testing, and development to complete the flow and follow-up of the test process based on the observation cloud workspace console.
If you have never used Observable Cloud before, perform the following steps to collect logs, user access tracking (RUM), and application performance tracking (APM) data:
Note: Log data correlation analysis focuses on exception error analysis, and profile data correlation analysis focuses on performance bottleneck analysis. You can enable data collection in the following modules based on your actual requirements:
Create an Observation Cloud account.
Install DataKit
Enable the log collector.
Enable the Application Performance Monitoring APM Collector.
Enable the Application Performance Monitoring Profile Collector.
Enable the User Access Monitoring RUM Collector.
Connect to the RUM SDK for web applications
If the above preparations have been completed, you can install the plug-in directly through the **Browser Extensions.
Once the plugin** is complete, visit chrome: extensions via your browser
Automated tracking is currently available in Chrome and Edge browsers.
Turn on Developer Mode
Unzip the browser plug-in guance-rum-pluginzip」
Click to load the extracted package
Select the unzipped folder.
Click on the icon Extensions in the upper right corner, find the Guance Cloud Plugin and double-click to open the plugin.
Turn it on to generate a unique tracking ID.
Note: This tracking ID is automatically injected into the RUM report during the app visit.
Plugin Actions: Click Reset to generate a new tracking ID and enable the plugin.
Click the history icon to view the tracking ID history.
Click the language icon to see the current language or switch languages.
Click the icon to view the help documentation.
When a user accesses and uses the Observation Cloud Log Viewer, the following error occurs when searching for a keyword:
The user provides workspace information, operation steps, error messages, and screenshots.
Replicate user actions on a test or test environment.
After the problem is located, the cause of the error is reported by the synchronization user.
Log in to the observation cloud, enter the user access monitoring application list, select xxx web application, enter the viewer, and filter and view the actual user access track data according to the tracking ID (track ID: actual ID) generated above.
Target a user's access session based on the tracking ID and the user's provided time range.
The observation cloud also offers session replay, which captures things like clicks, mouse movements, and page scrolls, and generates a record for each session. Click the ** button in front of the corresponding session to more intuitively understand the user's access path and locate the page where the exception occurs.
Note: The session replay feature requires an upgrade to the SDK version to 30 or above, please refer to How to Access Session Replay.
According to the error function Log Viewer, locate the log all page access data.
Click View Page Details to view the request status 400 and whether there is an associated backend link call data.
Drill down to view the associated link calls, locate the error belonging to the network type from the request status on the above page, and continue to drill down to view the correlation logs
Optional) If you need to analyze the performance bottleneck, you can locate the top-level span where the df-front-API backend service is located, view the hot spots, and understand the proportion of execution time and method call time analysis during the span execution process.
Optional) Click the View Details button in *Hotspot to jump to the profile page. Based on the profile flame chart, analyze the dynamic performance data of applications in different language environments such as J**A Python Go, and intuitively view the performance problems of CPU, memory, and IO.
Compared with the conventional test and positioning methods, the full-link analysis solution of Observation Cloud is based on the combination of user access monitoring, application performance monitoring, logs and other functions to meet the problem location in different scenarios, and realize the collaborative positioning and handling of problems by multiple teams on the same platform, which not only solves the steps of repeated confirmation between the product service provider and the user, but also improves the communication efficiency between multiple teams on the side of the product service provider. Liberate development and testing from the heavy work of updating test cases, and be able to devote more attention to understanding the business direction of the product and improve the value of the team.