From cc74145033e4a8b393825f04a79deedb97411971 Mon Sep 17 00:00:00 2001 From: TianLun Song Date: Mon, 27 Jan 2025 09:00:54 +0800 Subject: [PATCH] Update application_controller.rb --- app/controllers/application_controller.rb | 26 +++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index bd760aa..dd33c8d 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -25,8 +25,34 @@ class ApplicationController < ActionController::Base /ArkWeb/ ] before_action :set_locale + before_action :log_browser_info after_action :track_action + def log_browser_info + # 构建详细的浏览器信息 + browser_info = { + user_agent: request.user_agent, + path: request.path, + browser_name: browser.name, + browser_version: browser.version, + platform: browser.platform.name, + device: browser.device.name, + mobile: browser.mobile?, + tablet: browser.tablet?, + bot: browser.bot?, + matched_patterns: matched_browser_patterns, + timestamp: Time.current + } + + # 使用 Rails.logger 记录信息(both development and production) + # Rails.logger.info "Browser Info: #{browser_info.to_json}" + + # 如果是被拦截的浏览器,记录额外信息 + unless browser_allowed? + Rails.logger.warn "Browser Blocked: #{browser_info.to_json}" + end + end + protected def track_action