# go/logging Changelog

## Unreleased

## v0.5.0 (2025-05-07)

- The default formatter now prints timestamps with microseconds
- Fix the use of syslog on darwin

## v0.4.1 (2022-06-03)

- Ensure all backends implement the interface `BACKEND`.
- `FileBackend` and `SyslogBackend` always returned errors for `Write`
  operations.

## v0.4.0 (2022-05-31)

- Add three new log levels: `Trace`, `Notice` and `Alert` with the following
  order: `Trace`, `Debug`, `Info`, `Notice`, `Warning`, `Error`, `Critical`,
  `Alert`, `Fatal`.
  As Syslog has no equivalent of `Trace`, it is mapped to `Debug`.

## v0.3.0 (2020-05-17)

### Incompatible Changes

- Log level names have changed. They were fully capitalized, only their first
  letter is capitalized now: DEBUG -> Debug, INFO -> Info, etc.
- NoopBackend.Level() now returns DefaultLevel instead of Fatal
- New loggers are created with level `DefaultLevel` instead of `Debug`
- The `Backend` interface now has a `Close()` method, so that backends can free
  the resources they use

### Fixes

- FileBackend now properly closes the file before reopening it (fixes a
  potential file descriptor leak)
- Logger methods did not always acquire locks, causing race conditions