OpenStats - analysis of collected data

In one of the previous articles the logging library was described - in this article we'll look into the library used to analyze the collected data, which basically means aggregation of the data according to various criteria. This library is not called directly from your application, but from the cron scripts provided. Nevertheless basic undertandning to it's "guts" is useful when configuring the analysis process. We'll look at the cron script and it's configuration.

OpenStats - benchmarking

When developing and deploying applications, performance testing is quite important - it allows you to allocate database tables to tablespaces, determine performance limits of the system, etc. For the OpenStats project I wrote a small Java multi-threaded benchmarking tool, reading SQL queries from a file and executing them in a database.

OpenStats - partitioning

Just as in case of PGMon project, when collecting this kind of data there may be huge amounts of data, but these data go out quite quickly - in most cases it's not necessary to work with data older that 1 month. There are two consequences of the quick growth - decrease of performance and problems with maintenance (backup and removal of old data).

OpenStats - Why not to use Google Analytics

I have nothing against Google Analytics - it's a great project and I'm using it on several sites to monitor overall statistics. But in many cases it's not sufficient and as it is - there are many deficiencies of using it, and it's not possible to fix them as it is a closed solution.

OpenStats - installation and config

Installation and configuration of the OpenStats library consists of several quite simple steps - let's investigate them a little bit.

OpenStats - logging of information

If you're interested in OpenStats project and you have installed it (see installation and configuration), there is nothing easier than trying to log several sessions, actions or parameters ;-)

OpenStats - database structure

Goal of this article is to describe the database structure used for OpenStats project in a nutshell (but with enough details). It contains description of individual tables and their columns, but an explanation of some seemingly illogical solutions.

1