• Menu
    • Ping map
    • Uplink map
    • Temperature map
    • Traffic map
    • Comment spotter
    • Total switch traffic
    • DISCO
    • Travel in time
    • Replay TG
    • View
    • Toggle Night Mode
    • Map scale
    • Help
    • About NMS
    • Keyboard Shortcuts
    • Debug timers

Keyboard Shortcuts

Key Description
? Toggle navigation bar
n Toggle night mode
1 View Ping map
2 View uplink map
3 View temperature map
4 View uplink traffic map
5 View comment spotter map
6 View total switch traffic map
7 View Disco map
h Step 1 hour back in time
j Step 5 minutes back in time
k Step 5 minutes forward in time
l Step 1 hour forward in time
p Toggle playback (1 hour per second)
r Return to real time

Time travel

Some features do not have time travel support (comment spotting and DHCP map at the moment). We also lack compatible SNMP data for the first day or so, so you'll only have ping data for the first day of TG15.

It could take some time to load a specific point in time for the first time. See "About performance" under the help menu for more information.

You can also step backwards and forwards in time, stop and start replay and go back to real time using keyboard shortcuts. See the help menu for an overview of keyboard shortcuts.

Welcome to NMS

Cool stuff:

  • Click a switch for more info
  • Rewind: You can check out state at a specific time or replay from the beginning of the event. Only works for data where we keep time-series (so not for comments)
  • Press '?' to toggle the menu.
  • Auto-scaling the viewport/canvas
  • Total client speed (up right)
  • Generic(-ish) map handlers: provide a name, init-function and an update-function and the nms lib does the rest as far as integration goes.

Todo list front end:

  • Polish time travel UI (Allow playing from a given time at a given speed, play/pause buttons, etc)
  • Better "popup" boxes: It's growing out of control.
  • Toggle auto-scale on/off
  • Clean up various global variables
  • Create name spaces in nms.*: It's just barely better than global stuff now.
  • Add DHCP map
  • More info on switches: Port state, possibly link time trends
  • Moving switches around (like ping.html + edit)
  • Split nms.js into multiple components to unclutter the code
  • Comments: Fix UTF8 garbligash caused by $dbh->quote()

Todo for backend:

  • IPv6 support
  • Provide public API's
  • Investigate a json tree filter/massager
  • Close SQL injections (IT'S WIDE OPEN BECAUSE WHY NOT THAT'S NEVER A PROBLEM)
  • Split port-state.pl into multiple appropriate pieces. Right it mixes heavy time-critical data with less time-critical and cheap computation.
  • Rip comments out of port-state.pl completely so it's not bound by the same cache issues and can be reliably refreshed.
  • Consider time log of DHCP (right now it just stores the most recent timestamp, making time travel impossible)
  • Fix SNMP-fetcher so it gets ifXTable and at least ifOperStatus from ifTable. Don't request the entire ifXTable if we can avoid it. Possibly other tweaks.
  • Support for adding switches through an API, not just pure SQL.
  • Integrate with FAP
  • Clean up old interfaces
  • Review various agents/tools
  • Improve cache headers
  • Cache invalidation of comments? (Probably not needed)
  • Re-test the SQL schema. It's been modified and works fine on my laptop, but I need to dump it, commit it and test it.
  • Munin plugin for ports.

Debug timers (e.g.: Break stuff! FAST!)

These are internal timers for the NMS frontend. They are provided mainly to debug the frontend. Setting AJAX-triggering counters to ridiculous numbers is not advised (mainly because it causes server load).