module ActiveSupport::Deprecation::Behavior - activesupport-4.2.4 Documentation

# module ActiveSupport::Deprecation::Behavior

### Attributes

debug[RW]

Whether to print a backtrace along with the warning.

### Public Instance Methods

behavior() click to toggle source

Returns the current behavior or if one isn't set, defaults to `:stderr`.

    # File lib/active_support/deprecation/behaviors.rb, line 46
    def behavior
      @behavior ||= [DEFAULT_BEHAVIORS[:stderr]]
    end

behavior=(behavior) click to toggle source

Sets the behavior to the specified value. Can be a single value, array, or an object that responds to `call`.

Available behaviors:

`raise`

  Raise `ActiveSupport::DeprecationException`.

`stderr`

  Log all deprecation warnings to +$stderr+.

`log`

  Log all deprecation warnings to `Rails.logger`.

`notify`

  Use `ActiveSupport::Notifications` to notify `deprecation.rails`.

`silence`

  Do nothing.

Setting behaviors only affects deprecations that happen after boot time. Deprecation warnings raised by gems are not affected by this setting because they happen before Rails boots up.

    ActiveSupport::Deprecation.behavior = :stderr
    ActiveSupport::Deprecation.behavior = [:stderr, :log]
    ActiveSupport::Deprecation.behavior = MyCustomHandler
    ActiveSupport::Deprecation.behavior = ->(message, callstack) {
      # custom stuff
    }

    # File lib/active_support/deprecation/behaviors.rb, line 71
    def behavior=(behavior)
      @behavior = Array(behavior).map { |b| DEFAULT_BEHAVIORS[b] || b }
    end