# # Fluentd Mesosphere Metadata Filter Plugin # # Copyright 2015 Red Hat, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # module Fluent # Parses Marathon and Chronos data from docker to make fluentd logs more # useful. class MesosphereFilter < Fluent::Filter Fluent::Plugin.register_filter('mesosphere_filter', self) config_param :cache_size, :integer, default: 1000 config_param :cache_ttl, :integer, default: 60 * 60 config_param :get_container_id_tag, :bool, default: true config_param :container_id_attr, :string, default: 'container_id' config_param :merge_json_log, :bool, default: true config_param :cronos_task_regex, :string, default: '(?[a-z0-9]([-a-z0-9_]*[a-z0-9_]))-(?[^-]+)-(?