log os
This commit is contained in:
@@ -146,6 +146,8 @@ Rails.application.configure do
|
|||||||
|
|
||||||
current_user = controller.instance_variable_get(:@current_user)
|
current_user = controller.instance_variable_get(:@current_user)
|
||||||
|
|
||||||
|
os = DetectBrowserDevice.os(controller.request.user_agent) if ENV['MULTITENANT'] == 'true'
|
||||||
|
|
||||||
{
|
{
|
||||||
host: controller.request.host,
|
host: controller.request.host,
|
||||||
fwd: controller.request.remote_ip,
|
fwd: controller.request.remote_ip,
|
||||||
@@ -161,6 +163,7 @@ Rails.application.configure do
|
|||||||
params[:submit_form_slug] ||
|
params[:submit_form_slug] ||
|
||||||
params[:template_slug]).to_s.first(5)
|
params[:template_slug]).to_s.first(5)
|
||||||
}.compact_blank,
|
}.compact_blank,
|
||||||
|
**(os ? { os: } : {}),
|
||||||
uid: current_user.try(:id),
|
uid: current_user.try(:id),
|
||||||
aid: current_user.try(:account_id),
|
aid: current_user.try(:account_id),
|
||||||
rid: resource.try(:id),
|
rid: resource.try(:id),
|
||||||
|
|||||||
@@ -26,6 +26,45 @@ module DetectBrowserDevice
|
|||||||
Silk
|
Silk
|
||||||
/ix
|
/ix
|
||||||
|
|
||||||
|
WINDOWS_USER_AGENT_REGEXP = /
|
||||||
|
Windows|
|
||||||
|
Win64 |
|
||||||
|
Win32 |
|
||||||
|
WOW64
|
||||||
|
/ix
|
||||||
|
|
||||||
|
ANDROID_USER_AGENT_REGEXP = /
|
||||||
|
Android|
|
||||||
|
Silk |
|
||||||
|
Kindle
|
||||||
|
/ix
|
||||||
|
|
||||||
|
IOS_USER_AGENT_REGEXP = /
|
||||||
|
iPhone|
|
||||||
|
iPad |
|
||||||
|
iPod |
|
||||||
|
iOS
|
||||||
|
/ix
|
||||||
|
|
||||||
|
MACOS_USER_AGENT_REGEXP = /
|
||||||
|
Macintosh |
|
||||||
|
Mac\ OS\ X |
|
||||||
|
MacIntel
|
||||||
|
/ix
|
||||||
|
|
||||||
|
LINUX_USER_AGENT_REGEXP = /
|
||||||
|
Linux |
|
||||||
|
X11 |
|
||||||
|
CrOS |
|
||||||
|
Ubuntu |
|
||||||
|
Fedora |
|
||||||
|
FreeBSD|
|
||||||
|
OpenBSD|
|
||||||
|
NetBSD
|
||||||
|
/ix
|
||||||
|
|
||||||
|
SDK_USER_AGENT_REGEXP = /\ADocuSeal (?<sdk>Ruby|Python|PHP|Java|C#|JS|Go|CLI) v/i
|
||||||
|
|
||||||
def call(user_agent)
|
def call(user_agent)
|
||||||
return if user_agent.blank?
|
return if user_agent.blank?
|
||||||
|
|
||||||
@@ -34,4 +73,21 @@ module DetectBrowserDevice
|
|||||||
|
|
||||||
'desktop'
|
'desktop'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def os(user_agent)
|
||||||
|
return if user_agent.blank?
|
||||||
|
|
||||||
|
sdk = user_agent[SDK_USER_AGENT_REGEXP, :sdk]
|
||||||
|
|
||||||
|
return sdk.downcase if sdk
|
||||||
|
|
||||||
|
case user_agent
|
||||||
|
when WINDOWS_USER_AGENT_REGEXP then 'windows'
|
||||||
|
when ANDROID_USER_AGENT_REGEXP then 'android'
|
||||||
|
when IOS_USER_AGENT_REGEXP then 'ios'
|
||||||
|
when MACOS_USER_AGENT_REGEXP then 'macos'
|
||||||
|
when LINUX_USER_AGENT_REGEXP then 'linux'
|
||||||
|
else 'other'
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user