我已将google-chrome配置为dump a debug log to chrome_debug.log
in the user-data-dir。
这对于调试一些我们更麻烦的浏览器问题很方便。但是,我有一些超时问题,所以我试图找出日志行上的前缀意味着什么。由于这个日志是从今天(6月11日)开始的,所以我猜测" 0611"部分是今天的约会。我在猜测" / 053512"之后是几秒钟的时间戳?
[296:296:0611/053512:VERBOSE1:password_store_factory.cc(276)] Password storage detected desktop environment: (unknown)
[296:296:0611/053512:WARNING:password_store_factory.cc(322)] Using basic (unencrypted) store for password storage. See http://code.google.com/p/chromium/wiki/LinuxPasswordStorage for more information about password storage options.
[296:296:0611/053512:VERBOSE1:render_process_host_impl.cc(687)] Mojo Channel is enabled on host
[6:6:0611/053512:VERBOSE1:sandbox_linux.cc(68)] Activated seccomp-bpf sandbox for process type: renderer.
[6:6:0611/053512:VERBOSE1:child_thread_impl.cc(321)] Mojo is enabled on child
[6:6:0611/053527:INFO:child_thread_impl.cc(725)] ChildThreadImpl::EnsureConnected()
[296:318:0611/053611:VERBOSE1:chrome_browser_main_posix.cc(216)] Handling shutdown for signal 15.
更好的是指向生成前缀的代码的指针。因为我怀疑它发生了变化(我在Debian Linux上运行chrome v43.0.x)。
doc说:
每行括号括起的样板值的格式为:
[PROCESS_ID:的thread_id:ticks_in_microseconds:LOG_LEVEL:FILE_NAME(LINE_NUMBER)]
但" 0611/053512"很明显不是" ticks_in_microseconds"。
答案 0 :(得分:3)
LogMessage::Init
中的Chrome base/logging.cc定义了chrome_debug.log中日志前缀的内容。时间戳部分由以下内容定义:
struct tm* tm_time = &local_time;
stream_ << std::setfill('0')
<< std::setw(2) << 1 + tm_time->tm_mon
<< std::setw(2) << tm_time->tm_mday
<< '/'
<< std::setw(2) << tm_time->tm_hour
<< std::setw(2) << tm_time->tm_min
<< std::setw(2) << tm_time->tm_sec
<< ':';
那就是:mmDD / HHMMSS(月,日,/,小时,分钟,秒)。
因此,两个时间戳“0611/053512”和“0611/053611”之间的差异不是99秒,而是59秒。