fetlife/rollout · error · ArgumentError
Invalid log event: #{event}
Error message
Invalid log event: #{event} What it means
Error "Invalid log event: #{event}" thrown in fetlife/rollout.
Source
Thrown at lib/rollout/logging.rb:142
created_at: Time.now,
)
storage_key = events_storage_key(after.name)
@storage.zadd(storage_key, -event.timestamp, event.serialize)
@storage.zremrangebyrank(storage_key, @history_length, -1)
if @global
@storage.zadd(global_events_storage_key, -event.timestamp, event.serialize)
@storage.zremrangebyrank(global_events_storage_key, @history_length, -1)
end
end
def log(event, *args)
return unless logging_enabled?
unless respond_to?(event)
raise ArgumentError, "Invalid log event: #{event}"
end
expected_arity = method(event).arity
unless args.count == expected_arity
raise(
ArgumentError,
"Invalid number of arguments for event '#{event}': expected #{expected_arity} but got #{args.count}",
)
end
public_send(event, *args)
end
CONTEXT_THREAD_KEY = :rollout_logging_context
WITHOUT_THREAD_KEY = :rollout_logging_disabled
def with_context(context)
raise ArgumentError, "context must be a Hash" unless context.is_a?(Hash)View on GitHub (pinned to bd318a9488)
Solutions
- Pass an event name that is a public method of the logging module, such as :activate, :deactivate, or :update.
- Call log with a symbol matching a defined event, e.g. log(:activate, feature).
- Check the event symbol for typos against the event methods defined in lib/rollout/logging.rb before calling log.
Example fix
log(:activate, feature) # not log(:activte, feature)
When it happens
Trigger: Thrown at lib/rollout/logging.rb:142 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of fetlife/rollout@bd318a9488 (2026-08-23).
Data as JSON: /api/errors/5e159b66143cf44f.
Report an issue: GitHub.