我想记录任何外部API调用headers,body,params被自动记录,我使用的是rails_semantic_logger,是否有任何配置和自定义,将帮助我记录这些细节?
headers
body
params
rails_semantic_logger
wpcxdonn1#
在您的config/initializers/semantic_logger.rb中添加以下配置
config/initializers/semantic_logger.rb
SemanticLogger.configure do |config| # existing configuration config.add_appender( io: STDOUT, level: :debug, formatter: proc { |_, _, _, payload| "#{payload[:method]} #{payload[:url]}\n" \ "Headers: #{payload[:headers].inspect}\n" \ "Body: #{payload[:body]}\n" \ "Params: #{payload[:params].inspect}\n" } ) end
现在您可以按下面所述进行日志记录
# Make an API call response = HTTParty.get('https://api.example.com/users', headers: { 'Authorization' => 'Bearer token' }) # Log the API call logger.debug('External API call', method: response.request.http_method, url: response.request.last_uri.to_s, headers: response.request.headers, body: response.request.body, params: response.request.params)
我希望这对你有帮助。
1条答案
按热度按时间wpcxdonn1#
在您的
config/initializers/semantic_logger.rb
中添加以下配置现在您可以按下面所述进行日志记录
我希望这对你有帮助。