Nova Resource:Wikistats

From Wikitech
Jump to navigation Jump to search
For the Wikimedia Fondation project see mw:Wikistats.
Project Name wikistats
Details,
admins/members
openstack-browser
Monitoring

Wikistats

Description

A project that collects and displays statistics for Mediawikis.

Purpose

Collecting statistics about Mediawiki installs on the internet.

Anticipated traffic level

10-100 hits per day

Anticipated time span

indefinite

Project status

currently running

Contact address

dzahn@wikimedia.org

Willing to take contributors or not

willing

Subject area narrow or broad

narrow statistics


http://wikistats.wmflabs.org

Where to find the code

Wikistats consists of 2 parts, the puppet manifests (in the operations/puppet git repo) and the Debian package (in the operations/debs/wikistats repo).

The puppet part is divided into ./puppet/modules/role/manifests/wikistats/instance.pp,the role class which is applied to a node/instance, and the module in ./puppet/modules/wikistats/.

Manifests

  1. role::wikistats - configures host name and SSL certs depending on labs vs. prod, uses the main classes below, is all that needs to be included on an instance or node
  2. wikistats - the init.pp of the module, sets up user/group, installs package (if we're using labsdebprepo), uses the other classes
  3. wikistats::cronjob - defines a cron job to update a table
  4. wikistats::db - installs mariadb, php-mysql
  5. wikistats::updates - installs php-cli, creates log dir, has definitions for the update cron jobs and configures them
  6. wikistats::web - does the Apache setup

(Currently they do not automatically install the package yet which is done manually)

How to build the Debian package

  1. git clone https://gerrit.wikimedia.org/r/operations/debs/wikistats
  2. cd wikistats
  3. "debuild" (signed) or "debuild -us -uc" (unsigned)
  4. cd ..
  5. optional: check which files would be installed by this: dpkg-deb -c wikistats_*_all.deb
  6. install: dpkg -i wikistats_*_all.deb

How to deploy latest code

/usr/local/bin/wikistats# ./deploy-wikistats deploy

Optionally use "backup" to make a backup of current code before deploying or "restore" to restore from the last backup.

/usr/local/bin/wikistats# ./deploy-wikistats backup
/usr/local/bin/wikistats# ./deploy-wikistats restore

How to fix DB grants if they break after deploy

grep db_pass /etc/wikistats/config.php
mysql -u root -p wikistats
mysql> grant all privileges on wikistats.* to 'wikistatsuser'@'localhost' identified by '<password from config.php>';
Edit documentation

Server admin log

2019-11-22

  • 19:10 paladox: deleting instance wikistats-greyhound
  • 19:09 mutante: shutting down instance wikistats-greyhound

2019-10-02

2019-09-30

  • 19:18 mutante: - created new instance dancing-goat with buster as backup and to replace stretch
  • 19:17 mutante: - deleted old instances T128642 and T21008

... (more)