1 QEMU Monitor Protocol Events
2 ============================
7 Emitted when a disk I/O error occurs.
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
20 { "event": "BLOCK_IO_ERROR",
21 "data": { "device": "ide0-hd1",
24 "timestamp": { "seconds": 1265044230, "microseconds": 450486 } }
26 Note: If action is "stop", a STOP event will eventually follow the
32 Emitted when the Virtual Machine is reseted.
39 "timestamp": { "seconds": 1267041653, "microseconds": 9518 } }
44 Emitted when the Virtual Machine resumes execution.
51 "timestamp": { "seconds": 1271770767, "microseconds": 582542 } }
56 Emitted when the guest changes the RTC time.
60 - "offset": delta against the host UTC in seconds (json-number)
64 { "event": "RTC_CHANGE",
65 "data": { "offset": 78 },
66 "timestamp": { "seconds": 1267020223, "microseconds": 435656 } }
71 Emitted when the Virtual Machine is powered down.
77 { "event": "SHUTDOWN",
78 "timestamp": { "seconds": 1267040730, "microseconds": 682951 } }
80 Note: If the command-line option "-no-shutdown" has been specified, a STOP
81 event will eventually follow the SHUTDOWN event.
86 Emitted when the Virtual Machine is stopped.
93 "timestamp": { "seconds": 1267041730, "microseconds": 281295 } }
98 Emitted when a VNC client establishes a connection.
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")
114 { "event": "VNC_CONNECTED",
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 } }
123 Note: This event is emitted before any authentication takes place, thus
124 the authentication ID is not provided.
129 Emitted when the connection is closed.
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)
147 { "event": "VNC_DISCONNECTED",
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 } }
158 Emitted after authentication takes place (if any) and the VNC session is
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)
177 { "event": "VNC_INITIALIZED",
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 } }
185 SPICE_CONNECTED, SPICE_DISCONNECTED
186 -----------------------------------
188 Emitted when a SPICE client connects or disconnects.
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")
203 { "timestamp": {"seconds": 1290688046, "microseconds": 388707},
204 "event": "SPICE_CONNECTED",
206 "server": { "port": "5920", "family": "ipv4", "host": "127.0.0.1"},
207 "client": {"port": "52873", "family": "ipv4", "host": "127.0.0.1"}
214 Emitted after initial handshake and authentication takes place (if any)
215 and the SPICE channel is up'n'running
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)
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}
252 Emitted when the watchdog device's timer is expired.
256 - "action": Action that has been taken, it's one of the following (json-string):
257 "reset", "shutdown", "poweroff", "pause", "debug", or "none"
261 { "event": "WATCHDOG",
262 "data": { "action": "reset" },
263 "timestamp": { "seconds": 1267061043, "microseconds": 959568 } }
265 Note: If action is "reset", "shutdown", or "pause" the WATCHDOG event is
266 followed respectively by the RESET, SHUTDOWN, or STOP events.
272 Emitted when a block job has completed.
276 - "type": Job type ("stream" for image streaming, json-string)
277 - "device": Device name (json-string)
278 - "len": Maximum progress value (json-int)
279 - "offset": Current progress value (json-int)
280 On success this is equal to len.
281 On failure this is less than len.
282 - "speed": Rate limit, bytes per second (json-int)
283 - "error": Error message (json-string, optional)
284 Only present on failure. This field contains a human-readable
285 error message. There are no semantics other than that streaming
286 has failed and clients should not try to interpret the error
291 { "event": "BLOCK_JOB_COMPLETED",
292 "data": { "type": "stream", "device": "virtio-disk0",
293 "len": 10737418240, "offset": 10737418240,
295 "timestamp": { "seconds": 1267061043, "microseconds": 959568 } }
301 Emitted when a block job has been cancelled.
305 - "type": Job type ("stream" for image streaming, json-string)
306 - "device": Device name (json-string)
307 - "len": Maximum progress value (json-int)
308 - "offset": Current progress value (json-int)
309 On success this is equal to len.
310 On failure this is less than len.
311 - "speed": Rate limit, bytes per second (json-int)
315 { "event": "BLOCK_JOB_CANCELLED",
316 "data": { "type": "stream", "device": "virtio-disk0",
317 "len": 10737418240, "offset": 134217728,
319 "timestamp": { "seconds": 1267061043, "microseconds": 959568 } }