Skip to main content

Fixed concurrency issue

· One min read

Last week I fixed what I hope is the last concurrency issue on the backend real time processing.

Some times (< 100 per day), a first version of an HTTP communication was serialized in ES after the complete version had been. This lead to HTTP communications without response for instance... however the TCP session was parsed correctly and included all packets.

I added version control in Elasticsearch, and this time is over :-)

Global settings tab

· One min read

A new global settings tab has appeared. Its role is to gather and offer change on the configurable processes of the UI. For now:

  • Automatic data refresh
  • Automatic Whisperer status refresh
  • Merging replicas pattern

Improved back end processing

· One min read

I had hard time doing so, but I analysed all logs (Warnings, Errors) from the backend processing.

I then solved a few bugs, corrected a concurrency issue on pollers, and reached a point when:

  • There is less processing :)
  • There is no more Warning / Errors in logs on standard load
  • And: the non regression tests are valid ;)
  • I also fixed some bugs in the meantime on the UI that cause no timeline refresh (but there are still some, for sure ;) )

I'll check tomorrow on a standard loaded day how it behaves.

Merge replicas now applies to Sequence Diagrams

· One min read

Merge Replicas feature is now also applied on sequence diagrams: all replicas of same application are merge on one actor. The effect is as appreciated as for the map: more meaningful information, less noise.

I also added tooltips to sequence diagrams actors (and open action).

Prevent unwanted user selection

· One min read

When trying to drag nodes or timeline selection with a touchpad, or even sometimes with the mouse, many struggled and activated text selection. That caused nuts on the UI.

I added special CSS stuff to prevent selection on the map, tooltips, timeline and so on. This should be much better.

Example: A Ctrl+A on Grid view.

Quick filters on HTTP map for statusCodes

· One min read

Because it was requiring too many clicks, I added a quick filter feature in the tooltips of the HTTP map: -> Want to see what are the 32 requests with 500 status? Just click ! :)

A link is still missing for request without responses. I'll add it soon!

Merging replicas on map

· One min read

When I saw production map I got afraid. And Allan feedback was on same trend: it is unusable as is. Too many nodes!

So I reacted quick and here comes a new feature: merging replicas. It is now possible to merge replicas of same application on the map.

Before (note the multiple instance for tickets and rights):

After:

  • This is based on finding nodes with the same 'functional name'.
  • This functional name is extracted from the node FQDN or the node short name with a regular expression
    • Soon to be customizable
    • For now: all characters until first '.'
  • When the option is active, all nodes with same functional name are merged in a single node, but the features stay the same:
    • You can filter on the functional name (all nodes merged)
    • You can filter all communications to this functional name
  • And what's new:
    • You can see how many replicas you have
    • And open the replicas one by one in the host view

Allan, Aless, please send me a screen shot of this feature active on production! :)

Multi Whisperers monitoring

· One min read

To answer request from Aless, it is now possible to easily track the status of all selected Whisperers, without having to switch from one another:

  • New icon displayed when a group is selected, with the now classic tracking indication:

 

  • New detail panel showing one tab for each Whisperer status.

Usability increase :-) Thanks Aless!