Class: ActionReporter::Current
- Inherits:
-
Object
- Object
- ActionReporter::Current
- Defined in:
- lib/action_reporter/current.rb
Overview
Thread-safe storage for ActionReporter context attributes Uses ActiveSupport::IsolatedExecutionState when available (fiber/request-aware), and falls back to Thread.current for non-Rails/non-ActiveSupport environments.
Constant Summary collapse
- STORAGE_PREFIX =
:action_reporter
Class Attribute Summary collapse
-
.storage_adapter ⇒ Object
Returns the value of attribute storage_adapter.
Class Method Summary collapse
- .current_remote_addr ⇒ Object
- .current_remote_addr=(addr) ⇒ Object
- .current_request_uuid ⇒ Object
- .current_request_uuid=(uuid) ⇒ Object
- .current_user ⇒ Object
- .current_user=(user) ⇒ Object
- .reset ⇒ Object
- .reset_storage_adapter! ⇒ Object
- .transaction_id ⇒ Object
- .transaction_id=(transaction_id) ⇒ Object
- .transaction_name ⇒ Object
- .transaction_name=(transaction_name) ⇒ Object
Class Attribute Details
.storage_adapter ⇒ Object
Returns the value of attribute storage_adapter.
12 13 14 |
# File 'lib/action_reporter/current.rb', line 12 def storage_adapter @storage_adapter end |
Class Method Details
.current_remote_addr ⇒ Object
42 43 44 |
# File 'lib/action_reporter/current.rb', line 42 def current_remote_addr read(:current_remote_addr) end |
.current_remote_addr=(addr) ⇒ Object
46 47 48 |
# File 'lib/action_reporter/current.rb', line 46 def current_remote_addr=(addr) write(:current_remote_addr, addr) end |
.current_request_uuid ⇒ Object
34 35 36 |
# File 'lib/action_reporter/current.rb', line 34 def current_request_uuid read(:current_request_uuid) end |
.current_request_uuid=(uuid) ⇒ Object
38 39 40 |
# File 'lib/action_reporter/current.rb', line 38 def current_request_uuid=(uuid) write(:current_request_uuid, uuid) end |
.current_user ⇒ Object
26 27 28 |
# File 'lib/action_reporter/current.rb', line 26 def current_user read(:current_user) end |
.current_user=(user) ⇒ Object
30 31 32 |
# File 'lib/action_reporter/current.rb', line 30 def current_user=(user) write(:current_user, user) end |
.reset ⇒ Object
66 67 68 69 70 71 72 |
# File 'lib/action_reporter/current.rb', line 66 def reset write(:current_user, nil) write(:current_request_uuid, nil) write(:current_remote_addr, nil) write(:transaction_id, nil) write(:transaction_name, nil) end |
.reset_storage_adapter! ⇒ Object
22 23 24 |
# File 'lib/action_reporter/current.rb', line 22 def reset_storage_adapter! @storage_adapter = nil end |
.transaction_id ⇒ Object
50 51 52 |
# File 'lib/action_reporter/current.rb', line 50 def transaction_id read(:transaction_id) end |
.transaction_id=(transaction_id) ⇒ Object
54 55 56 |
# File 'lib/action_reporter/current.rb', line 54 def transaction_id=(transaction_id) write(:transaction_id, transaction_id) end |
.transaction_name ⇒ Object
58 59 60 |
# File 'lib/action_reporter/current.rb', line 58 def transaction_name read(:transaction_name) end |
.transaction_name=(transaction_name) ⇒ Object
62 63 64 |
# File 'lib/action_reporter/current.rb', line 62 def transaction_name=(transaction_name) write(:transaction_name, transaction_name) end |