Yes — OpenResty XRay offers official mobile apps for both Android and iOS, so you can monitor and troubleshoot your running server applications straight from your phone. From the app you can read automatically generated analysis reports, open interactive flame graphs that trace an issue’s code path, watch real-time performance dashboards, and launch on-demand guided analysis (for example, High CPU) — anywhere, anytime.

This tutorial walks through downloading, installing, and using the OpenResty XRay app on Android; the iOS version is nearly identical in operation and features.

Download and install OpenResty XRay for Android

To get the mobile apps, you can visit the mobile app page on the official OpenResty.com website with your cell phone.

OpenResty XRay mobile app download page on the OpenResty.com website

On this page, you can find download links to apps compatible with iOS and Android systems.

Download links for the OpenResty XRay iOS and Android apps

This video showcases OpenResty XRay on an Android device. You can grab the app from Google Play.

OpenResty XRay Android app listing on Google Play

Or tap the “Download APK” button to get the Android app package.

Download APK button for the OpenResty XRay Android app package

Open the package once the download has finished.

Opening the downloaded OpenResty XRay Android APK package

Click to install OpenResty XRay.

Installing the OpenResty XRay Android app

The installation was successful.

OpenResty XRay Android app installed successfully

Open the OpenResty XRay application.

Launching the OpenResty XRay app on Android

Sign into OpenResty XRay

If this is your first time using the app, you must first sign into your account.

OpenResty XRay mobile app sign-in screen

You can either enter your email address and password,

Signing into OpenResty XRay with an email address and password

or use third-party login options like Google.

Third-party login options such as Google in the OpenResty XRay app

In this video, we log in using our username and password.

Enter the email address, Enter the password.

Entering email and password in the OpenResty XRay mobile app

Click on the “Sign In” button.

Sign In button on the OpenResty XRay mobile app login screen

Automatic analysis report

After successful login, you’ll land on the console UI of OpenResty XRay. This is the Insights page, where you’ll see analysis reports the system has generated for all your apps across all your servers.

OpenResty XRay Insights page showing automatic analysis reports

You can find the reports on the Insights page for daily and weekly periods.

Daily and weekly analysis report options on the Insights page

By default, the app displays today’s daily report.

Today’s daily analysis report in the OpenResty XRay app

You can choose to view reports from different dates.

Selecting analysis reports from different dates

Clicking this button will show all the applications involved in the report.

List of applications included in the analysis report

You’ll notice that OpenResty XRay is already equipped to analyze a wide variety of applications.

OpenResty XRay analyzing a wide variety of application types

Select “OpenResty”.

Selecting the OpenResty application in the report

The summary page categorizes issues by type, making it easy to find the ones you’re interested in. The number following represents the number of issues found of that type.

Analysis report summary categorizing issues by type

Tap on a category title to unfold or fold up the list of issues.

Unfolding an issue category in the analysis report

It lists ten issues below, all related to “Errors and Exceptions”.

List of Errors and Exceptions issues in the analysis report

You can click on a specific issue in the issue list to view its detailed information.

Opening detailed information for a specific issue

On the issue details page, you can see a flame graph preview that traces the code path of the issue, which can help you locate the source of the problem.

Issue details page with a flame graph preview tracing the code path

Clicking on the flame graph preview allows you to view an enlarged flame graph.

Enlarged flame graph tracing the issue’s code path

Click the back button to return to the issue details page.

Returning to the issue details page from the flame graph

Here, you can also see a detailed explanation and suggestions provided by AI.

AI-generated explanation and suggestions for the issue

Click this button to view more analysis results.

Button to view more analysis results for the issue

Here is the complete information of the current analysis, such as which analyzer was used and the application information.

Complete analysis details including the analyzer used and application information

You’ll also find the flame graph and other charts here.

Flame graph and additional charts in the full analysis report

This is the insights page provided by OpenResty XRay. It helps you to quickly identify and analyze various issues with the application, and pinpoint the root cause.

View the performance chart data on the dashboard page

Visit the “Dashboard” page for the most up-to-date and comprehensive performance chart data at the current moment.

OpenResty XRay Dashboard page with real-time performance charts

In the page’s upper left-hand corner, you’ll find the machine currently under analysis.

Currently selected machine on the Dashboard page

You can choose the right machine from the list below if the current one is not correct.

Selecting a machine from the list on the Dashboard

Here, you can also see system metrics, which display various performance data of your system.

System metrics showing server performance data

For example, click here to go to the CPU usage details page.

Opening the CPU usage details page

On this page, you can view various charts related to CPU usage in real-time.

Real-time CPU usage charts in the OpenResty XRay app

In the upper right corner of the details page, you can easily switch to view other types of application metrics.

Switching between application metric types on the details page

For example, you can switch to the memory data page.

Memory usage data page in the OpenResty XRay app

Click the back button to return to the main dashboard page.

Returning to the main Dashboard page

On the Dashboard page, you can also see the real-time performance data of individual applications in the application metrics section.

Real-time per-application performance data in the application metrics section

Click on this Go application to enter its details page.

Opening the details page for a Go application

Here, you can see the basic information of the selected Go application and performance metrics from various dimensions.

Go application details with performance metrics across dimensions

You can click here to enter the CPU metrics details page for that application.

Opening the CPU metrics details page for the Go application

Here, you can view various charts related to the application’s CPU usage.

CPU usage charts for the Go application

In the upper right corner of the details page, you can easily switch to view other types of application metrics.

Switching to other application metric types

Now, we have switched to the memory metrics page.

Memory metrics page for the Go application

Guided analysis feature

OpenResty XRay also provides a “Guided Analysis” feature.

OpenResty XRay Guided Analysis feature

Here, you can see different types of problems that you can diagnose.

Types of problems available for guided diagnosis

Let’s select “High CPU Usage”.

Selecting High CPU Usage in Guided Analysis

Select the Go application.

Selecting the Go application for guided analysis

Make sure that the application type is right.

Confirming the application type for guided analysis

The language level is just Go.

Setting the language level to Go for the analysis

We can also set the maximum analyzing time. We’ll leave it as 300 seconds, which is the default value.

Setting the maximum analysis time to 300 seconds

Let’s start analyzing.

Starting the guided analysis

The system will keep performing different rounds of analysis.

Now, it’s executing the first round.

Guided analysis executing its first round

Let’s stop analyzing.

Stopping the guided analysis

It automatically generated an analysis report.

Automatically generated guided-analysis report

Click here to enter the historical report list page.

Historical guided-analysis report list

Click to enter the report details page.

Guided-analysis report details page

Click here to enter the “Settings” page.

Settings page in the OpenResty XRay mobile app

Here, you can see the information on the selected machine and make some configurations for it.

Selected machine information and configuration options

The iOS version of OpenResty XRay is very similar to the Android version.

Frequently asked questions

Is there a mobile app to monitor and troubleshoot server applications?

Yes. OpenResty XRay offers official mobile apps for both Android and iOS. From your phone you can read automatically generated analysis reports, open flame graphs, watch real-time performance dashboards, and run on-demand guided analysis for your running server applications — anywhere, anytime.

Can I view flame graphs from the OpenResty XRay mobile app?

Yes. On an issue’s details page the app shows a flame graph preview that traces the code path of the problem, and you can tap it to open an enlarged, full-screen flame graph. Each issue also comes with an AI-generated explanation and suggestions to help you pinpoint the root cause.

Can I run on-demand analysis like High CPU from my phone?

Yes, through the Guided Analysis feature. You pick the problem type (for example, High CPU Usage), select the target application, confirm its type and language level, set the maximum analysis time, and start. OpenResty XRay runs multiple rounds of analysis and generates a report you can review right on your phone.

What is OpenResty XRay

OpenResty XRay is a dynamic-tracing product that automatically analyzes your running applications to troubleshoot performance problems, behavioral issues, and security vulnerabilities with actionable suggestions. Under the hood, OpenResty XRay is powered by our Y language targeting various runtimes like Stap+, eBPF+, GDB, and ODB, depending on the contexts.

If you like this tutorial, please subscribe to this blog site and/or our YouTube channel. Thank you!

About The Author

Yichun Zhang (Github handle: agentzh), is the original creator of the OpenResty® open-source project and the CEO of OpenResty Inc..

Yichun is one of the earliest advocates and leaders of “open-source technology”. He worked at many internationally renowned tech companies, such as Cloudflare, Yahoo!. He is a pioneer of “edge computing”, “dynamic tracing” and “machine coding”, with over 22 years of programming and 16 years of open source experience. Yichun is well-known in the open-source space as the project leader of OpenResty®, adopted by more than 40 million global website domains.

OpenResty Inc., the enterprise software start-up founded by Yichun in 2017, has customers from some of the biggest companies in the world. Its flagship product, OpenResty XRay, is a non-invasive profiling and troubleshooting tool that significantly enhances and utilizes dynamic tracing technology. And its OpenResty Edge product is a powerful distributed traffic management and private CDN software product.

As an avid open-source contributor, Yichun has contributed more than a million lines of code to numerous open-source projects, including Linux kernel, Nginx, LuaJIT, GDB, SystemTap, LLVM, Perl, etc. He has also authored more than 60 open-source software libraries.