class BaseMetricsParser
Public Instance Methods
clean_data(data_to_clean = [])
click to toggle source
# File lib/fluent/plugin/base_metrics_parser.rb, line 20 def clean_data(data_to_clean = []) cleaned_data = [] data_to_clean.each do |interim_data| cleaned_data << interim_data unless interim_data.include? '#' end cleaned_data end
emit_parsed_metrics(platform_metrics)
click to toggle source
# File lib/fluent/plugin/base_metrics_parser.rb, line 36 def emit_parsed_metrics(platform_metrics) normalized_data = normalise_data(platform_metrics) cleaned_data = clean_data(normalized_data) hash_data_array = format_data(cleaned_data, @metric_prefix, '.') serialized_data = serialize_data(hash_data_array) serialized_data.each do |interim_data| @router.emit(@tag, Fluent::Engine.now, interim_data) end end
normalise_data(data_to_normalize = [])
click to toggle source
# File lib/fluent/plugin/base_metrics_parser.rb, line 6 def normalise_data(data_to_normalize = []) normalized_data = [] if data_to_normalize.length == 1 data_to_normalize.each do |interim_data| normalized_data = interim_data.split(/\\n+|\\r+/).reject(&:empty?) end else data_to_normalize.each_line do |interim_data| normalized_data << interim_data.strip unless interim_data == "\n" end end normalized_data end
serialize_data(hashed_data_array = [])
click to toggle source
# File lib/fluent/plugin/base_metrics_parser.rb, line 28 def serialize_data(hashed_data_array = []) serialised_data = [] hashed_data_array.each do |interim_data| serialised_data << JSON.parse(interim_data.to_json) end serialised_data end