We have multiple java applications running on distributed hosts in our system. As theses applications are processing huge amount of data, it is designed this way. However, it had been a challenge in getting the status of these applications, view logs etc., across the different hosts. All these applications uses log4j and is logging to a file in the hosted machine. Is there a open source, proven solution that can be used to get status and view logs for distributed java applications at a centralized place?