[nyx/master] Rewrite log panel

commit 1ef21851fabb44d4df83cde2df64e490f31848f7 Merge: 4517746 454803d Author: Damian Johnson <atagar@torproject.org> Date: Mon May 4 22:36:43 2015 -0700 Rewrite log panel Overhaul our log panel. Cleaner code, decent test coverage, but probably neatest for users is that our deduplication logic is no longer painfully inefficient. Previously it was a O(n^2) operation essentially every time we logged an event (so pretty much O(n^3). This was so bad the panel turned off deduplication when it became too slow. New version is O(n^2) over the lifetime of our process, and we can make it linear with just a bit more work. nyx/config/attributes.cfg | 18 + nyx/config/dedup.cfg | 68 +- nyx/config/strings.cfg | 1 + nyx/controller.py | 10 +- nyx/graph_panel.py | 3 +- nyx/header_panel.py | 5 +- nyx/log_panel.py | 1309 +++++------------------------ nyx/menu/actions.py | 6 +- nyx/util/__init__.py | 9 +- nyx/util/log.py | 452 ++++++++++ nyx/util/panel.py | 36 +- nyx/util/ui_tools.py | 27 +- nyxrc.sample | 7 - run_tests.py | 10 +- test/util/__init__.py | 2 +- test/util/log/__init__.py | 8 + test/util/log/condense_runlevels.py | 13 + test/util/log/data/daybreak_deduplication | 37 + test/util/log/data/malformed_date | 21 + test/util/log/data/malformed_line | 21 + test/util/log/data/malformed_runlevel | 21 + test/util/log/data/multiple_tor_instances | 33 + test/util/log/data/tor_log | 21 + test/util/log/log_entry.py | 27 + test/util/log/log_group.py | 146 ++++ test/util/log/read_tor_log.py | 59 ++ 26 files changed, 1202 insertions(+), 1168 deletions(-)
participants (1)
-
atagar@torproject.org