Skip to main content

PerfSight Web Console Guide

1. Client Reports Examples

Here is a sample Unity code using PerfSight:

Initialization

    // In the Awake function, we initialize Perfsight and enable debugging logs.
void Awake()
{
PerfSightAgent.EnableDebugMode();
PerfSightAgent.InitContext("app id");
}

Mark Scene

You can call the MarkLoadlevel and MarkLevelFin interface when entering and exiting the scene.

    void Start()
{
PerfSightAgent.MarkLoadlevel("Test");
}

void OnDestroy()
{
PerfSightAgent.MarkLevelFin();
}

When the scene loading is completed, calling the MarkLoadlevelCompleted interface.

    PerfSightAgent.MarkLoadlevelCompleted();

SetUserId

After initializing the Perfsight and obtaining user information, call the SetUserId interface. After setting, we can find the corresponding record in the Equality Search(PlayerID) Page under the Match Details tab.

    PerfSightAgent.SetUserId("perfsight_test");

best_practise_1 best_practise_2

Click the Detail button under the data chart to get detailed performance data.

best_practise_3

SetQuality

We configure and report the game quality according to the following rules:
There are three dimensions: Graphics, Frame rate, and Style.
We use an integer number for encoding, with the digits representing the Graphics dimension, the tens representing the Frame rate dimension, and the hundreds representing the Style dimension, resulting in a three-digit integer number.
In the Graphics dimension, we use the numbers 1 to 6 for Smooth, Balanced, HD, HDR, Ultra HD, and Extreme HDR.
In the Frame rate dimension, we use the numbers 1 to 3 for Power Saving, Medium, and High.
In the Style dimension, we use the numbers 1 to 5 for Classic, Colorful, Realistic, Soft, and Movie.
We select the Graphics: Smooth, Frame rate: Medium, and Style: Colorful configurations for reporting.

    Quality value = 1(Smooth,digits representing the Graphics) + 2(Medium)*10(tens representing the Frame rate) + 2(Colorful)*100(hundreds representing the Style) = 221
PerfSightAgent.SetQuality(221);

After PerfSight is configured according to the above rules, you can use custom game quality to search for games in the Conditional Search Page under the Match Details tab. best_practise_4

Custom Data

You can use the PostNetworkLatency interface to report network delays and the PostValueX series interface to report custom data. In the following example, the game's packet sending and receiving status is reported through the PostValueX interface.

    PerfSightAgent.PostValueI("NetWork", "RecvPerSecond", recv);
PerfSightAgent.PostValueI("NetWork", "SendPerSecond", send);
PerfSightAgent.PostNetworkLatency(latency);

You can see the corresponding data under the network data and custom data of the record details. best_practise_5 best_practise_6

2. Best Practise

Performance Problem Localization

When a user gives us feedback about a performance issue with a specific device or scene, we can use Performance Details and Match Details to analyze the issue. We can start by selecting the appropriate scene via the Performance Trend Page to see if the Smoothness Indicators have fluctuated recently.
When the curve reacts with anomalies, we can further filter out the data with performance problems through Conditional Search Page and clicking on the Detail to further analyze the problem.

How to check the performance of a new released version?

When a new version is released, we can use the Version Comparison Page to compare the performance of the previous release version with the new released version to see if there are any performance issues with the new version.

3. Performance Statistical Data Analysis

3.1 Version Analysis

Version Analysis Page can query performance data for a specific version. The query supports version cycle or custom time cycle as the unit.

console_version

3.2 Scene Analysis

Scene Analysis Page can query the performance data in the version and scene dimensions. The query supports version cycle or custom time cycle as the unit. console_scene

3.3 Device Analysis

Device Analysis Page can query the performance data in the version, scene, GPU, SoC, and model dimensions. The query supports version cycle or custom time cycle as the unit. console_device

3.4 SoC Analysis

SoC Analysis Page can query the performance data in the version, scene, and SoC dimensions. The query supports version cycle or custom time cycle as the unit. console_soc

4. Performance Trend

Performance Trend Page can query daily and hour-level performance data in the version, scene, and model dimensions. console_trend_1 console_trend_2

5. Comparison Analysis

The Comparison Analysis Page includes Version Comparison, Scene Comparison, and Multi-Version Comparison.

Version Comparison

Version Comparison Page can choose any two versions, choose the core game scenes of concern, and conduct a comparative analysis. The query supports version cycle or custom time cycle as the unit. console_comparison_version_1 console_comparison_version_2

Scene Comparison

Scene Comparison Page can select any two scenes for comparative analysis on specific models. The query supports version cycle or custom time cycle as the unit. console_comparison_scene

Multi-Version Comparison

Multi-Version Comparison Page can select multiple versions to perform comparative analysis on specific models and scenes. console_comparison_multi_version

6. Network Latency

Network Latency Statistics Page

Network Latency Statistics Page allows you to view the latency status of the selected version in different countries and regions, and for different network types, helping developers to troubleshoot the impact of high network latency factors on game performance. console_net console_net console_net

Network Latency Compare

The Network Latency Compare page allows you to compare network latency by country for different versions. console_net

7. Key-value Analysis

In the Custom Data Management Page can enable customized data analysis for specific categories. In this example, we enable custom data analysis for "SendPerSecond" and "RecvPerSecond" under the "NetWork" type. console_custom For the custom data reported after enabling analysis, you can view the analysis of the corresponding data on the Custom Analysis Page. console_custom