Class: MCollective::Logger::File_logger

### Home Classes Methods

### In Files

- lib/mcollective/logger/file_logger.rb

### Parent

Base

### Methods

- #log
- #set_logging_level
- #start
- #valid_levels

### Files

- COPYING
- README
- Rakefile
- PLACEHOLDER
- PLACEHOLDER

### Class/Module Index

Quicksearch

- MCollective
- MCollective::Agent
- MCollective::Agents
- MCollective::Aggregate
- MCollective::Aggregate::Base
- MCollective::Aggregate::Result
- MCollective::Aggregate::Result::Base
- MCollective::Aggregate::Result::CollectionResult
- MCollective::Aggregate::Result::NumericResult
- MCollective::Application
- MCollective::Applications
- MCollective::Client
- MCollective::Config
- MCollective::Connector
- MCollective::Connector::Base
- MCollective::DDL
- MCollective::DDLValidationError
- MCollective::Data
- MCollective::Data::Base
- MCollective::Data::Result
- MCollective::Discovery
- MCollective::Facts
- MCollective::Facts::Base
- MCollective::Generators
- MCollective::Generators::AgentGenerator
- MCollective::Generators::Base
- MCollective::Generators::DataGenerator
- MCollective::InvalidRPCData
- MCollective::Log
- MCollective::Logger
- MCollective::Logger::Base
- MCollective::Logger::Console_logger
- MCollective::Logger::File_logger
- MCollective::Logger::Syslog_logger
- MCollective::Matcher
- MCollective::Matcher::Parser
- MCollective::Matcher::Scanner
- MCollective::Message
- MCollective::MissingRPCData
- MCollective::MsgDoesNotMatchRequestID
- MCollective::MsgTTLExpired
- MCollective::NotTargettedAtUs
- MCollective::Optionparser
- MCollective::PluginManager
- MCollective::PluginPackager
- MCollective::PluginPackager::AgentDefinition
- MCollective::PluginPackager::StandardDefinition
- MCollective::RPC
- MCollective::RPC::ActionRunner
- MCollective::RPC::Agent
- MCollective::RPC::Audit
- MCollective::RPC::Client
- MCollective::RPC::Helpers
- MCollective::RPC::Progress
- MCollective::RPC::Reply
- MCollective::RPC::Request
- MCollective::RPC::Result
- MCollective::RPC::Stats
- MCollective::RPCAborted
- MCollective::RPCError
- MCollective::Registration
- MCollective::Registration::Base
- MCollective::Runner
- MCollective::RunnerStats
- MCollective::SSL
- MCollective::Security
- MCollective::Security::Base
- MCollective::SecurityValidationFailed
- MCollective::Shell
- MCollective::UnixDaemon
- MCollective::UnknownRPCAction
- MCollective::UnknownRPCError
- MCollective::Util
- MCollective::WindowsDaemon
- Array
- Dir
- Object
- String
- Symbol

No matching classes.

# MCollective::Logger::File_logger

Impliments a file based logger using the standard ruby logger class

To configure you should set:

    - config.logfile
    - config.keeplogs defaults to 2097152
    - config.max_log_size defaults to 5

### Public Instance Methods

log(level, from, msg) click to toggle source

    # File lib/mcollective/logger/file_logger.rb, line 37
    def log(level, from, msg)
      @logger.add(map_level(level)) { "#{from} #{msg}" }
    rescue
      # if this fails we probably cant show the user output at all,
      # STDERR it as last resort
      STDERR.puts("#{level}: #{msg}")
    end

set_logging_level(level) click to toggle source

    # File lib/mcollective/logger/file_logger.rb, line 22
    def set_logging_level(level)
      @logger.level = map_level(level)
    rescue Exception => e
      @logger.level = ::Logger::DEBUG
      log(:error, "", "Could not set logging to #{level} using debug instead: #{e.class} #{e}")
    end

start() click to toggle source

    # File lib/mcollective/logger/file_logger.rb, line 13
    def start
      config = Config.instance

      @logger = ::Logger.new(config.logfile, config.keeplogs, config.max_log_size)
      @logger.formatter = ::Logger::Formatter.new

      set_level(config.loglevel.to_sym)
    end

valid_levels() click to toggle source

    # File lib/mcollective/logger/file_logger.rb, line 29
    def valid_levels
      {:info  => ::Logger::INFO,
        :warn  => ::Logger::WARN,
        :debug => ::Logger::DEBUG,
        :fatal => ::Logger::FATAL,
        :error => ::Logger::ERROR}
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.