rgoers commented on PR #358: URL: https://github.com/apache/flume/pull/358#issuecomment-1100594422
Yes, I see the problem. No, you should not change it now. But this is exactly what I would like to change for 2.0. Flume does this is many places and it is too brittle. I would like to adopt a plugin system similar to what Log4j 2 does that allows new components like these to be added dynamically without having to update an enum file. i.e. - PrometheusHttpMetricsServer would be annotated to indicate it is a Plugin of type Metrics server with a name of PROMETHEUS (or the mixed case equivalent) so the loadMonitoring method in Application would be able to find it and start it without requiring an enum. This same stuff goes on for Sources, Sinks, Channels, etc. which makes user provided components second class citizens since they have to be configured via the fully qualified class name. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@flume.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org