diff options
Diffstat (limited to 'extras/http')
-rw-r--r-- | extras/http/sample.md | 82 | ||||
-rw-r--r-- | extras/http/setup.http | 3 |
2 files changed, 84 insertions, 1 deletions
diff --git a/extras/http/sample.md b/extras/http/sample.md new file mode 100644 index 00000000000..8451cedd8a5 --- /dev/null +++ b/extras/http/sample.md @@ -0,0 +1,82 @@ +--- +title: Home +--- + +# VPP Status + +### Here's the version... + +VPP version: <div id="VPPversion"></div> + +build date: <div id="VPPbuilddate"></div> + +<div id="like_button_container"></div> + +### Show Interface + +<p>Enter the interface name, then click "Submit" to display interface stats:</p> + +<input id="ifacename" type="text"></input> +<button onclick="getStats()">Get Stats</button> + +<div id="ifacestats"></div> + +{{< rawhtml >}} + +<script> +function getStats() { + var url="http://192.168.10.1:1234/interface_stats.json?"; + var iface=document.getElementById("ifacename").value; + url=url.concat(iface); + fetch(url, { + method: 'POST', + mode: 'no-cors', + cache: 'no-cache', + headers: { + 'Content-Type': 'application/json', + }, +}) +.then((response) => response.json()) +.then(function(obj) { + console.log(obj) + var result=obj.interface_stats.name; + result = result.concat(": rx-pkts: "); + result = result.concat(obj.interface_stats.rx_packets); + result = result.concat(" rx-bytes: "); + result = result.concat(obj.interface_stats.rx_bytes); + result = result.concat(": tx-pkts: "); + result = result.concat(obj.interface_stats.tx_packets); + result = result.concat(" tx-bytes: "); + result = result.concat(obj.interface_stats.tx_bytes); + result = result.concat(" drops: "); + result = result.concat(obj.interface_stats.drops); + result = result.concat(" ip4: "); + result = result.concat(obj.interface_stats.ip4); + result = result.concat(" ip6: "); + result = result.concat(obj.interface_stats.ip6); + + document.getElementById("ifacestats").innerHTML=result; +}) +.catch(function(error) { + console.log(error); +})} +// unconditionally populate vpp version info -> +fetch('http://192.168.10.1:1234/version.json', { + method: 'GET', + mode: 'no-cors', + cache: 'no-cache', + headers: { + 'Content-Type': 'application/json', + }, +}) +.then((response) => response.json()) +.then(function(obj) { + document.getElementById("VPPbuilddate").innerHTML=obj.vpp_details.build_date; + document.getElementById("VPPversion").innerHTML=obj.vpp_details.version; +}) +.catch(function(error) { + console.log(error); +}); +</script> + +{{< /rawhtml >}} diff --git a/extras/http/setup.http b/extras/http/setup.http index 3b8da575a98..78b7a2f19e8 100644 --- a/extras/http/setup.http +++ b/extras/http/setup.http @@ -3,4 +3,5 @@ create tap host-if-name lstack host-ip4-addr 192.168.10.2/24 set int ip address tap0 192.168.10.1/24 set int state tap0 up -http static server www-root /scratch/fdio-site-fork/public uri tls://0.0.0.0/1234 cache-size 10m fifo-size 2048 +http static server www-root <path> uri tcp://0.0.0.0/1234 cache-size 10m fifo-size 2048 +builtinurl enable |