1
0
مراية لـ https://github.com/postalserver/postal.git تم المزامنة 2025-12-01 05:43:04 +00:00

feat: more consistent logging

هذا الالتزام موجود في:
Adam Cooke
2024-02-01 17:41:45 +00:00
الأصل 18ba7140b4
التزام 044058d0f1
21 ملفات معدلة مع 160 إضافات و171 حذوفات

عرض الملف

@@ -0,0 +1,51 @@
begin
def add_exception_to_payload(payload, event)
return unless exception = event.payload[:exception_object]
payload[:exception_class] = exception.class.name
payload[:exception_message] = exception.message
payload[:exception_backtrace] = exception.backtrace[0, 4].join("\n")
end
ActiveSupport::Notifications.subscribe "process_action.action_controller" do |*args|
event = ActiveSupport::Notifications::Event.new(*args)
payload = {
event: "request",
transaction: event.transaction_id,
controller: event.payload[:controller],
action: event.payload[:action],
format: event.payload[:format],
method: event.payload[:method],
path: event.payload[:path],
request_id: event.payload[:request].request_id,
ip_address: event.payload[:request].ip,
status: event.payload[:status],
view_runtime: event.payload[:view_runtime],
db_runtime: event.payload[:db_runtime]
}
add_exception_to_payload(payload, event)
string = "#{payload[:method]} #{payload[:path]} (#{payload[:status]})"
if payload[:exception_class]
Postal.logger.error(string, **payload)
else
Postal.logger.info(string, **payload)
end
end
ActiveSupport::Notifications.subscribe "deliver.action_mailer" do |*args|
event = ActiveSupport::Notifications::Event.new(*args)
Postal.logger.info({
event: "send_email",
transaction: event.transaction_id,
message_id: event.payload[:message_id],
subject: event.payload[:subject],
from: event.payload[:from],
to: event.payload[:to].is_a?(Array) ? event.payload[:to].join(", ") : event.payload[:to].to_s
})
end
end

عرض الملف

@@ -1,6 +1,7 @@
# frozen_string_literal: true
require "postal/config"
if Postal.config&.smtp
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = { address: Postal.config.smtp.host, user_name: Postal.config.smtp.username, password: Postal.config.smtp.password, port: Postal.config.smtp.port || 25 }