Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qtqml-tooling-qmlprofiler.qdoc
Go to the documentation of this file.
1// Copyright (C) 2023 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
3
4/*!
5\page qtqml-tooling-qmlprofiler.html
6\title qmlprofiler
7\brief A tool that retrieves QML tracing data from your application.
8\ingroup qtqml-tooling
9\ingroup qtqml-tooling-devtools
10
11
12The \c qmlprofiler retrieves QML tracing data from an application. The collected
13data can then be visualized in \QC.
14
15To profile an application, enable QML debugging.
16
17See the \l{\QC: Profiling QML Applications}{QML Profiler} to learn
18more.
19
20\table
21\header
22 \li Usage
23\row
24 \li qmlprofiler [\l{options}] executable [parameters...]
25\endtable
26
27\section2 options
28
29\table
30\header
31 \li Option
32 \li Description
33\row
34 \li \c{-a, --attach <hostname>}
35 \li Attach to an application already running on <hostname>, instead of
36 starting it locally.
37\row
38 \li \c{-p, --port <port>}
39 \li Connect to the TCP port <port>. The default is 3768.
40\row
41 \li \c{-o, --output <file>}
42 \li Save tracing data in <file>. By default the data is sent to the standard output.
43\row
44 \li \c{--record <on|off>}
45 \li If set to 'off', don't immediately start recording data when the QML
46 engine starts, but instead either start the recording interactively
47 or with the JavaScript \c{console.profile()} function. By default the
48 recording starts immediately.
49\row
50 \li \c{--include <feature,...>}
51 \li Comma-separated list of features to record. By default all features
52 supported by the QML engine are recorded. If \c{--include} is specified,
53 only the given features will be recorded. The following features are
54 understood by qmlprofiler: \c{javascript}, \c{memory}, \c{pixmapcache}, \c{scenegraph},
55 \c{animations}, \c{painting}, \c{compiling}, \c{creating}, \c{binding}, \c{handlingsignal},
56 \c{inputevents}, \c{debugmessages}, \c{quick3d}.
57\row
58 \li \c{--exclude <feature,...>}
59 \li Comma-separated list of features to exclude when recording. By default,
60 all features supported by the QML engine are recorded. See \c{--include} for
61 the features understood by qmlprofiler.
62\row
63 \li \c{--interactive}
64 \li Manually control the recording from the command line. The profiler will
65 not terminate itself when the application does so in this case.
66 The following commands are available:
67 \list
68 \li \c{'r', 'record'}
69
70 Switch recording on or off.
71 \li \c{'o [file]', 'output [file]'}
72
73 Output profiling data to \c{<file>}. If no \c{<file>} parameter is given,
74 output to whatever was given with \c{--output}, or standard output.
75 \li \c{'c', 'clear'}
76
77 Clear profiling data recorded so far from memory.
78 \li \c{'f [file]', 'flush [file]'}
79
80 Stop recording if it is running, then output the data, and finally
81 clear it from memory.
82 \li \c{'q', 'quit'}
83
84 Terminate the target process if started from qmlprofiler, and
85 qmlprofiler itself.
86 \endlist
87\row
88 \li \c{--verbose}
89 \li Print debugging output.
90\row
91 \li \c{-h, --help}
92 \li Displays help on commandline options.
93\row
94 \li \c{--help-all}
95 \li Displays help, including generic Qt options.
96\row
97 \li \c{-v, --version}
98 \li Displays version information.
99\endtable
100
101\section2 Arguments
102
103\table
104 \header
105 \li Argument
106 \li Description
107 \row
108 \li executable
109 \li The path of the executable file that loads a QML document.
110 \row
111 \li parameters
112 \li Arguments of the executable
113
114\endtable
115
116
117*/