Overal Top Talkers are retrieved with just one single
MySQL query and include both ipv4 and ipv4. Top talkers
can be visualized on a per-interface and per-host basis,
and can be sliced and diced.
Top Talkers and Top applications can be retrieved via MySQL
both interface-wide and per-host. A couple of tabs, namely
"Top Talkers" and "Top Applications" become available in the
historical page of interfaces and hosts. Upon focus of each
tab, an ajax request is triggered and data is fetched from MySQL.
TODO: interface wide top-talkers are retrieved from sqlite and
need to be moved to mysql.
A Lua function that queries MySQL
to retrieve top peers (given an host) has been added.
This function is used inside ntopng professional
database explorer
Existing MySQL naming convention makes two separate tables for each interface monitored. Table names are flows4_<ifid> and flows6_<ifid>. Ifid is a unique integer identifier chosen by ntopng.
Present commit simplifies this structure and make just two tables, namely flows4 and flows6, and add an extra column to store the interface names. I do not think that storing the integer interface id is good: it is just a number that only make sense inside ntopng. Using interface names would yield more (re)usable data.
Committed code transparently migrates old tables into the new ones. Old flows are migrated into the new tables, and old tables are dropped.
ntopng instance name can be specified using command line parameter
--instance-name. If no parameter is specified, instance name defaults
to the current host name.
this information is exported to MySQL and ES.