Initialize
[sdk/emulator/qemu.git] / QMP / qmp-events.txt
1                    QEMU Monitor Protocol Events
2                    ============================
3
4 BLOCK_IO_ERROR
5 --------------
6
7 Emitted when a disk I/O error occurs.
8
9 Data:
10
11 - "device": device name (json-string)
12 - "operation": I/O operation (json-string, "read" or "write")
13 - "action": action that has been taken, it's one of the following (json-string):
14     "ignore": error has been ignored
15     "report": error has been reported to the device
16     "stop": error caused VM to be stopped
17
18 Example:
19
20 { "event": "BLOCK_IO_ERROR",
21     "data": { "device": "ide0-hd1",
22               "operation": "write",
23               "action": "stop" },
24     "timestamp": { "seconds": 1265044230, "microseconds": 450486 } }
25
26 Note: If action is "stop", a STOP event will eventually follow the
27 BLOCK_IO_ERROR event.
28
29 RESET
30 -----
31
32 Emitted when the Virtual Machine is reseted.
33
34 Data: None.
35
36 Example:
37
38 { "event": "RESET",
39     "timestamp": { "seconds": 1267041653, "microseconds": 9518 } }
40
41 RESUME
42 ------
43
44 Emitted when the Virtual Machine resumes execution.
45
46 Data: None.
47
48 Example:
49
50 { "event": "RESUME",
51     "timestamp": { "seconds": 1271770767, "microseconds": 582542 } }
52
53 RTC_CHANGE
54 ----------
55
56 Emitted when the guest changes the RTC time.
57
58 Data:
59
60 - "offset": delta against the host UTC in seconds (json-number)
61
62 Example:
63
64 { "event": "RTC_CHANGE",
65     "data": { "offset": 78 },
66     "timestamp": { "seconds": 1267020223, "microseconds": 435656 } }
67
68 SHUTDOWN
69 --------
70
71 Emitted when the Virtual Machine is powered down.
72
73 Data: None.
74
75 Example:
76
77 { "event": "SHUTDOWN",
78     "timestamp": { "seconds": 1267040730, "microseconds": 682951 } }
79
80 Note: If the command-line option "-no-shutdown" has been specified, a STOP
81 event will eventually follow the SHUTDOWN event.
82
83 STOP
84 ----
85
86 Emitted when the Virtual Machine is stopped.
87
88 Data: None.
89
90 Example:
91
92 { "event": "STOP",
93     "timestamp": { "seconds": 1267041730, "microseconds": 281295 } }
94
95 VNC_CONNECTED
96 -------------
97
98 Emitted when a VNC client establishes a connection.
99
100 Data:
101
102 - "server": Server information (json-object)
103   - "host": IP address (json-string)
104   - "service": port number (json-string)
105   - "family": address family (json-string, "ipv4" or "ipv6")
106   - "auth": authentication method (json-string, optional)
107 - "client": Client information (json-object)
108   - "host": IP address (json-string)
109   - "service": port number (json-string)
110   - "family": address family (json-string, "ipv4" or "ipv6")
111
112 Example:
113
114 { "event": "VNC_CONNECTED",
115     "data": {
116         "server": { "auth": "sasl", "family": "ipv4",
117                     "service": "5901", "host": "0.0.0.0" },
118         "client": { "family": "ipv4", "service": "58425",
119                     "host": "127.0.0.1" } },
120     "timestamp": { "seconds": 1262976601, "microseconds": 975795 } }
121
122
123 Note: This event is emitted before any authentication takes place, thus
124 the authentication ID is not provided.
125
126 VNC_DISCONNECTED
127 ----------------
128
129 Emitted when the conection is closed.
130
131 Data:
132
133 - "server": Server information (json-object)
134   - "host": IP address (json-string)
135   - "service": port number (json-string)
136   - "family": address family (json-string, "ipv4" or "ipv6")
137   - "auth": authentication method (json-string, optional)
138 - "client": Client information (json-object)
139   - "host": IP address (json-string)
140   - "service": port number (json-string)
141   - "family": address family (json-string, "ipv4" or "ipv6")
142   - "x509_dname": TLS dname (json-string, optional)
143   - "sasl_username": SASL username (json-string, optional)
144
145 Example:
146
147 { "event": "VNC_DISCONNECTED",
148     "data": {
149         "server": { "auth": "sasl", "family": "ipv4",
150                     "service": "5901", "host": "0.0.0.0" },
151         "client": { "family": "ipv4", "service": "58425",
152                     "host": "127.0.0.1", "sasl_username": "luiz" } },
153     "timestamp": { "seconds": 1262976601, "microseconds": 975795 } }
154
155 VNC_INITIALIZED
156 ---------------
157
158 Emitted after authentication takes place (if any) and the VNC session is
159 made active.
160
161 Data:
162
163 - "server": Server information (json-object)
164   - "host": IP address (json-string)
165   - "service": port number (json-string)
166   - "family": address family (json-string, "ipv4" or "ipv6")
167   - "auth": authentication method (json-string, optional)
168 - "client": Client information (json-object)
169   - "host": IP address (json-string)
170   - "service": port number (json-string)
171   - "family": address family (json-string, "ipv4" or "ipv6")
172   - "x509_dname": TLS dname (json-string, optional)
173   - "sasl_username": SASL username (json-string, optional)
174
175 Example:
176
177 { "event": "VNC_INITIALIZED",
178     "data": {
179         "server": { "auth": "sasl", "family": "ipv4",
180                     "service": "5901", "host": "0.0.0.0"},
181         "client": { "family": "ipv4", "service": "46089",
182                     "host": "127.0.0.1", "sasl_username": "luiz" } },
183         "timestamp": { "seconds": 1263475302, "microseconds": 150772 } }
184
185 SPICE_CONNECTED, SPICE_DISCONNECTED
186 -----------------------------------
187
188 Emitted when a SPICE client connects or disconnects.
189
190 Data:
191
192 - "server": Server information (json-object)
193   - "host": IP address (json-string)
194   - "port": port number (json-string)
195   - "family": address family (json-string, "ipv4" or "ipv6")
196 - "client": Client information (json-object)
197   - "host": IP address (json-string)
198   - "port": port number (json-string)
199   - "family": address family (json-string, "ipv4" or "ipv6")
200
201 Example:
202
203 { "timestamp": {"seconds": 1290688046, "microseconds": 388707},
204   "event": "SPICE_CONNECTED",
205   "data": {
206     "server": { "port": "5920", "family": "ipv4", "host": "127.0.0.1"},
207     "client": {"port": "52873", "family": "ipv4", "host": "127.0.0.1"}
208 }}
209
210
211 SPICE_INITIALIZED
212 -----------------
213
214 Emitted after initial handshake and authentication takes place (if any)
215 and the SPICE channel is up'n'running
216
217 Data:
218
219 - "server": Server information (json-object)
220   - "host": IP address (json-string)
221   - "port": port number (json-string)
222   - "family": address family (json-string, "ipv4" or "ipv6")
223   - "auth": authentication method (json-string, optional)
224 - "client": Client information (json-object)
225   - "host": IP address (json-string)
226   - "port": port number (json-string)
227   - "family": address family (json-string, "ipv4" or "ipv6")
228   - "connection-id": spice connection id.  All channels with the same id
229                      belong to the same spice session (json-int)
230   - "channel-type": channel type.  "1" is the main control channel, filter for
231                     this one if you want track spice sessions only (json-int)
232   - "channel-id": channel id.  Usually "0", might be different needed when
233                   multiple channels of the same type exist, such as multiple
234                   display channels in a multihead setup (json-int)
235   - "tls": whevener the channel is encrypted (json-bool)
236
237 Example:
238
239 { "timestamp": {"seconds": 1290688046, "microseconds": 417172},
240   "event": "SPICE_INITIALIZED",
241   "data": {"server": {"auth": "spice", "port": "5921",
242                       "family": "ipv4", "host": "127.0.0.1"},
243            "client": {"port": "49004", "family": "ipv4", "channel-type": 3,
244                       "connection-id": 1804289383, "host": "127.0.0.1",
245                       "channel-id": 0, "tls": true}
246 }}
247
248
249 WATCHDOG
250 --------
251
252 Emitted when the watchdog device's timer is expired.
253
254 Data:
255
256 - "action": Action that has been taken, it's one of the following (json-string):
257             "reset", "shutdown", "poweroff", "pause", "debug", or "none"
258
259 Example:
260
261 { "event": "WATCHDOG",
262      "data": { "action": "reset" },
263      "timestamp": { "seconds": 1267061043, "microseconds": 959568 } }
264
265 Note: If action is "reset", "shutdown", or "pause" the WATCHDOG event is
266 followed respectively by the RESET, SHUTDOWN, or STOP events.