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