pgperffarm.git
8 years agoadd support for collecting results into simple CSV file
Tomas Vondra [Thu, 13 Oct 2016 12:48:03 +0000 (14:48 +0200)]
add support for collecting results into simple CSV file

Originally the results were collected into a JSON format, which is
not very convenient when running ad-hoc benchmarks.

8 years agoadd shebang explicitly invoking Python 2.7
Tomas Vondra [Thu, 13 Oct 2016 12:27:25 +0000 (14:27 +0200)]
add shebang explicitly invoking Python 2.7

The code is not fully compatible with Python 3.x (although it should
not be a big deal to make that happen).

8 years agoexplicitly flush stdout in log()
Tomas Vondra [Thu, 13 Oct 2016 11:47:33 +0000 (13:47 +0200)]
explicitly flush stdout in log()

Otherwise the messages may get buffered for a quite long time, which
is annoying, particularly in multi-process system.

8 years agofix lockups in PostgreSQL collector
Tomas Vondra [Thu, 13 Oct 2016 11:41:43 +0000 (13:41 +0200)]
fix lockups in PostgreSQL collector

When the workers produce results and return them through a queue, we need
to first drain the queue and then wait for the thread to join(). Otherwise
it seems to lock up - the join() call with wait as long as there are items
in the queue. This also happens because we do both things (reading from
queue and waiting for the thread) in the same thread.

8 years agoopen connections in a way resilient to temporary failures
Tomas Vondra [Thu, 13 Oct 2016 11:22:49 +0000 (13:22 +0200)]
open connections in a way resilient to temporary failures

In case of connection failure (e.g. a backend getting terminated by
OOM killer and taking down the whole server), the workers failed
with an exception without putting a result into the queue, leading
to hangs.

This fixes that by making the workers resilient to connection issues
by catching the exceptions and terminating nicely. Also, we retry
connection several times, to continue with benchmarking even after
OOM hits us unexpectedly, etc.

8 years agoCheck configuration before running any benchmarks
Tomas Vondra [Thu, 11 Aug 2016 00:00:32 +0000 (02:00 +0200)]
Check configuration before running any benchmarks

Before doing any heavy-lifting, check existence of directories,
binaries and some other sanity checks.

8 years agoFix CWD when running 'git pull', fix parameters.
Tomas Vondra [Thu, 11 Aug 2016 00:08:06 +0000 (02:08 +0200)]
Fix CWD when running 'git pull', fix parameters.

When refreshing a reporitory clone, running 'git pull $dir' does
not do the trick - it assumes the CWD is the clone, and imports
data from repository at $dir. So we need to set CWD properly and
do just 'git pull'.

Also, prefix class members with 'self'.

8 years agoAdd .lock to .gitignore
Tomas Vondra [Wed, 10 Aug 2016 22:58:43 +0000 (00:58 +0200)]
Add .lock to .gitignore

8 years agoRework the perffarm client configuration.
Tomas Vondra [Wed, 10 Aug 2016 22:46:26 +0000 (00:46 +0200)]
Rework the perffarm client configuration.

Instead of configuration hardcoded into the perffrarm-client.py
script, move it into a separate settings.py file, and allow
override using settings_local.py (not required).

Also somewhat improve the benchmark configurations by allowing
specifying number of runs, durations etc. in the configuration
file (instead of using default parameter values).

8 years agoHandle missing sar stats gracefully
Tomas Vondra [Wed, 10 Aug 2016 22:06:11 +0000 (00:06 +0200)]
Handle missing sar stats gracefully

8 years agoImport initial version of the client
Tomas Vondra [Wed, 10 Aug 2016 21:23:55 +0000 (23:23 +0200)]
Import initial version of the client

9 years agoUpdate requirements.txt
Dave Page [Tue, 15 Mar 2016 11:36:06 +0000 (11:36 +0000)]
Update requirements.txt

9 years agoAdd PG Community Auth support.
Dave Page [Tue, 15 Mar 2016 11:31:53 +0000 (11:31 +0000)]
Add PG Community Auth support.

9 years agoCute-ify the name.
Dave Page [Tue, 15 Mar 2016 09:40:11 +0000 (09:40 +0000)]
Cute-ify the name.

9 years agoNice logo
Dave Page [Mon, 14 Mar 2016 16:59:37 +0000 (16:59 +0000)]
Nice logo

9 years agoAdd boilerplate legal stuff.
Dave Page [Mon, 14 Mar 2016 15:26:32 +0000 (15:26 +0000)]
Add boilerplate legal stuff.

9 years agoFix the responsive navbar.
Dave Page [Mon, 14 Mar 2016 14:38:36 +0000 (14:38 +0000)]
Fix the responsive navbar.

9 years agoAdd a basic Bootstrap template.
Dave Page [Mon, 14 Mar 2016 14:18:29 +0000 (14:18 +0000)]
Add a basic Bootstrap template.

9 years agoFix ACL
Dave Page [Mon, 14 Mar 2016 12:49:35 +0000 (12:49 +0000)]
Fix ACL

9 years ago403/404 error pages.
Dave Page [Mon, 14 Mar 2016 12:49:07 +0000 (12:49 +0000)]
403/404 error pages.

9 years agoCleanup layout, and ensure templates/static files work.
Dave Page [Mon, 14 Mar 2016 12:18:13 +0000 (12:18 +0000)]
Cleanup layout, and ensure templates/static files work.

9 years agoFix some minor errors/typos
Dave Page [Mon, 14 Mar 2016 11:33:05 +0000 (11:33 +0000)]
Fix some minor errors/typos

9 years agoMove the requirements.txt for the web site as the client will need one too.
Dave Page [Mon, 14 Mar 2016 11:31:30 +0000 (11:31 +0000)]
Move the requirements.txt for the web site as the client will need one too.

9 years agoInitial import of a framework Django app.
Dave Page [Mon, 14 Mar 2016 11:29:18 +0000 (11:29 +0000)]
Initial import of a framework Django app.