0
Files
src/docs/chrome_os_logging.md
Ian Barkley-Yeung 5e0d370c2b docs: Noted how to get LOG(INFO) messages
Noted how to get LOG(INFO) messages on Chrome OS, if desired

BUG=none
TEST=none
R=derat@chromium.org

Change-Id: I761d5ea6b69aa3ecee6aa6b0882384dd91ca328d
Reviewed-on: https://chromium-review.googlesource.com/c/1395722
Reviewed-by: Dan Erat <derat@chromium.org>
Commit-Queue: Ian Barkley-Yeung <iby@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620024}
2019-01-04 19:10:39 +00:00

43 lines
1.9 KiB
Markdown

# Chrome Logging on Chrome OS
## Locations
Messages written via the logging macros in [base/logging.h] end up in different
locations depending on Chrome's state:
* `/var/log/ui/ui.LATEST` contains data written to stdout and stderr by Chrome
(and technically also [session_manager]). This generally comprises messages
that are written very early in Chrome's startup process, before logging has
been initialized.
* `/var/log/chrome/chrome` contains messages that are written before a user has
logged in.
* `/home/chronos/user/log/chrome` contains messages that are written while a
user is logged in. Note that this path is within the user's encrypted home
directory and is only accessible while the user is logged in.
All of the above files are actually symlinks. Older log files can be found
alongside them in the same directories.
Also notable is `/var/log/messages`. This file contains general syslog messages,
but it also includes messages written by `session_manager` that may be useful in
determining when or why Chrome started or stopped.
## Severity
By default, only messages logged at severity `WARNING` or higher are written to
disk. More concretely, `LOG(INFO)` messages are discarded.
To enable `LOG(INFO)` message, pass `--log-level=0` to Chrome. See the
[Passing Chrome flags from session_manager] document for more details, and
specifically the `/etc/chrome_dev.conf` mechanism that can be used to
change flags on development devices.
## Verbose Logging
When actively debugging issues, Chrome's `--vmodule` flag is sometimes used to
temporarily log messages at lower severities for particular modules.
[base/logging.h]: ../base/logging.h
[session_manager]: https://chromium.googlesource.com/chromiumos/platform2/+/master/login_manager/
[Passing Chrome flags from session_manager]: https://chromium.googlesource.com/chromiumos/platform2/+/master/login_manager/docs/flags.md