Sha256: a852d2b7af3d9958852c0175a09ca65306f03d5ea13af173add40e3af8a5933b

Contents?: true

Size: 1.03 KB

Versions: 3

Compression:

Stored size: 1.03 KB

Contents

require 'logger'

module Chatterbot

  #
  # routines for outputting log messages, as well as logging tweets
  # to the database if desired.
  module Logging

    #
    # log a message
    def debug(s)
      logger.debug s unless ! logging?
    end

    #
    # something really bad happened, print it out and log it
    def critical(s)
      puts s
      debug s
    end
    
    #
    # log a tweet to the database
    def log(txt, source=nil)
      return unless log_tweets?

      data = {:txt => txt, :bot => botname, :created_at => Time.now}
      if source != nil
        data = data.merge(:user => source[:from_user],
                          :source_id => source[:id],
                          :source_tweet => source[:text])
      end

      # populate the table
      db[:tweets].insert(data)
    end

protected
    #
    # initialize a Logger object, writing to log_dest
    def logger
      # log to the dest specified in the config file, rollover after 10mb of data
      @_logger ||= Logger.new(log_dest, 0, 1024 * 1024)
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
chatterbot-0.2.2 lib/chatterbot/logging.rb
chatterbot-0.2.1 lib/chatterbot/logging.rb
chatterbot-0.2.0 lib/chatterbot/logging.rb