Class: Clusters::AgentTokens::TrackUsageService
- Inherits:
-
Object
- Object
- Clusters::AgentTokens::TrackUsageService
- Defined in:
- app/services/clusters/agent_tokens/track_usage_service.rb
Constant Summary collapse
- UPDATE_USED_COLUMN_EVERY =
The ‘UPDATE_USED_COLUMN_EVERY` defines how often the token DB entry can be updated
(40.minutes..55.minutes)
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(token) ⇒ TrackUsageService
constructor
A new instance of TrackUsageService.
Constructor Details
#initialize(token) ⇒ TrackUsageService
Returns a new instance of TrackUsageService.
11 12 13 |
# File 'app/services/clusters/agent_tokens/track_usage_service.rb', line 11 def initialize(token) @token = token end |
Instance Method Details
#execute ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'app/services/clusters/agent_tokens/track_usage_service.rb', line 15 def execute track_values = { last_used_at: Time.current.utc } token.cache_attributes(track_values) if can_update_track_values? log_activity_event!(track_values[:last_used_at]) unless agent.connected? # Use update_column so updated_at is skipped token.update_columns(track_values) end end |