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

Implement the ability to more logically share level hierarchies #134

Merged
merged 3 commits into from
Dec 4, 2023

Conversation

evanphx
Copy link
Contributor

@evanphx evanphx commented Nov 10, 2023

This implements the SyncParentLevel flag, which alters how Levels are propagated amongst sub-loggers. It's mutually exclusive with IndependentLevels.

When set, sub-loggers will take on the level of a direct parent/grandparent/etc and be unaffected by sibling sub-loggers changing their level.

This allows for more obvious hierarchies of sub-loggers to be created and used that share a common level.

@evanphx evanphx requested a review from mpalmi November 10, 2023 00:54
Comment on lines +318 to +321
// a.SetLevel(Warn)
// a.GetLevel() => Warn
// b.GetLevel() => Warn
// c.GetLevel() => Warn
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤔 I find this behaviour surprising.

My expectation would be that if some sub-logger (in this case b) has had its level specifically overridden (e.g. by an operator enabling more detailed level on a sub-component), than a subsequent change to the global level should not override the more specific, explicitly set level. It should cascade to all sub-loggers that haven't had an explicitly set level though.

I'm thinking of a UX where a peice of software allows operators to specify a targetted log level e.g via ENV var. Something like FOO_SUBCOMPONENT_LOG=TRACE while investigating an issue.

If they subsequently choose to reconfigure the application e.g. via config file to global log at DEBUG instead of INFO I'd expect that to apply to everything except the component that has already been overridden.

In this example, unlike the comment here, the override is for more detail. There could be an argument that you might want different behaviour depending on whether the override is for more or less detail, but I feel like it's less surprising in all cases to continue to honour more specific sub-logger overrides when changing the parent/global level.

Is there a use-case I'm not seeing where this behavior seems better?

Copy link
Contributor

@mpalmi mpalmi Nov 10, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Evan and I chatted about this briefly and we contemplated the principle of least surprise. I don't feel strongly either way, but I think there are a couple of things to consider for Vault's implementation -- specifically around the distinction between /sys/loggers and your environment variable example.

In my mind, our implementation is slightly different from the environment variable case, since logger level state (at least for Vault) is entirely in program memory. With environment variables, you have state outside the scope of the program that would be honored on restart; whereas in Vault, that's not the case. I thought it would be less surprising to keep reload and restart behavior consistent and advertise the fact that /sys/loggers is really for transient maintenance tasks.

The flip side of that is the maintenance tasks might include reload, at which point this UX could become burdensome (edit: This may not actually be true. I think that log level is only sync'ed on reload if an operator changes the server's HCL, so someone would have to intentionally reset all levels.)

Like I said, I don't feel too strongly either way, but just some thoughts to consider.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Funny you ask this, I asked @mpalmi the same question. Effectively the idea here is that parent logger changes win over any previous decisions the sub-loggers made. @mpalmi thoughts on this? I think this is probably the biggest behavior that we need to sort out.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The idea put forth was that if, at runtime, a decision to put a hierarchy into TRACE mode is requested, everything in the hierarchy should get that change. If a specific component in hierarchy had been set to ERROR at program start, the desire to set the whole hierachry into TRACE would need to override ERROR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@banks In your specific example, the user would have to be careful to configure the toplevel first, then components down the hierarchy second. In that way, they could achieve the same results.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't feel super strongly. At least to me I feel like I'd expect more specific override to take precedence and yes - for it's whole subtree. I've not thought through the actual use-cases or UX of vault /sys/loggers though.

But I think if I'd bothered to make an API call to set a logging level on a specific component, I'd not expect a general change of the logging level via some other mechanism to override that. I don't think I'd lose sleep over it, but it at least wouldn't be my expectation 🤷 .

If you thought this through Mike and this is the preferred UX then I'm fine as long as we document that clearly (both here and in our product docs etc.)

Copy link
Member

@banks banks Nov 10, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

forever detached from changes by a?

Actually that's a bit more nuanced. I guess what I'd expect would be that if the component specific override for b is removed, then b and it's whole subtree are "re-attached" to the parent and start to respect that setting again.

I have no idea if anyone cares enough to warrant implementing that though! It would probably need an API change too so that it was possible to set a sub-logger back to "follow parent" level rather than some specific level...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, the ability to specify "hey, this is an override" and then "hey, reset this back to not an override" isn't available (and it would be probably a bit confusing).

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I put in a vote for "parent always changing level for children is less surprising".

It's possible to achieve the detached logging levels with IndependentLevels and some use of state + sublogger hooks (I have a related poc in Consul: hashicorp/consul#16665)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, the current approach seems to be the least surprising -- especially if overrides cannot be reset.

intlogger.go Outdated Show resolved Hide resolved
Co-authored-by: Paul Banks <banks@banksco.de>
Copy link
Contributor

@mpalmi mpalmi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Thanks for getting to this @evanphx!

@evanphx evanphx merged commit 852f2c3 into main Dec 4, 2023
19 checks passed
jooola referenced this pull request in hetznercloud/terraform-provider-hcloud Dec 12, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/hashicorp/go-hclog](https://togithub.com/hashicorp/go-hclog)
| require | minor | `v1.5.0` -> `v1.6.1` |

---

### Release Notes

<details>
<summary>hashicorp/go-hclog (github.com/hashicorp/go-hclog)</summary>

###
[`v1.6.1`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.1):
Fix forcing color

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.0...v1.6.1)

#### What's Changed

- Fix colors not being forced on correctly. by
[@&#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/136](https://togithub.com/hashicorp/go-hclog/pull/136)

**Full Changelog**:
hashicorp/go-hclog@v1.6.0...v1.6.1

###
[`v1.6.0`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.0):
New level inheritance mode

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.0)

This release adds the ability to have sub-loggers arrange themselves
into a tree and sync the level changes downward in the tree.

#### What's Changed

- SEC-090: Automated trusted workflow pinning (2023-04-03) by
[@&#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- Docs: InferLevelsWithTimestamp relies on InferLevels being true by
[@&#8203;peteski22](https://togithub.com/peteski22) in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)
- Implement the ability to more logically share level hierarchies by
[@&#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/134](https://togithub.com/hashicorp/go-hclog/pull/134)

#### New Contributors

- [@&#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) made
their first contribution in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- [@&#8203;peteski22](https://togithub.com/peteski22) made their first
contribution in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)

**Full Changelog**:
hashicorp/go-hclog@v1.5.0...v1.6.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/hetznercloud/terraform-provider-hcloud).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
codeboten referenced this pull request in open-telemetry/opentelemetry-collector-contrib Dec 14, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/hashicorp/go-hclog](https://togithub.com/hashicorp/go-hclog)
| require | minor | `v1.5.0` -> `v1.6.2` |

---

### Release Notes

<details>
<summary>hashicorp/go-hclog (github.com/hashicorp/go-hclog)</summary>

###
[`v1.6.2`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.2):
Fix level syncing

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.1...v1.6.2)

#### What's Changed

- Conside if the level is to be used separately from if the levels
should be calculated by [@&#8203;evanphx](https://togithub.com/evanphx)
in
[https://github.com/hashicorp/go-hclog/pull/137](https://togithub.com/hashicorp/go-hclog/pull/137)

**Full Changelog**:
hashicorp/go-hclog@v1.6.1...v1.6.2

###
[`v1.6.1`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.1):
Fix forcing color

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.0...v1.6.1)

#### What's Changed

- Fix colors not being forced on correctly. by
[@&#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/136](https://togithub.com/hashicorp/go-hclog/pull/136)

**Full Changelog**:
hashicorp/go-hclog@v1.6.0...v1.6.1

###
[`v1.6.0`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.0):
New level inheritance mode

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.0)

This release adds the ability to have sub-loggers arrange themselves
into a tree and sync the level changes downward in the tree.

#### What's Changed

- SEC-090: Automated trusted workflow pinning (2023-04-03) by
[@&#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- Docs: InferLevelsWithTimestamp relies on InferLevels being true by
[@&#8203;peteski22](https://togithub.com/peteski22) in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)
- Implement the ability to more logically share level hierarchies by
[@&#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/134](https://togithub.com/hashicorp/go-hclog/pull/134)

#### New Contributors

- [@&#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) made
their first contribution in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- [@&#8203;peteski22](https://togithub.com/peteski22) made their first
contribution in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)

**Full Changelog**:
hashicorp/go-hclog@v1.5.0...v1.6.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on tuesday" (UTC), Automerge - At any
time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/open-telemetry/opentelemetry-collector-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com>
haraldh referenced this pull request in matter-labs/vault-auth-tee Dec 21, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/hashicorp/go-hclog](https://togithub.com/hashicorp/go-hclog)
| require | minor | `v1.5.0` -> `v1.6.2` |

---

### Release Notes

<details>
<summary>hashicorp/go-hclog (github.com/hashicorp/go-hclog)</summary>

###
[`v1.6.2`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.2):
Fix level syncing

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.1...v1.6.2)

#### What's Changed

- Conside if the level is to be used separately from if the levels
should be calculated by [@&#8203;evanphx](https://togithub.com/evanphx)
in
[https://github.com/hashicorp/go-hclog/pull/137](https://togithub.com/hashicorp/go-hclog/pull/137)

**Full Changelog**:
hashicorp/go-hclog@v1.6.1...v1.6.2

###
[`v1.6.1`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.1):
Fix forcing color

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.0...v1.6.1)

#### What's Changed

- Fix colors not being forced on correctly. by
[@&#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/136](https://togithub.com/hashicorp/go-hclog/pull/136)

**Full Changelog**:
hashicorp/go-hclog@v1.6.0...v1.6.1

###
[`v1.6.0`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.0):
New level inheritance mode

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.0)

This release adds the ability to have sub-loggers arrange themselves
into a tree and sync the level changes downward in the tree.

#### What's Changed

- SEC-090: Automated trusted workflow pinning (2023-04-03) by
[@&#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- Docs: InferLevelsWithTimestamp relies on InferLevels being true by
[@&#8203;peteski22](https://togithub.com/peteski22) in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)
- Implement the ability to more logically share level hierarchies by
[@&#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/134](https://togithub.com/hashicorp/go-hclog/pull/134)

#### New Contributors

- [@&#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) made
their first contribution in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- [@&#8203;peteski22](https://togithub.com/peteski22) made their first
contribution in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)

**Full Changelog**:
hashicorp/go-hclog@v1.5.0...v1.6.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/matter-labs/vault-auth-tee).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
cparkins referenced this pull request in AmadeusITGroup/opentelemetry-collector-contrib Jan 10, 2024
…#29814)

[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/hashicorp/go-hclog](https://togithub.com/hashicorp/go-hclog)
| require | minor | `v1.5.0` -> `v1.6.2` |

---

### Release Notes

<details>
<summary>hashicorp/go-hclog (github.com/hashicorp/go-hclog)</summary>

###
[`v1.6.2`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.2):
Fix level syncing

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.1...v1.6.2)

#### What's Changed

- Conside if the level is to be used separately from if the levels
should be calculated by [@&open-telemetry#8203;evanphx](https://togithub.com/evanphx)
in
[https://github.com/hashicorp/go-hclog/pull/137](https://togithub.com/hashicorp/go-hclog/pull/137)

**Full Changelog**:
hashicorp/go-hclog@v1.6.1...v1.6.2

###
[`v1.6.1`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.1):
Fix forcing color

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.6.0...v1.6.1)

#### What's Changed

- Fix colors not being forced on correctly. by
[@&open-telemetry#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/136](https://togithub.com/hashicorp/go-hclog/pull/136)

**Full Changelog**:
hashicorp/go-hclog@v1.6.0...v1.6.1

###
[`v1.6.0`](https://togithub.com/hashicorp/go-hclog/releases/tag/v1.6.0):
New level inheritance mode

[Compare
Source](https://togithub.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.0)

This release adds the ability to have sub-loggers arrange themselves
into a tree and sync the level changes downward in the tree.

#### What's Changed

- SEC-090: Automated trusted workflow pinning (2023-04-03) by
[@&open-telemetry#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- Docs: InferLevelsWithTimestamp relies on InferLevels being true by
[@&open-telemetry#8203;peteski22](https://togithub.com/peteski22) in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)
- Implement the ability to more logically share level hierarchies by
[@&open-telemetry#8203;evanphx](https://togithub.com/evanphx) in
[https://github.com/hashicorp/go-hclog/pull/134](https://togithub.com/hashicorp/go-hclog/pull/134)

#### New Contributors

- [@&open-telemetry#8203;hashicorp-tsccr](https://togithub.com/hashicorp-tsccr) made
their first contribution in
[https://github.com/hashicorp/go-hclog/pull/128](https://togithub.com/hashicorp/go-hclog/pull/128)
- [@&open-telemetry#8203;peteski22](https://togithub.com/peteski22) made their first
contribution in
[https://github.com/hashicorp/go-hclog/pull/135](https://togithub.com/hashicorp/go-hclog/pull/135)

**Full Changelog**:
hashicorp/go-hclog@v1.5.0...v1.6.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on tuesday" (UTC), Automerge - At any
time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/open-telemetry/opentelemetry-collector-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com>
apricote pushed a commit to hetznercloud/fleeting-plugin-hetzner that referenced this pull request Sep 12, 2024
…loud/fleeting-plugin-hetzner!37)

This MR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | require | minor | `v1.1.0` -> `v1.6.3` |

---

### Release Notes

<details>
<summary>hashicorp/go-hclog (github.com/hashicorp/go-hclog)</summary>

### [`v1.6.3`](https://github.com/hashicorp/go-hclog/releases/tag/v1.6.3): Optional JSON escaping

[Compare Source](hashicorp/go-hclog@v1.6.2...v1.6.3)

#### What's Changed

-   hclogvet: updates for go1.22 by [@&#8203;shoenig](https://github.com/shoenig) in hashicorp/go-hclog#138
-   support configure json escape when log in json format by [@&#8203;Ericwww](https://github.com/Ericwww) in hashicorp/go-hclog#141

#### New Contributors

-   [@&#8203;Ericwww](https://github.com/Ericwww) made their first contribution in hashicorp/go-hclog#141

**Full Changelog**: hashicorp/go-hclog@v1.6.2...v1.6.3

### [`v1.6.2`](https://github.com/hashicorp/go-hclog/releases/tag/v1.6.2): Fix level syncing

[Compare Source](hashicorp/go-hclog@v1.6.1...v1.6.2)

#### What's Changed

-   Conside if the level is to be used separately from if the levels should be calculated by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#137

**Full Changelog**: hashicorp/go-hclog@v1.6.1...v1.6.2

### [`v1.6.1`](https://github.com/hashicorp/go-hclog/releases/tag/v1.6.1): Fix forcing color

[Compare Source](hashicorp/go-hclog@v1.6.0...v1.6.1)

#### What's Changed

-   Fix colors not being forced on correctly. by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#136

**Full Changelog**: hashicorp/go-hclog@v1.6.0...v1.6.1

### [`v1.6.0`](https://github.com/hashicorp/go-hclog/releases/tag/v1.6.0): New level inheritance mode

[Compare Source](hashicorp/go-hclog@v1.5.0...v1.6.0)

This release adds the ability to have sub-loggers arrange themselves into a tree and sync the level changes downward in the tree.

#### What's Changed

-   SEC-090: Automated trusted workflow pinning (2023-04-03) by [@&#8203;hashicorp-tsccr](https://github.com/hashicorp-tsccr) in hashicorp/go-hclog#128
-   Docs: InferLevelsWithTimestamp relies on InferLevels being true by [@&#8203;peteski22](https://github.com/peteski22) in hashicorp/go-hclog#135
-   Implement the ability to more logically share level hierarchies by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#134

#### New Contributors

-   [@&#8203;hashicorp-tsccr](https://github.com/hashicorp-tsccr) made their first contribution in hashicorp/go-hclog#128
-   [@&#8203;peteski22](https://github.com/peteski22) made their first contribution in hashicorp/go-hclog#135

**Full Changelog**: hashicorp/go-hclog@v1.5.0...v1.6.0

### [`v1.5.0`](https://github.com/hashicorp/go-hclog/releases/tag/v1.5.0): Better color and sublogger mods

[Compare Source](hashicorp/go-hclog@v1.4.0...v1.5.0)

#### What's Changed

-   Update LICENSE by [@&#8203;CalebAlbers](https://github.com/CalebAlbers) in hashicorp/go-hclog#121
-   build: update to go1.20 and x/tools to 0.5.0 by [@&#8203;shoenig](https://github.com/shoenig) in hashicorp/go-hclog#125
-   Improve AutoColor functionality by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#123
-   Add ability to wrap new subloggers by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#126
-   \[COMPLIANCE] Add Copyright and License Headers by [@&#8203;hashicorp-copywrite](https://github.com/hashicorp-copywrite) in hashicorp/go-hclog#124

#### New Contributors

-   [@&#8203;CalebAlbers](https://github.com/CalebAlbers) made their first contribution in hashicorp/go-hclog#121
-   [@&#8203;hashicorp-copywrite](https://github.com/hashicorp-copywrite) made their first contribution in hashicorp/go-hclog#124

**Full Changelog**: hashicorp/go-hclog@v1.4.0...v1.5.0

### [`v1.4.0`](https://github.com/hashicorp/go-hclog/releases/tag/v1.4.0): Add GetLevel

[Compare Source](hashicorp/go-hclog@v1.3.1...v1.4.0)

What it says on the tin, add GetLevel to the Logger interface.

#### What's Changed

-   Add GetLevel to Logger interface by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#120

**Full Changelog**: hashicorp/go-hclog@v1.3.1...v1.4.0

### [`v1.3.1`](https://github.com/hashicorp/go-hclog/releases/tag/v1.3.1): Improved multi line output rendering

[Compare Source](hashicorp/go-hclog@v1.3.0...v1.3.1)

#### What's Changed

-   When rendering multiple line output, still quote the individual lines by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#119

**Full Changelog**: hashicorp/go-hclog@v1.3.0...v1.3.1

### [`v1.3.0`](https://github.com/hashicorp/go-hclog/releases/tag/v1.3.0): Field Colorization

[Compare Source](hashicorp/go-hclog@v1.2.2...v1.3.0)

This version adds the ability to colorize fields for improved readability.

#### What's Changed

-   build: update go tools dependency by [@&#8203;pkazmierczak](https://github.com/pkazmierczak) in hashicorp/go-hclog#117
-   Add `ColorHeaderAndFields` logger option by [@&#8203;picatz](https://github.com/picatz) in hashicorp/go-hclog#118

#### New Contributors

-   [@&#8203;pkazmierczak](https://github.com/pkazmierczak) made their first contribution in hashicorp/go-hclog#117
-   [@&#8203;picatz](https://github.com/picatz) made their first contribution in hashicorp/go-hclog#118

**Full Changelog**: hashicorp/go-hclog@v1.2.2...v1.3.0

### [`v1.2.2`](https://github.com/hashicorp/go-hclog/releases/tag/v1.2.2): Minor formatting fix

[Compare Source](hashicorp/go-hclog@v1.2.1...v1.2.2)

#### What's Changed

-   fix various typos in comments by [@&#8203;marco-m](https://github.com/marco-m) in hashicorp/go-hclog#115
-   Omit empty colon when message is empty. Fixes [#&#8203;109](hashicorp/go-hclog#109) by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#116

**Full Changelog**: hashicorp/go-hclog@v1.2.1...v1.2.2

### [`v1.2.1`](https://github.com/hashicorp/go-hclog/releases/tag/v1.2.1): testify/go.yaml fix

[Compare Source](hashicorp/go-hclog@v1.2.0...v1.2.1)

This bumps the version of testify and go.yaml that are referenced by go-hclog to fix a security issue in go.yaml.

### [`v1.2.0`](https://github.com/hashicorp/go-hclog/releases/tag/v1.2.0): More Restrained Color

[Compare Source](hashicorp/go-hclog@v1.1.0...v1.2.0)

#### What's Changed

-   Add Windows, MacOS to GitHub Actions build matrix by [@&#8203;dolmen](https://github.com/dolmen) in hashicorp/go-hclog#107
-   Add ability to only colorize the header, not the whole log message by [@&#8203;evanphx](https://github.com/evanphx) in hashicorp/go-hclog#108

#### New Contributors

-   [@&#8203;dolmen](https://github.com/dolmen) made their first contribution in hashicorp/go-hclog#107

**Full Changelog**: hashicorp/go-hclog@v1.1.0...v1.2.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMjQuMSIsInVwZGF0ZWRJblZlciI6IjM3LjMyNC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants