重构,修正了许多的空指针异常
This commit is contained in:
parent
c668b72dac
commit
061e4599c3
|
@ -1,17 +1,51 @@
|
|||
# 显示和清理系统日志
|
||||
class SystemLogController < ApplicationController
|
||||
# 默认每页显示20条记录
|
||||
before_filter :require_login ,:only =>:index
|
||||
|
||||
before_filter :require_login
|
||||
before_filter :require_admin ,:only =>:clear
|
||||
# 默认每页显示20条记录
|
||||
PER_PAGE = 20
|
||||
layout "base"
|
||||
include SystemLogHelper
|
||||
#查看所有日志
|
||||
def index
|
||||
@logs = SystemLog.logo_data(params[:page]||1,params[:per]||PER_PAGE,params[:search] )
|
||||
@logs = SystemLog.logo_data(params[:page]||1,params[:per]||PER_PAGE,params[:search] , params[:day])
|
||||
@logs
|
||||
#@access_module = params[:access_module] unless params[:access_module].nil?
|
||||
end
|
||||
|
||||
def clear
|
||||
SystemLog.clear
|
||||
#清除日志
|
||||
def clear day
|
||||
SystemLog.clear day
|
||||
redirect_to :action => :index
|
||||
end
|
||||
|
||||
#访问分析
|
||||
def access_analysis
|
||||
#解析日志,然后逆序
|
||||
@log_result = SystemLog.analysis(params[:day]).reverse[1...-1]
|
||||
@access_module = Hash.new
|
||||
#如果日誌為空
|
||||
if @log_result && !@log_result.empty?
|
||||
#将数组中的模块访问统计出来放到hash中 每条记录的第四个值是Controller#action的形式
|
||||
@log_result.collect! {|r| @access_module[r[3]].nil? ?
|
||||
@access_module[r[3]] = 1 : @access_module[r[3]] +=1 }
|
||||
# 去掉key可能为空记录 排序,然后取逆序
|
||||
@access_module = @access_module.delete_if{|k,v| k.nil?}.sort_by{|key,val| val}.reverse
|
||||
else
|
||||
@access_module
|
||||
end
|
||||
end
|
||||
|
||||
#耗时分析
|
||||
def time_analysis
|
||||
#解析日志
|
||||
@log_result = SystemLog.analysis(params[:day]).reverse[1...-1]
|
||||
if @log_result && !@log_result.empty?
|
||||
#分页
|
||||
@log_result = Kaminari.paginate_array(@log_result).page(params[:page]||1).per(params[:per]||PER_PAGE)
|
||||
else
|
||||
@log_result = []
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue