Skip to content

Instantly share code, notes, and snippets.

@andsel
Last active September 29, 2023 08:12
Show Gist options
  • Save andsel/671062defbf493a346b20c2801f9b3f4 to your computer and use it in GitHub Desktop.
Save andsel/671062defbf493a346b20c2801f9b3f4 to your computer and use it in GitHub Desktop.
List plugins shipped which aren't in tier1 and tier2
#!/bin/ruby
require "json"
PLUGIN_DEFINITIONS = [
#tier1
#inputs
"logstash-input-azure_event_hubs", "logstash-input-beats", "logstash-input-elasticsearch", "logstash-input-file",
"logstash-input-generator", "logstash-input-heartbeat", "logstash-input-http", "logstash-input-http_poller",
"logstash-input-redis", "logstash-input-s3", "logstash-input-stdin", "logstash-input-syslog", "logstash-input-udp",
"logstash-input-elastic_agent",
#codecs
"logstash-codec-avro", "logstash-codec-cef", "logstash-codec-es_bulk", "logstash-codec-json",
"logstash-codec-json_lines", "logstash-codec-line", "logstash-codec-multiline", "logstash-codec-plain",
"logstash-codec-rubydebug",
#filters
"logstash-filter-cidr", "logstash-filter-clone", "logstash-filter-csv", "logstash-filter-date", "logstash-filter-dissect",
"logstash-filter-dns", "logstash-filter-drop", "logstash-filter-elasticsearch", "logstash-filter-fingerprint",
"logstash-filter-geoip", "logstash-filter-grok", "logstash-filter-http", "logstash-filter-json", "logstash-filter-kv",
"logstash-filter-memcached", "logstash-filter-mutate", "logstash-filter-prune", "logstash-filter-ruby",
"logstash-filter-sleep", "logstash-filter-split", "logstash-filter-syslog_pri", "logstash-filter-translate",
"logstash-filter-truncate", "logstash-filter-urldecode", "logstash-filter-useragent", "logstash-filter-uuid",
"logstash-filter-xml",
#outputs
"logstash-output-elasticsearch", "logstash-output-email", "logstash-output-file", "logstash-output-http",
"logstash-output-redis", "logstash-output-s3", "logstash-output-stdout", "logstash-output-tcp", "logstash-output-udp",
#integration
"logstash-integration-jdbc", "logstash-integration-kafka", "logstash-integration-rabbitmq",
"logstash-integration-elastic_enterprise_search",
#tier2
#inputs
"logstash-input-couchdb_changes", "logstash-input-gelf", "logstash-input-graphite", "logstash-input-jms",
"logstash-input-snmp", "logstash-input-sqs", "logstash-input-twitter",
#codecs
"logstash-codec-collectd", "logstash-codec-dots", "logstash-codec-fluent", "logstash-codec-graphite",
"logstash-codec-msgpack", "logstash-codec-netflow",
#filters
"logstash-filter-aggregate", "logstash-filter-de_dot", "logstash-filter-throttle",
#outputs
"logstash-output-csv", "logstash-output-graphite"
]
plugins_metadata = File.read("rakelib/plugins-metadata.json")
plugins_registry = JSON.parse(plugins_metadata).select { |_, values| values["default-plugins"] == true }.keys
puts "Plugins not present definitions"
puts plugins_registry.select {|plugin| !PLUGIN_DEFINITIONS.include?(plugin)}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment