Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Dashboard for managing processes/services

  • 31-12-2016 8:40pm
    #1
    Registered Users, Registered Users 2 Posts: 2,236 ✭✭✭


    So I am in the middle of developing a system that will be broken down into a number of microservices. These are basically various agents, RPC services that run as separate processes.

    It would be useful for me to have some kind of light dashboard, utility where I would register the various components. This utility would then tell me various things about running status, uptime, last run etc. I would also have the option to stop/kill/start/restart the binaries from this utility.

    Kind of like the service manager for Windows.

    I am open to linux based tools but something on Windows would be interesting too.

    As an aside, I will be integrating all my apps into AWS CloudWatch for other metrics etc. Perhaps I could go straight to CloudWatch for this. Only downside is I don't think i'll get the process management (start/stop etc) from this.

    Any ideas or any products worth mentioning?

    Many thanks


Comments

  • Registered Users, Registered Users 2 Posts: 403 ✭✭counterpointaud


    What language(s) / platform(s) ?


  • Registered Users, Registered Users 2 Posts: 2,236 ✭✭✭techguy


    What language(s) / platform(s) ?

    I think any answers should not be dependent on languages but for simplicity let's assume we are talking about compiled native binaries. Most of the processes will be written in Go.

    Windows or Linux.


  • Registered Users, Registered Users 2 Posts: 403 ✭✭counterpointaud


    techguy wrote: »
    I think any answers should not be dependent on languages

    Yep, fair enough, I only asked as there are some NodeJS specific tools for process management and some tools around metrics aggregation for Docker containers that might have been of interest. Sounds like not relevant to your case though.


  • Registered Users, Registered Users 2 Posts: 2,040 ✭✭✭Colonel Panic


    Graphana/InfluxDB.


  • Registered Users, Registered Users 2 Posts: 768 ✭✭✭14ned


    techguy wrote: »
    So I am in the middle of developing a system that will be broken down into a number of microservices. These are basically various agents, RPC services that run as separate processes.

    It would be useful for me to have some kind of light dashboard, utility where I would register the various components. This utility would then tell me various things about running status, uptime, last run etc. I would also have the option to stop/kill/start/restart the binaries from this utility.

    Kind of like the service manager for Windows.

    I am open to linux based tools but something on Windows would be interesting too.

    It's extremely easy to turn any native Windows program into a service. http://www.rozanski.org.uk/services_quick even lets you wrap a normal console program into a service without doing anything else.

    There are also a multitude of command line facilities for managing windows services. sc.exe and net.exe are the main two. Powershell also has a raft of scripting support.

    Just make sure the user account you run them under is very privilege limited. The SYSTEM account is very powerful, too much so for network facing code.

    Niall


  • Advertisement
  • Moderators, Society & Culture Moderators Posts: 9,768 Mod ✭✭✭✭Manach


    Splunk perhaps? This would take the output services' logs and from these there are numerous options: from simple alerts to fully functional dashboards. The postives are it being easy to set-up and learn - the downsides, performance is a tad slow.


  • Registered Users, Registered Users 2 Posts: 2,236 ✭✭✭techguy


    Thanks for all the input guys.
    I think I may have kept a little ambiguity in the question. I am really only looking for a tool that is very similar to Windows Services (services.msc).
    I would like to be able to supply the path to a number of binaries. I can then view on a simple GUI the ones that are running and not, with option to (re)start/stop. I do not need any metrics or dashboards systems. I will be using AWS CloudWatch and each process will publish custom metrics.
    Thanks for the Windows suggestions. I guess, if I am going down the windows route then I will convert the binaries to services and use the native service manager.
    I will more than likely want to use Ubuntu so I will need a solution for that. After getting a brainwave and Googling "services.msc linux equivalent" I have come up with the [font=arial, sans-serif]supervisord[/font][font=arial, sans-serif].org.[/font]


  • Registered Users, Registered Users 2 Posts: 2,040 ✭✭✭Colonel Panic


    For management of .Net and Python services on Linux, I use Supervisord. It's the business.


Advertisement