blob: 4f290a27360eb152448daf366b0bf1e11d3223cf [file] [log] [blame] [view]
# Logging and tests
## Restricting log severity
By default, a test will fail if it [logs][syslog] a message with a severity of
`ERROR` or higher. This often indicates that an unexpected condition had
occurred during the test, so even if the test passes it's often useful to bring
this to the developer's attention.
This default behavior can be changed, for each test package, to allow logs at
higher severities, or to fail a test that logs at lower severities. For example,
a test might *expect* to log an `ERROR`, in order to cover a failure condition and
recovery steps.
A test might expect to log at `ERROR` severity. For example, the test might be
covering a failure condition & recovery steps. Other tests might expect not to
log anything more severe than `INFO`.
For instance, to allow a test to produce `ERROR` logs:
```gn
fuchsia_component("my-package") {
testonly = true
manifest = "meta/my-test.cmx"
deps = [ ":my_test" ]
}
fuchsia_test_package("my-package") {
test_specs = {
log_settings = {
max_severity = "ERROR"
}
}
test_components = [ ":my-test" ]
}
```
To make the test fail on any message more severe than `INFO`,
set `max_severity` to `"INFO"`.
Valid values for `max_severity`: `TRACE`, `DEBUG`, `INFO`, `WARN`, `ERROR`, `FATAL`.
See also: [choosing severity for log records][choose-severity].
[choose-severity]: /docs/development/diagnostics/logs/severity.md
[syslog]: /docs/development/diagnostics/logs/README.md