Fundraising 2010/Tech testing

From Meta, a Wikimedia project coordination wiki
In other languages
  Updates       Testing       Translation       Messaging    


Quick list of what needs to be in place for any thursday fundraiser.



  • Add two filters on locke for
    • Landing pages. ex. 2010_Landing_2
    • Banner impressions ex. centralnotice.js
    • If any config changes happen make sure to kill -1 the udp2log process or new filter data will not be written.
  • White list banners on contribution tracking
  • Double check banners
    • Should have updated tracking code, if we're doing tracking
    • Should have correct utm_source ('banner') and utm_campaign ('campaign')
    • Should have correct 'banner-url-2010', pointing to the appropriate landing page for a given banner
    • Ensure banner html includes the tracking bits (utm_source, utm_campaign, utm_medium) in the URL linked from the banner, as well as the javascript for tracking whether or not a banner has been hidden.
    • Check that tracking bits for the banner are showing up in the contribution_tracking table
      • Click the donate link in the banner
      • Enter an arbitrary donation amount and click one of the donate buttons
      • Dbl check that a record was written to drupal.contribution_tracking table on db9
        • ssh into grosley
        • cd /srv/org.wikimedia.civicrm
        • drush sql-cli
        • mysql> select id, contribution_id, utm_source, utm_medium, utm_campaign, ts from contribution_tracking order by id desc limit 10;
          • If you entered a unique comment on the landing page, you might also include the 'note' row in your mysql query to make sure you're looking at your own contribution_tracking record
  • Make sure that landing pages include the getLandingPage() js found in the Donate-now template. And properly id themselves through | landing-page = 2010_Landing_3' - this should cause the utm_source to be populated.
    • If you're seeing the utm_source properly populated in drupal.contribution_tracking (see above), this is working correctly.
    • You can also test to see if the POST data is properly being passed by checking HTTP headers from the request between the landing page and the gateway form
  • Ensure that URLs pointing to 1click credit card forms contain '_cache_=true' in the query parameters (otherwise, it will not get cached and the server will die)

Browser Testing[edit]

  • Browser test extensively.

System Testing[edit]

  • CC gateway up.
    • Check PayPal developer forums for outages, weirdness
    • Go through the payment flow and be sure to click on 'donate by credit card'
      • Make sure that correct information (including a contribution_id) shows up for the transaction in the contribution_tracking table (see above for how to access the table)
    • Double check that a contribution tracking id is showing up in the hidden form fields on the credit card submission page. You should see a line in the page source that looks something like: <input type="hidden" value="1936866" name="contribution_tracking_id" />
    • If you are experiencing problems, contact Tomasz or Arthur
  • Active MQ up.
  • CiviCRM up.
    • CiviCRM queue puller on
      • Hudson can show you if the queue puller is running successfully. Contact Arthur for login if you need it. Under 'build history', you should see a series of blue dots in a list, roughly 15 minutes apart. If you do NOT or it's been way more than 15 minutes since the last run, OR you see RED dots, there is a problem with the queue consumer.


  • Check CC trxn log
  • Check contrib stats
  • Check donor quotes page
  • Check both payflow, paypal and donation Active MQ queues
    • pending_paypal
    • pending_pfp
    • donations
  • Check civi for contribs
    • Contributions -> Find contributions
    • If you search for contributions on only one day, sometimes Civi behaves weirdly and won't display any or all of the contribs. It is recommended you search on a date range that is > 1 day
  • Check udp log stream on locke
    • To see total # of actual banner impressions: $ grep -c 'total=true' /a/squid/fundraising/logs/bannerImpressions.log


  • Gzip and time stamp the file name of the log
  • SCP the log over to dataset1:/data/locke-logs
  • Run log parser to report on landing page stats and impressions
    • /home/tfinc/mine_impression_requests.php <file>
    • /home/tfinc/mine_landing_pages.php <file>

August 19, 2010[edit]

Specific tasks for the Aug 19 fundraiser test.


  • Disable queue consumption


  • Enable queue consumption (after duplicate record creation bug is squashed!)