Skip to content

Latest commit

 

History

History
160 lines (109 loc) · 6.23 KB

CHANGELOG.md

File metadata and controls

160 lines (109 loc) · 6.23 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Run cargo-release to publish a release.

2.2.0 – 2024-10-17

Changed

  • Use kv instead of unstable_kv of log.

2.1.1 – 2023-11-15

Changed

  • Decrease MSRV to 1.66, as actually required (see GH-26).

2.1.0 – 2023-10-19

Changed

  • Depend on rustix instead of libc to get rid of unsafe code (see GH-24).

2.0.0 – 2023-10-01

Added

  • JournalLog::new as default entry point.
  • Check whether journald listens when constructing a JournalLog.

Changed

  • Remove libsystemd dependency, and directly implement journal access.
  • JournalLog::empty now returns std::io::Result<JournalLog>.
  • JournalLog should use a lot less allocations on the hot path; in particular all fields are formatted into a single message buffer.
  • JournalLog no longer has type parameters; extra fields are now pre-formatted upon construction.
  • JournalLog no longer panics when sending a log record to journald fails; instead it silently discards the error.
  • current_exe_identifier now returns Option instead of Result.
  • Bump MSRV to 1.71.0.

Removed

  • JournalLog::default, since instantiation is now fallible.
  • escape_journal_key, because the logger handles this internally.

1.0.0 – 2023-04-29

Added

  • Add JournalLog::default, and new setters for extra fields and the syslog identifier (see GH-17).
  • Add with_syslog_identifier to override the syslog identifier (see GH-16 and GH-17).

Changed

  • Cache the syslog identifier instead of computing it for every log message (see GH-16 and GH-17).

Removed

  • Static LOG instance. Always create your own JournalLog instance now (see GH-17).
  • init and init_with_extra_fields. Create your own JournalLog instance now, and call install (see GH-17).

0.7.0 – 2022-12-23

Changed

  • Bump libsystemd dependency to 0.6.0

0.6.0 – 2022-12-02

Changed

0.5.1 – 2022-10-15

Changed

0.5.0 – 2022-01-28

Changed

0.4.1 – 2021-11-20

Changed

  • Bump libsystemd to 0.4.1 to support socket reuse and fix memfd leak.

0.4.0 – 2021-10-28

Changed

  • Update to libsystemd 0.4.0, and reexport connected_to_journal() from that crate.

Removed

  • Dependencies on libc and nix.

0.3.1 – 2021-10-06

Fixed

  • Compile on arm7 targets (see GH-7).

0.3.0 – 2021-06-07

Added

  • Add JournalLog::with_extra_fields and init_with_extra_fields to add custom fields to every log entry (see GH-3).
  • Add new journal_send to send an individual log record directly to the systemd journal.
  • Add new connected_to_journal function to check for a direct connection to the systemd log in order to automatically upgrade to journal logging in systemd services (see GH-5).
  • Add record key values as custom journal fields (see GH-1).

Changed

  • Do not silently ignore journal errors; instead panic if the logger fails to send a message to the systemd journal.
  • Use CODE_MODULE field for the Rust module path, for compatibility with the slog-journal and systemd crates.

0.2.0 – 2021-06-01

Fixed

0.1.0 – 2021-05-28 (yanked)

Initial release with systemd_journal_logger::LOG and systemd_journal_logger::init.

Do not use this version; it looses multiline messages and has been yanked from crates.io.