Diff for "QA/OopsToolsSetup"

Not logged in - Log In / Register

Differences between revisions 10 and 11
Revision 10 as of 2011-07-21 19:21:04
Size: 2501
Editor: matsubara
Comment: page was renamed from Foundations/QA/OopsToolsSetup
Revision 11 as of 2011-10-31 05:19:55
Size: 2278
Editor: lifeless
Comment: new world order
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from Foundations/QA/OopsToolsSetup
## page was renamed from Foundations/QA/OopsToolsDeployment
= Launchpad oops-tools setup =
= Launchpad Production oops-tools setup =
Line 5: Line 3:
This page describes how to deploy new code to Launchpad's oops-tools instance, how and which cronjobs are configured, how to make the tool aware of new prefixes when those are added to Launchpad's config files and how to create new reports to be sent to the list. OOPS-Tools is run on devpad under the lpqateam role account.
Line 15: Line 13:
pkill amqp2disk
Line 24: Line 23:
Usually there's no need to restart the service after an update. Oops tools has
a monitor.py script (see src/oopstools/monitor.py) which monitors changes to .py files and when there are changes to them, it kills the process and starts a new one.
Finally activate the new code:

 * Ask a LOSA to graceful apache
 * Run {{{./run-amqp2disk.sh}}} to start the OOPS AMQP listeners again.
Line 39: Line 40:
Once new prefixes are added to lp:lp-production-configs, they need to be added to oops-tools. Go to:
{{{
 https://lp-oops.canonical.com/prefixloader/
}}}
New prefixes are automatically accepted. Once an oops from one has been seen they need to be assigned to reports within oops-tools.
Line 44: Line 42:
and click the Load prefixes button. You should see a list of new prefixes added if there were any new ones to add. After loading the new prefixes be sure to edit the relevant reports under 'creating new reports'. = Deploying locally (e.g. devpad) =

Follow src/oopstools/README.txt to get an instance up and running.

Use bin/amqp2disk --host XXXX --username guest --password guest --output . --queue oops-tools --bind-to oopses to setup and bind to a new exchange on your local rabbit for experimenting with Launchpad. See [[https://lists.launchpad.net/launchpad-dev/msg08183.html|my notes]] for more info.

= Admin =

Launchpad Production oops-tools setup

OOPS-Tools is run on devpad under the lpqateam role account.

oops-tools deployment

To deploy a new version of LP's oops-tools instance:

ssh devpad
sudo su - lpqateam
cd /srv/lp-oops.canonical.com/cgi-bin/lpoops
pkill amqp2disk
bzr up

If there are changes to the models and/or you need to do data migration (a new migration has been created) then run:

bin/django migrate

Finally activate the new code:

  • Ask a LOSA to graceful apache
  • Run ./run-amqp2disk.sh to start the OOPS AMQP listeners again.

cronjobs

There are some cronjobs setup in the lpqateam crontab.

  • update_db: script that loads oops reports from the file system into the oops-tools database.
  • dir_finder: script that searches the file system for new oops directories and build the cache used by the update_db script to look up for oopses.
  • report: script that saves a daily aggregation of OOPS report that happened in the previous day. It also emails the report to the launchpad mailing list.

Loading new prefixes

New prefixes are automatically accepted. Once an oops from one has been seen they need to be assigned to reports within oops-tools.

Deploying locally (e.g. devpad)

Follow src/oopstools/README.txt to get an instance up and running.

Use bin/amqp2disk --host XXXX --username guest --password guest --output . --queue oops-tools --bind-to oopses to setup and bind to a new exchange on your local rabbit for experimenting with Launchpad. See my notes for more info.

Admin

Creating new reports

To create a new report which will be sent to the LP mailing list daily go to: https://lp-oops.canonical.com/admin/oops/report. If you don't have access run bin/django createsuperuser.

There you can add a new report or change the existing ones.

Each report is composed by a name, the title of the report which will be used in the email sent to the list, a summary type, which know how to group the OOPSes and render the html and txt output and prefixes, which are the OOPS prefixes in the given report.

QA/OopsToolsSetup (last edited 2012-09-21 00:14:34 by lifeless)