apinf / platform

Apinf - Open source API management platform with multi proxy and protocol support
https://apinf.com/
European Union Public License 1.1
74 stars 33 forks source link

eMQ dashboard implementation #3149

Closed preriasusi closed 6 years ago

preriasusi commented 6 years ago

Let's keep this as a epic. To be splitted into tasks.

marla-singer commented 6 years ago

@preriasusi Will you add a description for the issue?

preriasusi commented 6 years ago

Tomorrow to choose technologies and split into taks

marla-singer commented 6 years ago

Link to wireframes https://marvelapp.com/b8b1209/screen/37002765

@phanimahesh I've got questions about behaviour of MQTT rules

ACL page

  1. The previous version of ACL rules that are available in APInf platform right now it allows to set Allow/Deny options.

Current version of ACL

screenshot at jan 10 17-03-35

Future version of ACL

screenshot at jan 10 17-04-26

Is it still needed options and they're missed or it will be gone?

  1. What fields are required? Based on the existing version of ACL, it supposes that one of three fields (Username, ID, IP) is filled. Is it still so? What fields are required?

MQTT Dashboard How can I fetch data for Incoming/Outgoing Bandwith chart?

phanimahesh commented 6 years ago

The wireframe needs a couple of updates. I'll talk to Illya and get back to you. Regarding bandwidth, I still don't have a eaasy way of extracting it, will let you know once I have it. Expect to have a url returning json, with the bandwidth values in response.

55 commented 6 years ago

@marla-singer we had a call with @phanimahesh, I will apply discussed changes, confirm them and then add to mockup for implementation.

marla-singer commented 6 years ago

@phanimahesh I found some problem with "Delivered messages" 🤔

The table "Wildcards" has the column "Delivered messages" then supposes to display a count of delivered messages for a particular topic. But the fetched data from Elasticsearch doesn't contain any field "topic" so I can't associate that with particular topic value. The same stuff is for chart Delivered Messages on the particular Topic view.

Fetched data

"_source" : {
          "client_id" : "mosqsub|4263-frozenlake",
          "event" : "message_delivered",
          "id" : "AAViz+71xm/EsgAABWq/mg==",
          "timestamp" : 1516020090390
        }

Wireframes

screenshot at jan 16 18-37-20 screenshot at jan 16 18-37-53

What to do? Rethink "Delivered messages" or another thing?

phanimahesh commented 6 years ago

Sorry about that, looks like we weren't including topics in logs. I'll include it and redeploy. It's just a one line config change.

marla-singer commented 6 years ago
  1. Charts (1) display data for ALL topics at all or for the starred topics that are shown in the "Starred Wildcards" table below?

  2. Table "Starred wildcards". Is data updated every 5 seconds when "Last 24 hour" time frame is selected?

  3. When the date range picker is changed to another value then chart data is updated to the related timeframe as well or not?

joxi_screenshot_1516701720283 3

  1. Topics page. Is table data updated every 5 seconds when "Last 24 hour" time frame is selected? joxi_screenshot_1516701720283 2
55 commented 6 years ago

@marla-singer

  1. Yes, for all topics, not only starred.
  2. No updates needed, just a data for 24 hours, week, month.
  3. Chart and table are not connected.
  4. Same here, no updates, only data for selected period.

@phanimahesh @ilarimikkonen What do you think about real-time? Is it from 00:00 to right now or something else?

ilarimikkonen commented 6 years ago

@marla-singer @55 on points 1-4 I agree with Illya.

ilarimikkonen commented 6 years ago

about real time, IF i got this right I propose 24 hrs. reasoning being that if you look at the real time stats at 00.01, then you are screwed if it's from 00.00-00.01

marla-singer commented 6 years ago

@55 @ilarimikkonen If "Real time" and "Outgoing Bandwith" are selected then are other values must be updated every 5 seconds as well or not? joxi_screenshot_1516781884524 1

55 commented 6 years ago

@marla-singer correct. When you click on number (and it gets highlighted) it changes chart, other numbers still have to be updated every 5 sec.

phanimahesh commented 6 years ago

Bandwidth updates every 5 seconds are not currently possible. We calculate bandwidth in a very roundabout way, the actual stats we have access to are the number of packets, and estimates from the monitoring server (nagios/reimann).