Auto merge of #26011 - paulrouget:vslog.submods, r=jdm

UWP: include submodule logs

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #25997 (GitHub issue number if applicable)
This commit is contained in:
bors-servo 2020-03-24 09:18:14 -04:00 committed by GitHub
commit 6ca767d7f9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 22 deletions

View file

@ -18,9 +18,11 @@ pub struct VSLogger;
impl log::Log for VSLogger { impl log::Log for VSLogger {
fn enabled(&self, metadata: &Metadata) -> bool { fn enabled(&self, metadata: &Metadata) -> bool {
let modules = LOG_MODULE_FILTERS.lock().unwrap(); let modules = LOG_MODULE_FILTERS.lock().unwrap();
let is_module_enabled = modules.is_empty() ||
modules.contains(&String::from(metadata.target())) || modules.is_empty(); modules.iter().any(|module| {
return is_module_enabled; metadata.target() == module ||
metadata.target().starts_with(&format!("{}::", module))
})
} }
fn log(&self, record: &Record) { fn log(&self, record: &Record) {

View file

@ -107,26 +107,22 @@ Servo::Servo(hstring url, hstring args, GLsizei width, GLsizei height,
o.enable_subpixel_text_antialiasing = false; o.enable_subpixel_text_antialiasing = false;
o.vr_pointer = NULL; o.vr_pointer = NULL;
// 7 filter modules. // Note about logs:
/* Sample list of servo modules to filter. // By default: all modules are enabled. Only warn level-logs are displayed.
static char *pfilters[] = { // To change the log level, add "--vslogger-level debug" to o.args.
"servo", // To only print logs from specific modules, add their names to pfilters.
"simpleservo", // For example:
"simpleservo::jniapi", // static char *pfilters[] = {
"simpleservo::gl_glue::egl", // "servo",
// Show JS errors by default. // "simpleservo",
"script::dom::bindings::error", // "script::dom::bindings::error", // Show JS errors by default.
// Show GL errors by default. // "canvas::webgl_thread", // Show GL errors by default.
"canvas::webgl_thread", // "compositing",
"compositing::compositor", // "constellation",
"constellation::constellation", // };
}; // o.vslogger_mod_list = pfilters;
*/ // o.vslogger_mod_size = sizeof(pfilters) / sizeof(pfilters[0]);
// Example Call when *pfilters[] is used:
// o.vslogger_mod_list = pfilters; // servo log modules
// o.vslogger_mod_size = sizeof(pfilters) / sizeof(pfilters[0]); //
// Important: Number of modules in pfilters
o.vslogger_mod_list = NULL; o.vslogger_mod_list = NULL;
o.vslogger_mod_size = 0; o.vslogger_mod_size = 0;