Commit Graph

1624 Commits

Author SHA1 Message Date
Timothy Stack
73e902f7d8 [json-log] handle invalid json log lines
Header from folded patch 'foldme1.patch':

[local] foldme
2019-09-03 06:19:57 -07:00
Timothy Stack
cd3b9bbb71 [docs] start a CLI options page 2019-08-20 07:21:41 -07:00
Phil Hord
5513deeade Add a gzip indexing class for faster gz navigation
The gzread function is slow.  Every time you seek to a new location, the
whole file up to that position has to be decompressed again.  This causes
massive lags when trying to do simple things in lnav on a large .gz file.

Use the zlib inflate* functions instead and record the dictionary
periodically while processing the file the first time.  Then use
inflateSetDictionary to restore the dictionary to a convenient
location when trying to seek into the file again in the future.

Use a default period of 1MB of compressed data for syncpoints.
Each syncpoint uses 32KB. This is a ratio of 3.2%.  For example,
a 1GB .gz file (compressed size) will require us to keep 32MB
of index data in memory. A better method may be to use a fixed
number of syncpoints and divide the file appropriately. This
would keep the memory bounded at the cost of slower file
navigation on large .gz files.

Use pread to read the data for the stream decompressor and remove
the lock_hack previously employed.

NB. The documentation on these zlib functions is sparse. I followed
the example in zlib/examples/zran.c, but I used the z_stream total_in
and total_out variables instead of keeping my own separately as zran.c
does.  Maybe this is incompatible with some very old zlib versions.
I haven't looked.
2019-08-17 18:40:55 -07:00
Timothy Stack
165cd69c8d [vmw_log] allow colons in user names 2019-08-10 22:16:54 -07:00
Timothy Stack
585986057d [build] missed cleaning a dir up 2019-08-10 21:59:43 -07:00
Timothy Stack
56a341f7f8 [view_curses] colors
Defect Number:
    Reviewed By:
   Testing Done:
2019-08-07 09:46:19 -07:00
Timothy Stack
9a05b9d186 [config] pay attention to XDG_CONFIG_HOME
Fixes #105
2019-08-01 07:14:47 -07:00
Timothy Stack
07cc749c50 [stdin-capture] change save limit to 10MB 2019-07-31 10:11:23 -07:00
Timothy Stack
71f56d29da [hotkeys] remove extra call to textview_curses->handle_key() 2019-07-31 09:02:39 -07:00
Timothy Stack
ed67c6cf9f Remove noisy log message
Fixes #648
2019-07-30 21:50:02 -07:00
Timothy Stack
3669b73e5b [highlight] avoid highlighting keywords in comments and strings 2019-07-30 07:06:16 -07:00
Timothy Stack
e442f84e80 [textview] pause loading of files by pressing =
Fixes #670
2019-07-30 06:28:42 -07:00
Timothy Stack
63dba408ec [stdin] Keep the stdin piper file in .lnav so that it can be reopened
When piping the output of a program into lnav, the data would
be dumped to the terminal on exit so that it would not be
lost.  Since that is a bit noisy, the temp file used to store
the data is now left in .lnav so that it can be reopened later.
Older stdin captures are automatically removed after a day.

Also took the opportunity to start using filesystem::path more.

Fixes #436
2019-07-29 22:18:32 -07:00
Tim Stack
74d026cb76
Merge pull request #672 from djoreilly/fix-openstack-debug
Fix openstack_log debug level
2019-07-29 15:18:28 -07:00
Darragh O'Reilly
6e93145f23 Fix openstack_log debug level
So ":set-min-log-level info" gets rid of lines with DEBUG.
2019-07-29 17:22:51 +01:00
Timothy Stack
ffd9d88add [log_format] ignore line-format field if timestamp-format is set
Fixes #661
2019-07-26 01:16:37 -07:00
Timothy Stack
34db64aa32 [logfile] the index rebuild didn't check the mtime if the file size was the same
Fixes #668
2019-07-25 07:31:46 -07:00
Timothy Stack
d381197195 [highlights] a little too quick on the last checkin 2019-07-24 13:43:01 -07:00
Timothy Stack
e6590e94e2 [highlight] fix highlights
Fix #667
2019-07-24 13:37:05 -07:00
Timothy Stack
65d2f7552c [cmake] install the binary 2019-07-22 10:36:47 -07:00
Timothy Stack
91dd8a84ec [cmake] enable jit for libpcre 2019-07-15 23:04:31 -07:00
Timothy Stack
76ea0abcd9 [cmake] check for libutil 2019-07-15 20:51:43 -07:00
Timothy Stack
7c485f64dc [cmake] fix some test targets 2019-07-15 10:08:14 -07:00
Timothy Stack
fa1217e2f6 [cmake] fix config value 2019-07-15 09:46:40 -07:00
Timothy Stack
0882f95ef4 [cmake] remove HOMEPAGE_URL from project() 2019-07-15 08:40:44 -07:00
Timothy Stack
8bb1d4a732 [cmake] add configure stuff 2019-07-14 23:18:53 -07:00
Timothy Stack
1257fcd62a [codacy] fix a few issues turned up 2019-07-11 14:59:54 -07:00
Timothy Stack
ea7663feba oops, missed the cmake dir 2019-07-09 13:47:41 -07:00
Timothy Stack
325e4a15d9 [build] test out the hunter package manager 2019-07-09 08:34:55 -07:00
Timothy Stack
76edd2a9d1 [line_buffer] refactor left a bug with non-blocking files
Fixes #662
2019-06-27 10:19:54 -07:00
Timothy Stack
b81b35c866 [log-view] in time-offset mode, show negative times for messages before the first mark
Prototype for #395
2019-06-26 21:52:40 -07:00
Timothy Stack
d61f2568d6 [ptimec] fix a case of undefined behavior 2019-06-21 17:19:56 -07:00
Timothy Stack
de6ec92f2f [yajlpp] fix config save 2019-06-21 05:14:00 -07:00
Timothy Stack
a9e9613214 [textfile] fix search issue 2019-06-18 06:28:40 -07:00
Timothy Stack
26ada4dd2f [grep_proc] missed draining the IPC pipe 2019-06-17 21:02:45 -07:00
Timothy Stack
e27cf3b158 [data-parser] limit the number of pairs produced
Fixes #645
2019-06-16 07:26:47 -07:00
Timothy Stack
a10fa06b10 [build] remove test file 2019-06-15 06:48:33 -07:00
Timothy Stack
02c53976b4 Some refactoring for the line buffer and other cleanups
Fixes #649
2019-06-15 06:32:02 -07:00
Timothy Stack
b5c6ed6240 [rebiuld] fix an issue when a text file is truncated 2019-05-23 21:21:39 -07:00
Timothy Stack
f0000ae065 [keymap] redo the keymap definition
Defect Number:
    Reviewed By:
   Testing Done:
2019-05-23 06:28:42 -07:00
Timothy Stack
e18e8e214a [build] missed lambda captured 2019-05-21 22:37:36 -07:00
Timothy Stack
0918063640 [cleanup] some modernization 2019-05-21 22:14:36 -07:00
Timothy Stack
6cf5cc8213 [logfile] fix issue when files have headers
Defect Number:
    Reviewed By:
   Testing Done:
2019-05-17 07:42:05 -07:00
Timothy Stack
3c85936999 [jsonlog] fix ident highlight when body has newlines 2019-05-16 02:23:06 -07:00
Timothy Stack
1fc24ecabf [bin2c] improve building of data files that are incorporated into the binary 2019-05-15 09:13:56 -07:00
Timothy Stack
c7046b0b54 [json] newlines in the line format cause problems
Fixes #644
2019-05-13 10:44:33 -07:00
Timothy Stack
bb6f31eaa0 [theme] styling for scrollbars 2019-05-12 06:53:40 -07:00
Timothy Stack
ecd17a9f97 [build] distclean fix 2019-05-08 09:28:49 -07:00
Timothy Stack
76b08f5fe3 [build] fix other lib order 2019-05-08 09:11:22 -07:00
Timothy Stack
e80ec6ec73 [build] fix lib order 2019-05-08 09:07:29 -07:00