Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tracing: record errors as &dyn Errors when possible #1606

Merged
merged 2 commits into from
Apr 16, 2022
Merged

Conversation

hawkw
Copy link
Member

@hawkw hawkw commented Apr 14, 2022

tracing-core v0.1.26 improved support for recording
std::error::Error trait objects as structured values rather than as
fmt::Display or fmt::Debug. This allows the tracing subscriber to
log these errors somewhat nicer, such as including the error's cause
as a separate field (if it has one).

This branch updates the tracing-core dependency to v0.1.26, and
changes tracing events that previously recorded dyn Errors using
fmt::Display to record them using the Value impl for dyn Error
instead. I didn't touch any errors that had not already been converted
to a Box<dyn Error + ...>.

`tracing-core` v0.1.26 improved support for recording
`std::error::Error` trait objects as structured values rather than as
`fmt::Display` or `fmt::Debug`. This allows the `tracing` subscriber to
log these errors somewhat nicer, such as including the error's `cause`
as a separate field (if it has one).

This branch updates the `tracing-core` dependency to v0.1.26, and
changes `tracing` events that previously recorded `dyn Error`s using
`fmt::Display` to record them using the `Value` impl for `dyn Error`
instead. I didn't touch any errors that had not already been converted
to a `Box<dyn Error + ...>`.
@hawkw hawkw requested a review from a team as a code owner April 14, 2022 23:44
@olix0r olix0r merged commit d611a15 into main Apr 16, 2022
@olix0r olix0r deleted the eliza/nice-errors branch April 16, 2022 18:56
olix0r added a commit to linkerd/linkerd2 that referenced this pull request Apr 19, 2022
This release fixes an issue where proxies would not honor the cluster's
opaqueness settings for non-pod/service addresses. This could cause
protocol detection to be peformed, for instance, when using off-cluster
databases.

This release also disables the use of regexes in Linkerd log filters
(i.e., as set by `LINKERD2_PROXY_LOG`). Malformed log directices could,
in theory, cause a proxy to stop responding.

---

* build(deps): bump redox_syscall from 0.2.11 to 0.2.12 (linkerd/linkerd2-proxy#1561)
* build(deps): bump tokio-util from 0.7.0 to 0.7.1 (linkerd/linkerd2-proxy#1566)
* build(deps): bump async-trait from 0.1.52 to 0.1.53 (linkerd/linkerd2-proxy#1562)
* build(deps): bump quote from 1.0.16 to 1.0.17 (linkerd/linkerd2-proxy#1563)
* build(deps): bump getrandom from 0.2.5 to 0.2.6 (linkerd/linkerd2-proxy#1564)
* build(deps): bump syn from 1.0.89 to 1.0.90 (linkerd/linkerd2-proxy#1569)
* build(deps): bump tj-actions/changed-files from 18.4 to 18.5 (linkerd/linkerd2-proxy#1571)
* build(deps): bump indexmap from 1.8.0 to 1.8.1 (linkerd/linkerd2-proxy#1572)
* build(deps): bump lock_api from 0.4.6 to 0.4.7 (linkerd/linkerd2-proxy#1576)
* build(deps): bump parking_lot_core from 0.9.1 to 0.9.2 (linkerd/linkerd2-proxy#1575)
* build(deps): bump h2 from 0.3.12 to 0.3.13 (linkerd/linkerd2-proxy#1579)
* build(deps): bump trust-dns-resolver from 0.21.1 to 0.21.2 (linkerd/linkerd2-proxy#1577)
* build(deps): bump tracing-subscriber from 0.3.9 to 0.3.10 (linkerd/linkerd2-proxy#1582)
* build(deps): bump EmbarkStudios/cargo-deny-action from 1.2.12 to 1.2.15 (linkerd/linkerd2-proxy#1581)
* build(deps): bump slab from 0.4.5 to 0.4.6 (linkerd/linkerd2-proxy#1583)
* build(deps): bump tj-actions/changed-files from 18.5 to 18.7 (linkerd/linkerd2-proxy#1589)
* build(deps): bump js-sys from 0.3.56 to 0.3.57 (linkerd/linkerd2-proxy#1585)
* build(deps): bump proc-macro2 from 1.0.36 to 1.0.37 (linkerd/linkerd2-proxy#1588)
* build(deps): bump web-sys from 0.3.56 to 0.3.57 (linkerd/linkerd2-proxy#1590)
* build(deps): bump syn from 1.0.90 to 1.0.91 (linkerd/linkerd2-proxy#1586)
* build(deps): bump redox_syscall from 0.2.12 to 0.2.13 (linkerd/linkerd2-proxy#1578)
* build(deps): bump codecov/codecov-action from 2.1.0 to 3 (linkerd/linkerd2-proxy#1584)
* build(deps): bump libc from 0.2.121 to 0.2.122 (linkerd/linkerd2-proxy#1591)
* tracing: disable regular expression matching in log filters (linkerd/linkerd2-proxy#1580)
* readme: Fix broken link to fuzzing report (linkerd/linkerd2-proxy#1573)
* Fix inbound fuzzing build (linkerd/linkerd2-proxy#1594)
* ci: Run the release workflow on changes (linkerd/linkerd2-proxy#1595)
* ci: Only run the release workflow on PRs that touch the workflow (linkerd/linkerd2-proxy#1601)
* ci: Fix check-each workflow(#1597)
* build(deps): bump tracing-subscriber from 0.3.10 to 0.3.11 (linkerd/linkerd2-proxy#1600)
* build(deps): bump tracing from 0.1.32 to 0.1.33 (linkerd/linkerd2-proxy#1599)
* build(deps): bump quote from 1.0.17 to 1.0.18 (linkerd/linkerd2-proxy#1598)
* Update to linkerd2-proxy-api v0.5 and tonic v0.7 (linkerd/linkerd2-proxy#1596)
* build(deps): bump httparse from 1.6.0 to 1.7.0 (linkerd/linkerd2-proxy#1602)
* build(deps): bump flate2 from 1.0.22 to 1.0.23 (linkerd/linkerd2-proxy#1603)
* dev: Limit devcontainer memory usage to 8GB (linkerd/linkerd2-proxy#1604)
* build(deps): bump libc from 0.2.122 to 0.2.123 (linkerd/linkerd2-proxy#1605)
* build(deps): bump actions/checkout from 3.0.0 to 3.0.1 (linkerd/linkerd2-proxy#1607)
* build(deps): bump tracing from 0.1.33 to 0.1.34 (linkerd/linkerd2-proxy#1609)
* tracing: record errors as `&dyn Error`s when possible (linkerd/linkerd2-proxy#1606)
* build(deps): bump rustls-pemfile from 0.3.0 to 1.0.0 (linkerd/linkerd2-proxy#1611)
* build(deps): bump ipnet from 2.4.0 to 2.5.0 (linkerd/linkerd2-proxy#1613)
* outbound: Add logging for endpoint opaqueness (linkerd/linkerd2-proxy#1614)
* outbound: Preserve opaqueness on unknown endpoints (linkerd/linkerd2-proxy#1617)
* build(deps): bump libc from 0.2.123 to 0.2.124 (linkerd/linkerd2-proxy#1616)
* Update Rust to v1.60 (linkerd/linkerd2-proxy#1615)

Signed-off-by: Oliver Gould <ver@buoyant.io>
olix0r added a commit to linkerd/linkerd2 that referenced this pull request Apr 19, 2022
This release fixes an issue where proxies would not honor the cluster's
opaqueness settings for non-pod/service addresses. This could cause
protocol detection to be peformed, for instance, when using off-cluster
databases.

This release also disables the use of regexes in Linkerd log filters
(i.e., as set by `LINKERD2_PROXY_LOG`). Malformed log directices could,
in theory, cause a proxy to stop responding.

---

* build(deps): bump redox_syscall from 0.2.11 to 0.2.12 (linkerd/linkerd2-proxy#1561)
* build(deps): bump tokio-util from 0.7.0 to 0.7.1 (linkerd/linkerd2-proxy#1566)
* build(deps): bump async-trait from 0.1.52 to 0.1.53 (linkerd/linkerd2-proxy#1562)
* build(deps): bump quote from 1.0.16 to 1.0.17 (linkerd/linkerd2-proxy#1563)
* build(deps): bump getrandom from 0.2.5 to 0.2.6 (linkerd/linkerd2-proxy#1564)
* build(deps): bump syn from 1.0.89 to 1.0.90 (linkerd/linkerd2-proxy#1569)
* build(deps): bump tj-actions/changed-files from 18.4 to 18.5 (linkerd/linkerd2-proxy#1571)
* build(deps): bump indexmap from 1.8.0 to 1.8.1 (linkerd/linkerd2-proxy#1572)
* build(deps): bump lock_api from 0.4.6 to 0.4.7 (linkerd/linkerd2-proxy#1576)
* build(deps): bump parking_lot_core from 0.9.1 to 0.9.2 (linkerd/linkerd2-proxy#1575)
* build(deps): bump h2 from 0.3.12 to 0.3.13 (linkerd/linkerd2-proxy#1579)
* build(deps): bump trust-dns-resolver from 0.21.1 to 0.21.2 (linkerd/linkerd2-proxy#1577)
* build(deps): bump tracing-subscriber from 0.3.9 to 0.3.10 (linkerd/linkerd2-proxy#1582)
* build(deps): bump EmbarkStudios/cargo-deny-action from 1.2.12 to 1.2.15 (linkerd/linkerd2-proxy#1581)
* build(deps): bump slab from 0.4.5 to 0.4.6 (linkerd/linkerd2-proxy#1583)
* build(deps): bump tj-actions/changed-files from 18.5 to 18.7 (linkerd/linkerd2-proxy#1589)
* build(deps): bump js-sys from 0.3.56 to 0.3.57 (linkerd/linkerd2-proxy#1585)
* build(deps): bump proc-macro2 from 1.0.36 to 1.0.37 (linkerd/linkerd2-proxy#1588)
* build(deps): bump web-sys from 0.3.56 to 0.3.57 (linkerd/linkerd2-proxy#1590)
* build(deps): bump syn from 1.0.90 to 1.0.91 (linkerd/linkerd2-proxy#1586)
* build(deps): bump redox_syscall from 0.2.12 to 0.2.13 (linkerd/linkerd2-proxy#1578)
* build(deps): bump codecov/codecov-action from 2.1.0 to 3 (linkerd/linkerd2-proxy#1584)
* build(deps): bump libc from 0.2.121 to 0.2.122 (linkerd/linkerd2-proxy#1591)
* tracing: disable regular expression matching in log filters (linkerd/linkerd2-proxy#1580)
* readme: Fix broken link to fuzzing report (linkerd/linkerd2-proxy#1573)
* Fix inbound fuzzing build (linkerd/linkerd2-proxy#1594)
* ci: Run the release workflow on changes (linkerd/linkerd2-proxy#1595)
* ci: Only run the release workflow on PRs that touch the workflow (linkerd/linkerd2-proxy#1601)
* ci: Fix check-each workflow(#1597)
* build(deps): bump tracing-subscriber from 0.3.10 to 0.3.11 (linkerd/linkerd2-proxy#1600)
* build(deps): bump tracing from 0.1.32 to 0.1.33 (linkerd/linkerd2-proxy#1599)
* build(deps): bump quote from 1.0.17 to 1.0.18 (linkerd/linkerd2-proxy#1598)
* Update to linkerd2-proxy-api v0.5 and tonic v0.7 (linkerd/linkerd2-proxy#1596)
* build(deps): bump httparse from 1.6.0 to 1.7.0 (linkerd/linkerd2-proxy#1602)
* build(deps): bump flate2 from 1.0.22 to 1.0.23 (linkerd/linkerd2-proxy#1603)
* dev: Limit devcontainer memory usage to 8GB (linkerd/linkerd2-proxy#1604)
* build(deps): bump libc from 0.2.122 to 0.2.123 (linkerd/linkerd2-proxy#1605)
* build(deps): bump actions/checkout from 3.0.0 to 3.0.1 (linkerd/linkerd2-proxy#1607)
* build(deps): bump tracing from 0.1.33 to 0.1.34 (linkerd/linkerd2-proxy#1609)
* tracing: record errors as `&dyn Error`s when possible (linkerd/linkerd2-proxy#1606)
* build(deps): bump rustls-pemfile from 0.3.0 to 1.0.0 (linkerd/linkerd2-proxy#1611)
* build(deps): bump ipnet from 2.4.0 to 2.5.0 (linkerd/linkerd2-proxy#1613)
* outbound: Add logging for endpoint opaqueness (linkerd/linkerd2-proxy#1614)
* outbound: Preserve opaqueness on unknown endpoints (linkerd/linkerd2-proxy#1617)
* build(deps): bump libc from 0.2.123 to 0.2.124 (linkerd/linkerd2-proxy#1616)
* Update Rust to v1.60 (linkerd/linkerd2-proxy#1615)

Signed-off-by: Oliver Gould <ver@buoyant.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants