tree: 49786809388bd64548fffe134965a9100cb6e7ab [path history] [tgz]
  1. BUILD.gn
  2. DEPS
  3. OWNERS
  4. README.md
  5. sys_internals_message_handler.cc
  6. sys_internals_message_handler.h
  7. sys_internals_ui.cc
  8. sys_internals_ui.h
chrome/browser/ui/webui/ash/sys_internals/README.md

sys-internals WebUI

The chrome://sys-internals URL provides an overview of system internals in ChromeOS, such as CPU and memory usage.

Related Code

Backend

  • The backend code is located in this folder and includes the main WebUI controller for the page.
  • It also contains the handler of the getSysInfo message, which collects various system metrics.

Frontend

Tests

Workflow

You can use the usual Simple Chrome workflow for development.

Tests

WebUI testing is performed on the host as part of browser_tests. Refer to Testing WebUI Pages for detailed instructions.

Since this is intended to run on the host, the args.gn SHOULD NOT include ChromeOS board-specific import statements, such as:

import("//build/args/chromeos/hatch.gni")

Including such statements may cause the following error when executing the test binary:

error while loading shared libraries: libsync.so: cannot open shared object file: No such file or directory

Example Commands for Running Tests Locally

  1. Prepare the build output folder:

    mkdir -p out/cros_browser_test
    
  2. Generate GN args:

    gn gen out/cros_browser_test --args='target_os="chromeos" use_remoteexec=true use_siso=true is_chrome_branded=true is_component_build=false'
    

    The above assumes you are using a distributed compiler service to speed up compilation. Adjust these arguments as needed.

  3. Build the tests:

    autoninja -C out/cros_browser_test browser_tests
    
  4. Run the tests:

    ./testing/run_with_dummy_home.py \
      testing/xvfb.py \
      out/cros_browser_test/browser_tests \
      --gtest_filter='SysInternalsBrowserTest.*'
    

    Be patient. This process may take several minutes.