Kiosk mode health monitoring test automation |
|||||
Issue descriptionWe would like to automate health monitoring tests for devices in kiosk mode. Below is a list of tests we currently execute manually, along with potential ways to automate each of them. atwilson@ / abodenha@ - Who is the right person to assign this to get some of the logging in place for validation purposes. Or if logging is already in place, can we get information about which device logs to look at. 1. Remote log upload - System logs are uploaded to cpanel every 12 hours and within few minutes of a reboot. --- Potential automated setup / verification: Each time system logs are uploaded, logs should be added in a local log file that can be queried via autotest. Test setup in the lab would enroll the device and reboot it before validating against the logs. 2. Remote command screen capture - Admin can request a screen capture of enrolled device that is in kiosk mode. --- Question: Does this utilize some Chrome API? --- Potential automated setup / verification: If cpanel triggers screen capture using a Chrome API, it will be sufficient for us to make a call to the same Chrome API via autotest and verification can be done by querying the local device logs as long as logs are updated each time a screen shot is uploaded to cpanel. 3. Remote command reboot - Admin can request a reboot of an enrolled device in kiosk mode. --- Question: Is this done using a Chrome API? --- Potential automated setup / verification: If cpanel triggers device reboot using Chrome API, we could do the same using the same API via autotest and verify that the device reboots and auto launches the app. 4. Device sends a heartbeat to DM server - Heartbeat signal is sent to cpanel every 2 mintues for device in kiosk mode with auto launched apps. --- Potential automated setup / verification: Each time heartbeat signal is sent to cpanel, logs should be added locally on the devices that can be queried via autotest for validation. 5. Other information sent to cpanel includes: - Kiosk App info - Network info (LAN IP, WAN IP, and the last time either of them changed) - CPU usage - Memory usage - Disk Space --- Potential automated setup / verification: Each time any of this data is sent to cpanel, logs should be added locally on the device that can be queried via autotest for validation.
,
Nov 3 2016
Marton, can you take a look at the request above - I think you've added some of these already, can you document what logs are there, and also which are missing and reassign to me so I can find a resource to add the missing logs?
,
Nov 4 2016
We are logging a few of these to the syslog (/var/log/messages, this file also gets uploaded). 1. There is a syslog message after each system log upload (https://cs.chromium.org/chromium/src/chrome/browser/chromeos/policy/system_log_uploader.cc?l=197-227) E.g: "2016-10-28T11:55:14.359808+02:00 ERR chrome[568]: [568:568:1028/115514:INFO:system_log_uploader.cc(198)] Upload successful." 2. There is a syslog message after each uploaded screenshot (https://cs.chromium.org/chromium/src/chrome/browser/chromeos/policy/remote_commands/device_command_screenshot_job.cc?l=112-135) 3. There is a syslog message before rebooting: E.g: "2016-10-28T11:46:17.168444+02:00 ERR chrome[13704]: [13704:13704:1028/114617:INFO:device_command_reboot_job.cc(70)] Rebooting immediately." And another syslog message which should happen after the reboot, meaning the device rebooted after the command was issued: E.g: "2016-10-28T11:55:14.610221+02:00 ERR chrome[568]: [568:568:1028/115514:WARNING:device_command_reboot_job.cc(63)] Ignoring reboot command issued 31.4119s before current boot time" (https://cs.chromium.org/chromium/src/chrome/browser/chromeos/policy/remote_commands/device_command_reboot_job.cc?l=49-72) 4. We only have DVLOGs here currently: https://cs.chromium.org/chromium/src/chrome/browser/chromeos/policy/heartbeat_scheduler.cc?l=397 5. There is a syslog message after upload (https://cs.chromium.org/chromium/src/chrome/browser/chromeos/policy/status_uploader.cc?l=201-218): E.g: "2016-10-28T12:02:00.227744+02:00 ERR chrome[559]: [559:559:1028/120200:INFO:status_uploader.cc(207)] Status upload successful"
,
Nov 4 2016
Thanks, Marton! harpreet, let me know if these logs are sufficient for your purposes. For #4, let me know if you'd like me to change those logs in heartbeat_scheduler.cc to VLOG() or if DVLOG() is good enough (and if so, exactly which ones I should change).
,
Nov 4 2016
atwilson@ - what is the difference between VLOG() and DVLOG() ? Where these logs stored locally on the device? Seems like for everything else (expect #4) the logs can be found in /var/log/messages. Would it make sense to do the same for $3 as well? Also, for #2 and #3, are chrome API's being used to trigger remote screen capture and reboot? If so, which ones? I am trying to understand how we may be able to 'simulate' / initiate a remote reboot or screen capture using autotest without interacting with cpanel.
,
Jun 21 2017
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by omrilio@chromium.org
, Nov 1 2016