no showslow beacon with wpt relay

Hi,

we’re using the showslow beacon output on our private instance to get a notification on test completition. This works fine with standard agents, but does not work if a wpt relay is in between wpt and agent.
I do not get any showslow output on wpt itself or on the relay.

any help is greatly appreciated :slight_smile:

Thx,
Michael

Hi Michael,

normally the relay does not send a beacon, since it it’s only a relay. Due to the fact that the instance is pulling results from the relay and deleting results afterwards (by calling testStatus/download/delete) the mechanism which is sending the beacon (in workdone) is bypassed. It can be enabled in workdone.php though, since the code checks for a dot inside the test id, which is true for a relay.

— a/work/workdone.php
+++ b/work/workdone.php
@@ -260,7 +260,8 @@ if( array_key_exists(‘video’, $_REQUEST) && $_REQUEST[‘video’] )
$perTestTime = 0;
$testCount = 0;
$beaconUrl = null;

  •        if (strpos($id, '.') === false && strlen($settings['showslow']))
    
  •                   # fixes beacon for relay
    
  •        if (strlen($settings['showslow']))
           {
               $beaconUrl = $settings['showslow'] . '/beacon/webpagetest/';
               if (array_key_exists('showslow_key', $settings) &&
    

Grts, Reimer

FWIW, this is fixed in the next release. The beacon is moved to a background post-process that is don to tests and the post-processing is now called on the local server when a relayed test has completed and been downloaded.

Hopefully I’ll have the next release out in a couple of weeks - just cleaning up a few rough edges and finishing the Appurify integration.