Setup issues-agent not detected, and directories unwritable

Hey!

I’m setting up webpagetest on another server (this one is CentOS), and I’ve ran into a couple issues.

First, the mobile agent isn’t being detected. Running this:

./wptdriver.sh --browser android:0cfe40ea1408275a --serverUrl localhost --location Nexus5 --processvideo yes -m debug

Outputs (among other things) this:

D Sep_15_16:26:15.173 process_utils.js:327 ChildProcess.<anonymous> : stdout[30] Tue Sep 15 16:26:13 BST 2015 1 D Sep_15_16:26:55.094 process_utils.js:263 unknown : Exec with timeout(60000): adb -s 0cfe40ea1408275a shell date

Also shows “No agents connected”.

Running adb -s 0cfe40ea1408275a shell date from that directory has the correct output, however.

Also, /install is telling me that all the directories that need to be writable are not. They are! They are owned by apache:apache (which is correct for this server), and are world writable.

How is php configured to run under apache? If it is using cgi or fcgi then it might be running as a different user. The writable check literally writes and reads a file to the directory for the test so if it is failing, it really isn’t working: webpagetest/index.php at master · WPO-Foundation/webpagetest · GitHub

As far as the adb command failing, what was the line right after the command? That message is just saying that it is running the command, not that it was an error.

I’m pretty sure it isn’t running under cgi or fcgi, and I’ve checked the list of users for the machine and the only relevant one seems to be apache. also I made the directories world writable so I’m not sure it will make any difference anyway.

The entire output is as follows:

$ ./wptdriver.sh --browser android:0cfe40ea1408275a --serverUrl localhost --location Nexus5 --processvideo yes -m debug node --max-old-space-size=4096 --expose-gc src/agent_main --serverUrl localhost --location Nexus5 --browser browser_android_chrome.BrowserAndroidChrome --deviceSerial 0cfe40ea1408275a --chromedriver /home/cmacrae/webpagetest/agent/js/lib/webdriver/chromedriver/Linux x86_64/chromedriver-2.4 --captureDir /home/cmacrae/webpagetest/agent/js/lib/capture --processvideo yes D Sep_16_14:54:21.730 browser_base.js:141 createBrowser : Creating browser browser_android_chrome.BrowserAndroidChrome I Sep_16_14:54:21.737 browser_android_chrome.js:108 new BrowserAndroidChrome : BrowserAndroidChrome({"flags":{"serverUrl":"localhost","location":"Nexus5","browser":"browser_android_chrome.BrowserAndroidChrome","deviceSerial":"0cfe40ea1408275a","chromedriver":"/home/cmacrae/webpagetest/agent/js/lib/webdriver/chromedriver/Linux x86_64/chromedriver-2.4","captureDir":"/home/cmacrae/webpagetest/agent/js/lib/capture","processvideo":"yes"},"task":{}}) D Sep_16_14:54:21.753 process_utils.js:487 unknown : Calling Make dirs D Sep_16_14:54:21.753 process_utils.js:481 cb : Callback for Make dirs D Sep_16_14:54:21.763 process_utils.js:487 unknown : Calling Work read D Sep_16_14:54:21.764 process_utils.js:481 cb : Callback for Work read D Sep_16_14:54:21.811 process_utils.js:263 unknown : Exec with timeout(60000): adb -s 0cfe40ea1408275a shell date D Sep_16_14:54:21.917 process_utils.js:327 ChildProcess.<anonymous> : stdout[30] Wed Sep 16 14:54:20 BST 2015 I Sep_16_14:54:21.937 wpt_client.js:490 Client.<anonymous> : Get work: http://localhost/work/getwork.php?location=Nexus5&pc=0cfe40ea1408275a&f=json 2D Sep_16_14:55:01.196 process_utils.js:327 ChildProcess.<anonymous> : stdout[30] Wed Sep 16 14:55:00 BST 2015 D Sep_16_14:55:41.121 process_utils.js:263 unknown : Exec with timeout(60000): adb -s 0cfe40ea1408275a shell date

Patrick, have you had any time to look into this yet? Sorry for bothering you, thanks for your help :slight_smile:

Sorry, there’s nothing I can look into on my side without being able to reproduce it. Your best bet is to add logging to install/index.php on the server and see if you can track down why it is having problems writing to the directories. Until that works nothing else is going to.

In the end, it turned out there was something running to stop the server from being able to access files on the server, for security reasons. All working now, thanks!