6d3bd9735dd64ebf98ed3d697d123a830319e360 |
|
20-Dec-2014 |
Prashanth Balasubramanian <beeps@google.com> |
[autotest] Simple Heartbeat client/server. To help understand and debug heartbeats, this cl creates a wafer thin heartbeat client and server. The server can be pointed at any database through the command line, while the client can execute requests just like a shard would. This is useful as a proof of concept on how one can easily isolate just the heartbeat functionality into a seperate service, as well as to confirm that the jobs/hosts of a given board won't cause the shard client to blow up just before productionizing a new shard. The differences between an actual shard-client/production afe and this toy are as follows: 1. The given remote database is never modified, so we can point it at prod for one off debug heartbeats. 2. The heartbeats are deserialized by the client into an in memory sqllite database, so any existing local database is not modified either. 3. The server is based off python's base http server, not apache, so its concurrency is limited. TEST=Ran the client and server against the prod database. BUG=chromium:423225 CQ-DEPEND=CL:236708 Change-Id: I74c006d96c6bc475a9c6ed85840ea592ca8fa2ff Reviewed-on: https://chromium-review.googlesource.com/236975 Trybot-Ready: Prashanth B <beeps@chromium.org> Tested-by: Prashanth B <beeps@chromium.org> Reviewed-by: Dan Shi <dshi@chromium.org> Commit-Queue: Prashanth B <beeps@chromium.org>
/external/autotest/scheduler/shard/simple_heartbeat_server.py
|