This article provides a workaround to resolve an error condition that prevents the VPN Monitoring page from displaying data.
VPN Monitoring page does not display any data.
The following error is shown: “Error while requesting data.”
The following procedure will helps you resolve the mentioned error
Step 1: Review VPN monitoring web server log for errors:
A) # tail -f /var/log/vpn-monitor/webserver.log You may see the following error, indicating the system is unable to read the Python Makefile: IOError: invalid Python installation: unable to open /usr/local/vpn-monitor/lib/python2.7/config/Makefile (Too many levels of symbolic links) B) Further verification shows the Makefile is pointing to itself, causing a symbolic link loop.[root@space-005056aea67f run]# cd /usr/local/vpn-monitor/lib/python2.7/config [root@space-005056aea67f config]# ll -rth total 0 lrwxrwxrwx 1 jboss jboss 43 Mar 15 2022 Makefile -> /opt/python27/lib/python2.7/config/Makefile [root@space-005056aea67f config]# cat Makefile | wc -l cat: Makefile: Too many levels of symbolic links 0 [root@space-005056aea67f config]# pwd /opt/python27/lib/python2.7/config [root@space-005056aea67f config]# ll -rth | grep Makefile lrwxrwxrwx 1 jboss space 43 Mar 15 2022 Makefile -> /opt/python27/lib/python2.7/config/Makefile [root@space-005056aea67f config]# cat /opt/python27/lib/python2.7/config/Makefile cat: /opt/python27/lib/python2.7/config/Makefile: Too many levels of symbolic links
Step 2: Replace the Invalid Makefile
Obtain a valid Makefile from a lab device/system running the same release and hotpatch.
Replace the existing Makefile with the correct version.
Ensure the ownership and permissions match those from the lab device/system.
After replacing the Makefile, the original error will be resolved; however, a new error may appear.
Step 3: Verify webserver.log once again if the issue is still persist.
[root@space-005056aea67f config]# tail -f /var/log/vpn-monitor/webserver.log You may see the following errorTraceback (most recent call last): File "/usr/local/vpn-monitor/src/juniper/WebServer.py", line 22, in <module> with open('/tmp/sd-vpnmonitor/vpnwebserver.pid', 'wb') as f: IOError: [Errno 2] No such file or directory: '/tmp/sd-vpnmonitor/vpnwebserver.pid'
Step 4: Create the Required Directory and Restart Services. Run the following commands to resolve the issue:
# mkdir /tmp/sd-vpnmonitor # chmod 755 /tmp/sd-vpnmonitor # chown jboss:jboss /tmp/sd-vpnmonitor # systemctl stop vpnwebserver # systemctl start vpnwebserver
After that VPN monitoring page will start working without any issue.
Note: If the issue persists after following this procedure, collect the relevant logs and engage JUNIPER JTAC Support for further assistance.