Commit Graph

500 Commits

Author SHA1 Message Date
Timothy Stack
e525d247ae [json-log] some more fixes for handling invalid json logs 2019-10-19 07:11:47 -07:00
Timothy Stack
8b750c83f1 update expected output 2019-09-11 08:12:56 -07:00
Timothy Stack
98519b045a [help] mention hide/show-unmarked-lines
Fixes #631
2019-09-10 05:50:10 -07:00
Timothy Stack
b7255419e6 [test] fix sed usage
Fixes #572
2019-09-10 05:39:34 -07:00
Timothy Stack
9d6e6e4638 [build] fix a typo 2019-09-09 22:10:50 -07:00
Timothy Stack
27587ee917 [test] get test working on OS X 2019-09-09 21:47:41 -07:00
Tim Stack
b2463e44a3
Merge pull request #677 from phord/gzip-index
Add a gzip indexing class for faster gz navigation
2019-09-09 21:35:44 -07:00
Timothy Stack
f11364660d [build] missed file in makefile 2019-09-03 07:27:24 -07:00
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
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
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
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
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
7c485f64dc [cmake] fix some test targets 2019-07-15 10:08:14 -07:00
Timothy Stack
1257fcd62a [codacy] fix a few issues turned up 2019-07-11 14:59:54 -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
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
6cf5cc8213 [logfile] fix issue when files have headers
Defect Number:
    Reviewed By:
   Testing Done:
2019-05-17 07:42:05 -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
76b08f5fe3 [build] fix other lib order 2019-05-08 09:11:22 -07:00
Timothy Stack
fb7d6eafaf [build] some refactoring of files 2019-05-08 05:30:59 -07:00
Timothy Stack
63e53377c3 [theme] add monocai theme 2019-05-04 10:35:23 -07:00
Timothy Stack
a8e1f62da6 [build] add fmt lib 2019-05-04 07:07:39 -07:00
Timothy Stack
fc9f9f43cf add bad-config to the dist 2019-05-03 14:29:27 -07:00
Timothy Stack
06d1098211 [config] initial support for themes
For #422

Still more to do
2019-05-03 13:50:19 -07:00
Timothy Stack
6f451eec35 [pretty] fix crash when rewriting lines 2019-04-18 04:26:24 -07:00
Timothy Stack
5e8a1cebe9 [json-log] handle arrays in json log message fields
Fixes #635
2019-04-17 06:17:11 -07:00
Timothy Stack
062d480fea [sql] fix some issues found while trying to query some logs 2019-03-21 07:46:51 -07:00
Timothy Stack
2fa603d07e [tests] fix a test 2019-03-15 22:38:10 -07:00
Timothy Stack
78d80fddd5 [cli] add -r flag for recursively loading files from a directory hierarchy
Fixes #431
2019-03-14 22:24:57 -07:00
Timothy Stack
33cdbefaaa [help] some online help additions 2019-03-13 23:07:39 -07:00
Timothy Stack
21c5c52843 [format] allow multiple log format patterns per log file
This tries to address #624
2019-03-13 16:37:41 -07:00
Timothy Stack
0e12f98ae7 [sql] change base_time to time_offset 2019-03-12 22:41:39 -07:00
Timothy Stack
469124d72b [time-offset] fixes
Defect Number:
    Reviewed By:
   Testing Done:
2019-03-12 07:06:31 -07:00
Timothy Stack
4614cbcb75 [sql] fix joins on some vtables 2019-02-18 14:44:59 -08:00
Timothy Stack
43243c7ba3 [build] revive freebsd release build
Some misc fixes for filtering as well
2019-02-17 07:40:35 -08:00
Timothy Stack
02b9e13343 [filters] add the number of hits for each filter in the editor
Might be useful to know the number of hits for a given filter.
2019-02-15 09:22:32 -08:00
Timothy Stack
659f01c9ae [filters] add a log_filters column to log tables that contains the matched filters
Related to #597
2019-02-14 22:42:44 -08:00
Timothy Stack
153b59ea8a [status] some fixes for the bottom status bar
Fixes #603
Fixes #578
2019-02-05 07:30:57 -08:00
Timothy Stack
104b8736e8 [vtab] fix for failed update to log_tags column and fix filtering with json logs 2019-02-01 13:31:28 -08:00
Timothy Stack
3d77fb2acf [cmds] change :write-raw-to to write all the lines in the view
Fixes #606
2019-01-29 07:30:37 -08:00