Skip to main content

Using Arthas to Profile FE

Introduction

In Doris 3.1.0 and later versions, the Arthas tool (version 4.0.5) is included in the FE deployment directory ${DORIS_FE_HOME}/arthas. You can use Arthas to print flame graphs, trace function call paths, output function execution times, observe function parameters and return values, and more, making it convenient to locate various runtime issues in FE.

For specific Arthas usage methods, please refer to: Arthas Official Documentation.

For versions prior to 3.1, you need to manually download Arthas:

wget https://github.com/alibaba/arthas/releases/download/arthas-all-4.0.5/arthas-bin.zip
unzip arthas-bin.zip -o ${DORIS_FE_HOME}/arthas
note

Note: Currently only Linux and MacOS systems are supported, Windows system is not yet supported

Generating FlameGraph

  1. Run the ${DORIS_FE_HOME}/arthas/as.sh script and select the DorisFE process

    bash ./as.sh
    Arthas script version: 4.0.5
    Found existing java process, please choose one and input the serial number of the process, eg : 1. Then hit ENTER.
    * [1]: 75123 com.intellij.idea.Main
    [2]: 77285 org.apache.doris.DorisFE
    [3]: 76901 DorisBE
    [4]: 6776 org.jetbrains.jps.cmdline.Launcher
    [5]: 76265 DorisBE
    [6]: 80527 org.jetbrains.jps.cmdline.Launcher
    2
  2. Start Profiling

    [arthas@77285]$ profiler start
    Profiling started
  3. Stop Profiling and generate flame graph file as 20250627-115104.html

    [arthas@77285]$ profiler stop --format html
    OK
    profiler output file: <DORIS_FE_HOME>/arthas-output/20250627-115104.html