Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add systemd socket activation support #1622

Closed
guilhem opened this issue Feb 25, 2020 · 5 comments
Closed

Add systemd socket activation support #1622

guilhem opened this issue Feb 25, 2020 · 5 comments

Comments

@guilhem
Copy link

guilhem commented Feb 25, 2020

It would be awesome to add (optionnal) support for systemd socket activation.

More details:
http://0pointer.de/blog/projects/socket-activation.html

example:
https://github.com/coreos/go-systemd/tree/master/examples/activation

@discordianfish
Copy link
Member

Frankly, I never understood why one wants socket activation beside 'because we can'. Not really convinced we need that, but happy to get convinced otherwise.
/cc @SuperQ

@SuperQ
Copy link
Member

SuperQ commented Mar 20, 2020

I agree, it's a neat concept for things that are used rarely and on demand. But monitoring components are needed at all times. I don't see the point.

@arianvp
Copy link

arianvp commented Apr 6, 2020

The point of socket activation isn't to conserve resources (once a service is activated by a socket, it stays online), it's about not having to define explicit startup ordering of services and to allow services to start up in parallel.

Also it allows restarting services without dropping connections, and upgrading services without dropping connections.

Now node-exporter is a rather simple daemon which usually no other daemons depend on on the same box ( except for prometheus of course; but that's on another box), so there is no interesting startup-ordering story for node-exporter that will be 'fixed' by introducing socket activation. (the node-exporter systemd service has no Wants=, Requires=, After= or Before= sections at all)

however being able to restart node-exporter or upgrade it without dropping connections is still interesting, especially when people alert on up{job="node"} metrics and dont want to get alerted when node-exporter gets upgraded.

I don't have a really strong opinion on this. If the patch is small enough (which I expect it will be) I see no harm in accepting it, but I also see no very strong need to actively develop it.

@brian-brazil
Copy link
Contributor

If your alerting is so sensitive that a single failed scrape alerts you, I'd suggest that it's the alerting that needs adjustment.

@discordianfish
Copy link
Member

Yeah I don't think we want this as a desired feature. If somebody sends a PR that is so trivial that there is no expected ongoing support we might consider it, but for now I'm closing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants