move the payload filter to the respond_with method helper

Fixes #5630
This commit is contained in:
Pere Urbon-Bayes 2016-07-19 16:25:44 +02:00
parent 51fd381b04
commit b0e1ded0fb
3 changed files with 5 additions and 6 deletions

View file

@ -5,9 +5,12 @@ module LogStash::Api::AppHelpers
def respond_with(data, options={})
as = options.fetch(:as, :json)
filter = options.fetch(:filter, "")
pretty = params.has_key?("pretty")
if as == :json
selected_fields = extract_fields(filter.to_s.strip)
data.select! { |k,v| selected_fields.include?(k) } unless selected_fields.empty?
unless options.include?(:exclude_default_metadata)
data = default_metadata.merge(data)
end

View file

@ -9,15 +9,13 @@ module LogStash
end
get "/?:filter?" do
selected_fields = extract_fields(params["filter"].to_s.strip)
payload = {
:jvm => jvm_payload,
:process => process_payload,
:mem => mem_payload,
:pipeline => pipeline_payload
}
payload.select! { |k,v| selected_fields.include?(k) } unless selected_fields.empty?
respond_with payload
respond_with(payload, {:filter => params["filter"]})
end
private

View file

@ -26,7 +26,6 @@ module LogStash
end
get "/?:filter?" do
selected_fields = extract_fields(params["filter"].to_s.strip)
payload = {
:events => stats_command.events,
:jvm => {
@ -35,8 +34,7 @@ module LogStash
:memory => stats_command.memory
}
}
payload.select! { |k,v| selected_fields.include?(k) } unless selected_fields.empty?
respond_with payload
respond_with(payload, {:filter => params["filter"]})
end
end