tj / mon

mon(1) - Simple single-process process monitoring program written in C

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TCP or unix socket interface for integration with 3rd-party tools

kaero opened this issue · comments

May be my request poisons KISS principles, but it can be a great feature for integration with other tools without a need to parse text output from STDOUT.

anything specific in mind? the "hook" commands could do whatever you want already

Under the "hook" you mean the --on-error and --on-restart options?

I near about creation a tiny web interface for a bunch of mon processes, but retrieving info about all mon instances, their options and current status looks a bit tricky and implicit without mon master-process or another common end-point for retrieving info about all running mon instances.

ah I see, yeah maybe someday we can write mongroup in C and add some json networking stuff but that would be pretty annoying in shell scripts right now. you could still write a web thing but mon would have to become an internal implementation detail pretty much like mongroup, you dont even consider mon in that tool it's just there

ok, thanks for the answer. I think it's a time for monit.

I do like dashboards etc, so I'd be happy to add something, I'll think on it. Even if the stdio was a more machine-friendly format, or a json option that would be much better

Mm… maybe an option in addition to -S to select output format: human-readable or some machine-friendly?

yeah I think that would be good, nothing wrong with using stdio, it's easy enough to tail a file or pipe. I'll reopen

Yeah, thanks!

You can use socat to redirect to any sort of socket you want. eg, mon foo | socat TCP4:host:port - or mon foo | socat UNIX-CONNECT:/path/to/socket -. It's a great tool.

was just thinking about this a bit, we're definitely better off going with a fifo or unix socket, less chance of people polluting stdio