Hi all, Chukwa agent code is not intuitive to understand. This is mainly the interface in Chukwa agent is over complicating the implementation. I don't see a rationale for having each class to be an interface. Connector and Chukwa Sender are two interfaces which are not very useful to be interface. It creates over complicated subsystem to maintain collector list in agent, connector and sender. Ideally, there should be a single place for configuration source of truth. I am leaning toward making those interface abstract classes. Connector should be rename to something more meaningful like multiplexer or MUX for short. AgentControlSocketListener could be refactor into a jersey like rest api, for easier to maintain the code base, and remove the 9093 protocol. This sounds like a major task. I like to gather feedback to see if this change is necessary for creating more traction on chukwa development.
regards, Eric
