Some of you might find the following scenario vaguely familiar.
A customer wakes you (or your company’s support team) in the middle of the night complaining that his app is crashing. You quickly rush out of bed and try to reproduce the disastrous calamity only to find yourself hitting a brick wall – no matter what you do to copy the exact same scenario, you simply cannot see the issue the customer is complaining about!
Now, what if you could remotely, and securely, profile your client’s exact same request, in production, and without affecting performance? Z-Ray’s Selective Mode allows you to do just that, and this tip will explain how.
Selective Mode enables you to collect Z-Ray data based on client IP ranges, and – disable the in-browser Z-Ray while still having access to the data via Z-Ray Live! This means you can safely drill down into your customer’s requests without affecting the overall server performance.
So, how do you use Selective Mode?
First you’ll need to turn it on. Go to the Z-Ray | Mode page in the Zend Server UI, and select the Selective Mode option. If you’re using Z-Ray standalone, you’ll need to access the Z-Ray management dashboard.
After Zend Server restarts, on the same page in the UI, select the Selective Access tab, and click the Allow Selective Access button.
In the wizard that pops up, you will now need to configure the particular access settings you want to enable.
On the first step of the wizard, you are required to enter a name for the access settings (for reference only) and the time period after which these settings expire.
Please note, that as an extra layer of security, you also have the option to require an access token (selected by default) – this means that the end-user (your customer) will need to use a specially generated GET parameter in the request URL for you to be able to access Z-Ray and debug his request.
On the next step, you will need to enter the IP address you want to grant access to, so ask your customer for his IP and enter it in the designated field.
On the final step of the wizard, leave the two check-boxes de-selected to make sure Z-Ray is only displayed on Z-Ray Live! and not in a browser, and that users will not be able to perform any server-side actions from Z-Ray.
Click Submit and your settings are saved (if you required an access token, it will show up on your screen – grab it and send it to your customer).
All you have to do now is access Z-Ray Live! in the UI (Z-Ray | Z-Ray Live!) and ask your customer to produce the issue in his environment. You will be able see any request made to the server, and use Z-Ray to identify the root cause.
How’s that for supportability?