Repository navigation
Releases: lithictech/appydays
Release list
0.13.0: Support Sidekiq v7 and 8, Rack v3
Appydays now supports Sidekiq >= 7, Rack >= 3, and Ruby >= 3.2 (dropped support for older versions).
This change should not require any changes, as long as the client libraries are updated. See README for details.
Old:
Sidekiq.logger = Appydays::Loggable::SidekiqJobLogger.logger
Sidekiq.configure_server do |config|
config.options[:job_logger] = Appydays::Loggable::SidekiqJobLogger::JobLogger
endNew:
Sidekiq.configure_server do |config|
config.logger = Appydays::Loggable::SidekiqJobLogger.logger # Or whatever Loggable logger you like
config[:job_logger] = Appydays::Loggable::SidekiqJobLogger::JobLogger
endWhat's Changed
- Make sidekiq and sequel log levels modifiable by @rgalanakis in #17
- Upgrade to sidekiq v7 and higher by @rgalanakis in #18
Full Changelog: 0.12.0...0.13.0
0.12.0: Add `set_job_tags` and `set_release_tags`
Use Appydays::Loggable::SidekiqJobLogger.set_job_tags(tags) for tags to be logged in job_done and job_fail messages, and Appydays::Loggable::RequestLogger.set_request_tags(tags) for tags to be logged in request_finished messages.
Allows you to add context to a single request/job, without adding more messages, or tags to all nested logs.
What's Changed
- Add set_job_tags support for better job logs by @rgalanakis in #15
- Add threadlocal request tags, like job tags by @rgalanakis in #16
Full Changelog: 0.10.0...0.12.0
0.10.0: json_trunc log formatter
What's Changed
Add :json_trunc log formatter by @rgalanakis in #14
Use :json_trunc formatter when configuring semantic logger, such as with Appydays::Loggable.configure_12factor(format: :json_trunc)
SemanticLogger Formatter that truncates large strings in the structured log payload.
If the emitted JSON log is longer than +max_message_len+:
- the payload is walked,
- any strings with a length greater than +max_string_len+ are shortened using +shorten_string+.
Override +shorten_string+ for custom behavior. - any key +:stack_trace+ has its array truncated. Stack traces are very large,
but contain short strings. Override +truncate_stack_trace+ for custom behavior.
Dotenviable: Load env into another hash by @rgalanakis in #13
Allows loading of alternative environments,
usually needed only for testing, but sometimes in other situations (like loading development database urls from a test environment).
Full Changelog: 0.8.0...0.10.0
v0.8.0: Automatic Sentry integration
What's Changed
- Set Sentry extras (if Sentry is defined) whenever with_log_tags is used by @rgalanakis in #12
Full Changelog: 0.7.0...0.8.0
HTTParty formatter, and truncate long Sequel strings
What's Changed
- Add HTTParty formatter by @rgalanakis in #10
Use it like:
require 'appydays/loggable/httparty_formatter'
logger = SemanticLogger["my_app_logger"]
HTTParty.post("https://foo/bar", body: {x: 1}, logger: logger, log_format: :appydays)- Truncate long Sequel logs by @rgalanakis in #10
You can control this behavior, including the size cutoff, truncation message, context, and loging of the untruncated message. Refer toSequel::Database::AppydaysLoggerfor information.
Full Changelog: 0.5.1...0.6.0
v0.5.1: reset_configuration accepts overrides
This is very useful when testing classes that have an after_configured hook.
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's Changed
- Default RACK_ENV within Dotenviable.load by @rgalanakis in #9
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's Changed
- Improve and test spec helpers by @rgalanakis in #7
- Do not log Sequel table exists at error, by @rgalanakis in #8
- Support an array of env keys, not just a string, by @rgalanakis in #8
Full Changelog: v0.3.0...v0.4.0
Fix duration value passed to SemanticLogger
What's Changed
- Loggers with duration need to use milliseconds by @rgalanakis in #6
Full Changelog: v0.2.1...v0.3.0
Fix Sidekiq 6.5 breaking change
Sidekiq no longer has sidekiq/util and this Gem broke, in addition to many others. Fixed in #5