Skip to main content
This page describes what to do in case of an Icinga alert. For more information you could search the govuk-puppet repo for the source of the alert
Last updated: 12 May 2022

SpeedCurve LUX JavaScript version check

GOV.UK makes uses of a frontend performance tool, SpeedCurve Live User Experience (LUX), this is provided by a JavaScript file provided by govuk_publishing_components. Typically the SpeedCurve LUX JavaScript is hosted by SpeedCurve we, however, we host a copy ourselves for security. Therefore we have to try keep our self-hosted copy up-to-date with the one SpeedCurve host.

This alert fires when the version of lux.js that SpeedCurve is hosting has a different version number to what we expect. This indicates we are hosting an out of date version of lux.js, which lead to problems with the data we are recording.

To resolve this alert

  1. Establish the current version number of lux.js from https://app.speedcurve.com/updates/
  2. Find the lux-reporter.js in govuk_publishing_components
  3. Download the source code of lux.js from https://cdn.speedcurve.com/js/lux.js?id=47044334
  4. Run the source code through a tool to deminifiy it, such as https://beautifier.io/
  5. Replace the corresponding section of lux-reporter.js with the deminified code
  6. Raise a pull request with the changes to govuk_publishing_components and seek review from a frontend developer familiar with GOV.UK’s SpeedCurve integration
  7. Update the Jenkins check to have the current version number that you identified in the first step, raise a PR for this change
  8. Ensure that govuk_publishing_components is released with the new version of lux-reporter.js and that Static is deployed with it
  9. Ensure that puppet is deployed with the updated Jenkins check to resolve the alert