fluentd-ui/app/controllers/api_controller.rb
2014-06-25 15:10:15 +09:00

38 lines
762 B
Ruby

class ApiController < ApplicationController
def tree
render json: Treeview.tree(params[:path])
end
def file_preview
render json: file_tail(params[:file]) || []
end
def empty_json
render json: []
end
def regexp_preview
matches = file_tail(params[:file]).map do |line|
result = {
:whole => line,
:matches => {},
}
m = line.match(params[:regexp])
next result unless m
m.names.each do |name|
result[:matches][name] = m[name]
end
result
end
render json: matches.compact
end
def grok_to_regexp
grok = GrokConverter.new
grok.load_patterns(Rails.root + "vendor/patterns")
render text: grok.convert_to_regexp(params[:grok_str]).source
end
end