module MongodbLogger::MustacheHelpers
Public Instance Methods
class_if_current(path = '')
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 18 def class_if_current(path = '') 'class="active"' if current_page[0, path.size] == path end
current_page()
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 14 def current_page url_path request.path_info.sub('/','') end
log_data(log)
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 36 def log_data(log) main_msg = "No message" if log['messages'] && log['messages']['info'] main_msg = string_from_log_message(log['messages']['info']).truncate(300, :separator => ' ') end if log['is_exception'] && log['messages'] && log['messages']['error'] main_msg = string_from_log_message(log['messages']['error']).truncate(300, :separator => ' ') end # return value { '_id' => log['_id'].to_s, 'web_url' => url_path("log/#{log['_id']}"), 'main_msg' => main_msg, 'is_exception_class' => (log['is_exception'] ? 'failure' : 'success'), 'method' => log['method'], 'url' => log['url'], 'request_time' => log['request_time'], 'ip' => log['ip'], 'params' => pretty_hash(log['params']) } end
log_data_json(log)
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 58 def log_data_json(log) MultiJson.dump(log_data(log)) end
path_prefix()
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 10 def path_prefix request.env['SCRIPT_NAME'] end
pretty_hash(hash)
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 26 def pretty_hash(hash) begin Marshal::dump(hash) h(hash.to_yaml).gsub(" ", " ") rescue Exception => e # errors from Marshal or YAML # Object couldn't be dumped, perhaps because of singleton methods -- this is the fallback h(hash.inspect) end end
string_from_log_message(message)
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 22 def string_from_log_message(message) message.is_a?(Array) ? message.join("\n") : message.to_s end
url_path(*path_parts)
click to toggle source
# File lib/mongodb_logger/server/helpers/mustache_helpers.rb, line 6 def url_path(*path_parts) [ path_prefix, path_parts ].join("/").squeeze('/') end