require 'logger'
require 'syslog/logger'
require 'cloud_powers/helpers/lang_help'
require 'cloud_powers/helpers/logic_help'
require 'cloud_powers/helpers/path_help'
module Smash
module CloudPowers
module Helpers
# methods to help change convert between different cases, like the
# from_json and to_camel and other help with Ruby
include Smash::CloudPowers::LangHelp
# methods to help awareness, dynamic code and other such fun
include Smash::CloudPowers::LogicHelp
# methods to help find locations of files and directories. This provides
# common locations for code to reference.
include Smash::CloudPowers::PathHelp
# creates a default logger
#
# Parameters
# * log_to +String+ (optional) - location to send logging information to; default is STDOUT
#
# Returns
# +Logger+
#
# Notes
# * TODO: at least make this have overridable defaults
def create_logger(log_to = STDOUT)
logger = Logger.new(log_to)
logger.datetime_format = '%Y-%m-%d %H:%M:%S'
logger
end
# Gets the path from the environment and sets @log_file using the path
#
# Returns
# @log_file +String+
#
# Notes
# * See +#zfind()+
def log_file
@log_file ||= zfind('LOG_FILE')
end
# Returns An instance of Logger, cached as @logger@log_file path
#
# Returns
# +Logger+
#
# Notes
# * See +#create_logger+
def logger
@logger ||= create_logger
end
end
end
end