I have implemented a windows service application that will be deployed to multiple machines and run concurrently to process tasks in a central queue. I have a log file for each instance of service running. But I want to be able to monitor all instances of the service and retrieve application specific information, such as Name and ID of the task being processed by each service, periodically.
I am thinking to add a web service on each machine to expose those read-only info, and write another app (maybe web app) to retrieve those info across the network and to display them nicely. But is this the good approach? Any other thoughts? And I prefer not to use any off-the-shelf product. Please provide your advice.
Thanks in advance!
[I try to provide my implementaion below as an answer. Read if you are interested. Thanks.]