Homec4science

Save daemon state to database

Authored by Nick Harper <nharper@fb.com> on Aug 2 2012, 02:06.

Description

Save daemon state to database

Summary:
To make it easier to monitor daemons, let's store their current state
(running, died, exited, or unknown) to the db. The purpose of this is to
provide more information on the daemon console about the status of daemons,
especially when they are running on multiple machines. This is mostly backend
work, with only a few frontend changes. (It is also dependent on a change
to libphutil.)

These changes will make dead or stuck daemons more obvious, and will allow
more work on the frontend to hide daemons (and logs) that have exited cleanly,
i.e. ones we don't care about any more.

Test Plan:

  • run db migration, check in db that all daemons were marked as exited
  • start up a daemon, check in db that it is marked as running
  • open web interface, check that daemon is listed as running
  • after daemon has been running for a little bit, check in db that dateModified is being updated (indicating daemon is properly sending heartbeat)
  • kill -9 daemon (but don't run bin/phd yet), and check that db still shows it as running
  • edit daemon db entry to show it as being on a different host, and backdate dateModified field by 3 minutes, and check the web ui to show that the status is unknown.
  • change db entry to have proper host, check in web ui that daemon status is displayed as dead. Check db to see that the status was saved.
  • run bin/phd stop, and see that the formerly dead daemon is now exited.

Reviewers: epriestley, vrana

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D3126

Details

Committed
Nick Harper <nharper@fb.com>Aug 2 2012, 02:06
Pushed
aubortJan 31 2017, 17:16
Parents
rPH6e1f5e353a91: Abbreviate author/committer in Diffusion directory views
Branches
Unknown
Tags
Unknown

Event Timeline

Nick Harper <nharper@fb.com> committed rPH88caa4585413: Save daemon state to database (authored by Nick Harper <nharper@fb.com>).Aug 2 2012, 02:06