Files
@ ccc66ed2f85b
Branch filter:
Location: kallithea/docs/usage/statistics.rst - annotation
ccc66ed2f85b
1.2 KiB
text/prs.fallenstein.rst
db: enable use of main Kallithea config as Alembic config
Newly generated Kallithea config .ini files will be valid Alembic
config files, eliminating the need for a separate alembic.ini config
redundantly specifying the database connection string.
We reference the Alembic migration environment using kallithea:alembic,
which should work independently of how Kallithea is installed.
We also configure a default 'alembic' log level of WARNING, to reduce
the amount of clutter in the config file, reduce the changes needed
to upgrade existing config files for use with Alembic, and allowing us
to change the default Alembic log level for all users down the road.
(It makes sense to define Alembic logging in code, while all other
loggers are configured in the configuration file, because Alembic
is special: it runs on the command line, not as part of the web app.)
Newly generated Kallithea config .ini files will be valid Alembic
config files, eliminating the need for a separate alembic.ini config
redundantly specifying the database connection string.
We reference the Alembic migration environment using kallithea:alembic,
which should work independently of how Kallithea is installed.
We also configure a default 'alembic' log level of WARNING, to reduce
the amount of clutter in the config file, reduce the changes needed
to upgrade existing config files for use with Alembic, and allowing us
to change the default Alembic log level for all users down the road.
(It makes sense to define Alembic logging in code, while all other
loggers are configured in the configuration file, because Alembic
is special: it runs on the command line, not as part of the web app.)
bbd499c7b55e bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e 5ae8e644aa88 ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 ac7e43325817 | .. _statistics:
=====================
Repository statistics
=====================
Kallithea has a *repository statistics* feature, disabled by default. When
enabled, the amount of commits per committer is visualized in a timeline. This
feature can be enabled using the ``Enable statistics`` checkbox on the
repository ``Settings`` page.
The statistics system makes heavy demands on the server resources, so
in order to keep a balance between usability and performance, statistics are
cached inside the database and gathered incrementally.
When Celery is disabled:
On each first visit to the summary page a set of 250 commits are parsed and
added to the statistics cache. This incremental gathering also happens on each
visit to the statistics page, until all commits are fetched.
Statistics are kept cached until additional commits are added to the
repository. In such a case Kallithea will only fetch the new commits when
updating its statistics cache.
When Celery is enabled:
On the first visit to the summary page, Kallithea will create tasks that will
execute on Celery workers. These tasks will gather all of the statistics until
all commits are parsed. Each task parses 250 commits, then launches a new
task.
|