-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Histogram is Back in Zui #2472
Histogram is Back in Zui #2472
Conversation
17b9b1b
to
dc95f89
Compare
I did some preliminary testing on this branch at @jameskerr's suggestion. The video below shows what appears to be a bug as of commit 363d9a1 in this branch. Repro steps:
Repro.mp4 |
Here's a bug I found with imported queries that seems to be specific to this branch. Currently testing at commit f9f4c4d. Repro steps:
Repro.mp4The stack dump:
|
More testing of this branch at commit f9f4c4d. Here I'm trying to compare the experience with non-Zeek data. Compare the two videos below. In both cases I'm starting from a completely pristine app that's never been launched before. In the first, I import sample.zng from this repo and observe the working histogram. Then I import the non-Zeek prs.json from the Zed repo. Expectations were set at the top of this issue that the histogram would be hidden if we can't find a "time" range for the pool, and I expect the "prs.json" pool fits that description. I was therefore a little thrown by the fact that it had a persistent "Loading..." shown in the histogram area. I guess it kind of makes sense since there was previously a histogram there in the same Query Session, but even if so, the "Loading..." is still distracting. If the histogram area can't be automatically hidden at that point, then I'd suggest that maybe the "Loading..." be replaced with something indicating that the histogram area was intentionally not being populated. I also noticed the uncaught error below in the DevTools console, so that may be related. Repro1.mp4
By comparison, if I make the "prs.json" the first and only data I work with in the pristine app, the histogram area never appears, though the error still shows up in DevTools. But I presume what I'm seeing in the main window is the intended experience? Repro2.mp4 |
More testing of this branch at commit f9f4c4d. Here I import the data "all.zng" which are the logs generated by importing the common test data "all.pcap". After brushing the histogram I tried to manually edit one part of the time range, which caused the histogram to hang at "Loading..." DevTools showed an error:
Repro.mp4 |
Also, I wanted to test out how things would go if I manually added a Time Range pin first and then manipulated the histogram. At that point I bumped into known bug #2483 again. Since you have time range pins on the brain, maybe a good time to knock that one out? 😬 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The fixes to the branch bugs reported in this PR all seem effective, and further banging did not reveal any additional bugs, so this is a functional 👍 from me!
The Histogram is Back in Zui
In an effort to ship sooner, I've dropped some of my original requirements. The histogram can be shown and hidden manually for each tab using "App Menu" => "View" => "Show Histogram". The histogram will also be hidden if we can't find a "time" range for the pool. Other than that, we don't try to determine if a pool is a zeek pool or not. If a user want's non-zeek data and are annoyed with the histogram, they can hide it.
Brushing the histogram will never update the Zed text directly, it will only update the time range pin. Updating the Zed is prone to errors as we do not have a robust way to do it. This is a restraint that simplifies the app by making it predictable.
This histogram is just like the old one. It counts by the "ts" time field, and the string "_path" field.
Conditionally render the histogram for zeek pools only.Determine and store the fact that a pool is a zeek pool.Notes for the future:
We could add tags to a pool that could be used to determine features. We could add a form on the pool page to determine if something is a zeek log.
Think about configuring the histogram with colors for types and things.
Closes #2489
Closes #2483
Closes #2488