mirror of
https://github.com/tstack/lnav
synced 2024-11-03 23:15:38 +00:00
172 lines
14 KiB
Plaintext
172 lines
14 KiB
Plaintext
|
[1m[31m✘ error[0m: “invalid(abc” is not a valid regular expression
|
|||
|
[1m[31mreason[0m: missing closing parenthesis
|
|||
|
[36m --> [0m[1m/invalid_props_log/tags/badtag3/pattern[0m
|
|||
|
[36m | [0m[37m[40minvalid[0m[1m[7m[32m[40m([0m[37m[40mabc [0m
|
|||
|
[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:35
|
|||
|
[36m | [0m[37m[40m "pattern": "invalid(abc"[0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/invalid_props_log/tags/badtag3/pattern[0m [4m<regex>[0m
|
|||
|
[1mDescription[0m
|
|||
|
The regular expression to match against the body of the log message
|
|||
|
[1mExample[0m
|
|||
|
\w+ is down
|
|||
|
[1m[31m✘ error[0m: “abc(def” is not a valid regular expression
|
|||
|
[1m[31mreason[0m: missing closing parenthesis
|
|||
|
[36m --> [0m[1m/invalid_props_log/search-table/bad_table_regex/pattern[0m
|
|||
|
[36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40mdef [0m
|
|||
|
[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:40
|
|||
|
[36m | [0m[37m[40m "pattern": "abc(def" [0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/invalid_props_log/search-table/bad_table_regex/pattern[0m [4m<regex>[0m
|
|||
|
[1mDescription[0m
|
|||
|
The regular expression for this search table.
|
|||
|
[1m[31m✘ error[0m: “^(?<timestamp>\d+: (?<body>.*)$” is not a valid regular expression
|
|||
|
[1m[31mreason[0m: missing closing parenthesis
|
|||
|
[36m --> [0m[1m/bad_regex_log/regex/std/pattern[0m
|
|||
|
[36m | [0m[1m[36m[40m^[0m[1m[7m[32m[40m([0m[1m[32m[40m?[0m[1m[36m[40m<[0m[37m[40mtimestamp>[0m[1m[37m[40m\d[0m[1m[36m[40m+[0m[37m[40m: [0m[1m[32m[40m([0m[1m[32m[40m?[0m[1m[36m[40m<[0m[37m[40mbody>[0m[1m[36m[40m.[0m[1m[36m[40m*[0m[1m[32m[40m)[0m[1m[36m[40m$[0m[37m[40m [0m
|
|||
|
[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:6
|
|||
|
[36m | [0m[37m[40m "pattern": "^(?<timestamp>\\d+: (?<body>.*)$"[0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/bad_regex_log/regex/std/pattern[0m [4m<message-regex>[0m
|
|||
|
[1mDescription[0m
|
|||
|
The regular expression to match a log message and capture fields.
|
|||
|
[1m[31m✘ error[0m: “(foo” is not a valid regular expression
|
|||
|
[1m[31mreason[0m: missing closing parenthesis
|
|||
|
[36m --> [0m[1mpattern[0m
|
|||
|
[36m | [0m[1m[7m[32m[40m([0m[37m[40mfoo [0m
|
|||
|
[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:13
|
|||
|
[36m | [0m[37m[40m "error": "(foo" [0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/bad_regex_log/level/error[0m [4m<pattern|integer>[0m
|
|||
|
[1mDescription[0m
|
|||
|
The regular expression used to match the log text for this level. For JSON logs with numeric levels, this should be the number for the corresponding level.
|
|||
|
[1m[31m✘ error[0m: “abc(” is not a valid regular expression
|
|||
|
[1m[31mreason[0m: missing closing parenthesis
|
|||
|
[36m --> [0m[1m/bad_regex_log/highlights/foobar/pattern[0m
|
|||
|
[36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40m [0m
|
|||
|
[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:25
|
|||
|
[36m | [0m[37m[40m "pattern": "abc(" [0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/bad_regex_log/highlights/foobar/pattern[0m [4m<regex>[0m
|
|||
|
[1mDescription[0m
|
|||
|
A regular expression to highlight in logs of this format.
|
|||
|
[1m[31m✘ error[0m: “foo” is not a valid value for option “[1m/bad_sample_log/value/pid/kind[0m”
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:24
|
|||
|
[36m | [0m[37m[40m "kind": "foo" [0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/bad_sample_log/value/pid/kind[0m [4m<data-type>[0m
|
|||
|
[1mDescription[0m
|
|||
|
The type of data in the field
|
|||
|
[1mAllowed Values[0m
|
|||
|
[1mstring[0m, [1minteger[0m, [1mfloat[0m, [1mboolean[0m, [1mjson[0m, [1mstruct[0m, [1mquoted[0m, [1mxml[0m
|
|||
|
[1m[31m✘ error[0m: '[1mbad[0m' is not a supported log format $schema version
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-schema/format.json[0m:2
|
|||
|
[36m | [0m[37m[40m "$schema": "bad" [0m
|
|||
|
[36m =[0m [36mnote[0m: expecting one of the following $schema values:
|
|||
|
[1m https://lnav.org/schemas/format-v1.schema.json[0m
|
|||
|
[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m
|
|||
|
[1m/$schema[0m [4mThe URI of the schema for this file[0m
|
|||
|
[1mDescription[0m
|
|||
|
Specifies the type of this file
|
|||
|
[1m[31m✘ error[0m: invalid pattern: “[1mincomplete-match[0m”
|
|||
|
[1m[31mreason[0m: pattern does not match entire message
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:20
|
|||
|
[36m | [0m[37m[40m1428634687123; foo [0m
|
|||
|
[36m | [0m[37m[40m [0m[1m[31m[40m^ matched up to here[0m[37m[40m [0m
|
|||
|
[36m =[0m [36mnote[0m: [1mincomplete-match[0m = [1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m;
|
|||
|
[36m =[0m [36mhelp[0m: update the regular expression to fully capture the sample message
|
|||
|
[1m[31m✘ error[0m: invalid sample log message: "abc: foo"
|
|||
|
[1m[31mreason[0m: unrecognized timestamp -- abc
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:30
|
|||
|
[36m =[0m [36mnote[0m: the following custom formats were tried:
|
|||
|
abc
|
|||
|
[36m^ [0m“[1m%i[0m”[36m matched up to here[0m
|
|||
|
[36m =[0m [36mhelp[0m: If the timestamp format is not supported by default, you can add a custom format with the “[1mtimestamp-format[0m” property
|
|||
|
[1m[31m✘ error[0m: invalid sample log message: "1428634687123| debug hello"
|
|||
|
[1m[31mreason[0m: “[1mdebug[0m” does not match the expected level of “[1minfo[0m”
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:33
|
|||
|
[36m =[0m [36mnote[0m: matched regex = [1mwith-level[0m
|
|||
|
captured level = “debug”
|
|||
|
[1m[31m✘ error[0m: invalid pattern: “[1mwith-level[0m”
|
|||
|
[1m[31mreason[0m: pattern does not match entire multiline sample message
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:37
|
|||
|
[36m =[0m [36mnote[0m: [1mwith-level[0m = [1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m\| [1m[32m([0m[1m[32m?[0m[1m[36m<[0mlevel>[1m\w[0m[1m[36m+[0m[1m[32m)[0m [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m
|
|||
|
[36m =[0m [36mhelp[0m: use “.*” to match new-lines
|
|||
|
[1m[31m✘ error[0m: invalid sample log message: "1428634687123; foo bar"
|
|||
|
[1m[31mreason[0m: sample does not match any patterns
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:41
|
|||
|
[36m =[0m [36mnote[0m: the following shows how each pattern matched this sample:
|
|||
|
[37m[40m1428634687123; foo bar[0m
|
|||
|
[36m^ [0m[1mbad-time[0m[36m matched up to here[0m
|
|||
|
[36m^ [0m[1msemi[0m[36m matched up to here[0m
|
|||
|
[36m^ [0m[1mstd[0m[36m matched up to here[0m
|
|||
|
[36m^ [0m[1mwith-level[0m[36m matched up to here[0m
|
|||
|
[36m =[0m [36mnote[0m: [1mbad-time [0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\w[0m[1m[36m+[0m[1m[32m)[0m: [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m”
|
|||
|
[1msemi [0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m; [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m”
|
|||
|
[1mstd [0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m: [1m[32m([0m[1m[32m?[0m[1m[36m<[0mpid>[1m\w[0m[1m[36m+[0m[1m[32m)[0m [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m[36m.[0m[1m[36m*[0m[1m[32m)[0m[1m[36m$[0m”
|
|||
|
[1mwith-level[0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m\| [1m[32m([0m[1m[32m?[0m[1m[36m<[0mlevel>[1m\w[0m[1m[36m+[0m[1m[32m)[0m [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m”
|
|||
|
|
|||
|
[33m⚠ warning[0m: invalid pattern: “[1m/bad_sample_log/regex/semi[0m”
|
|||
|
[33mreason[0m: pattern does not match any samples
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:10
|
|||
|
[36m =[0m [36mhelp[0m: every pattern should have at least one sample that it matches
|
|||
|
[33m⚠ warning[0m: invalid pattern: “[1m/bad_sample_log/regex/std[0m”
|
|||
|
[33mreason[0m: pattern does not match any samples
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:7
|
|||
|
[36m =[0m [36mhelp[0m: every pattern should have at least one sample that it matches
|
|||
|
[33m⚠ warning[0m: invalid value “[1m/invalid_props_log/value/non-existent[0m”
|
|||
|
[33mreason[0m: no patterns have a capture named “non-existent”
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4
|
|||
|
[36m =[0m [36mnote[0m: the following captures are available:
|
|||
|
[1mbody[0m, [1mpid[0m, [1mtimestamp[0m
|
|||
|
[36m =[0m [36mhelp[0m: values are populated from captures in patterns, so at least one pattern must have a capture with this value name
|
|||
|
[1m[31m✘ error[0m: invalid tag definition “[1m/invalid_props_log/tags/badtag[0m”
|
|||
|
[1m[31mreason[0m: tag definitions must have a non-empty pattern
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4
|
|||
|
[1m[31m✘ error[0m: invalid tag definition “[1m/invalid_props_log/tags/badtag2[0m”
|
|||
|
[1m[31mreason[0m: tag definitions must have a non-empty pattern
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4
|
|||
|
[1m[31m✘ error[0m: invalid tag definition “[1m/invalid_props_log/tags/badtag3[0m”
|
|||
|
[1m[31mreason[0m: tag definitions must have a non-empty pattern
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4
|
|||
|
[1m[31m✘ error[0m: invalid value for property “[1m/invalid_props_log/timestamp-field[0m”
|
|||
|
[1m[31mreason[0m: “ts” was not found in the pattern at [1m/invalid_props_log/regex/std[0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4
|
|||
|
[36m =[0m [36mnote[0m: the following captures are available:
|
|||
|
[1mbody[0m, [1mpid[0m, [1mtimestamp[0m
|
|||
|
[1m[31m✘ error[0m: “not a color” is not a valid color value for property “[1m/invalid_props_log/highlights/hl1/color[0m”
|
|||
|
[1m[31mreason[0m: Unknown color: 'not a color'. See https://jonasjacek.github.io/colors/ for a list of supported color names
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:23
|
|||
|
[1m[31m✘ error[0m: “also not a color” is not a valid color value for property “[1m/invalid_props_log/highlights/hl1/background-color[0m”
|
|||
|
[1m[31mreason[0m: Unknown color: 'also not a color'. See https://jonasjacek.github.io/colors/ for a list of supported color names
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:24
|
|||
|
[1m[31m✘ error[0m: “[1mno_regexes_log[0m” is not a valid log format
|
|||
|
[1m[31mreason[0m: no regexes specified
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/no-regexes/format.json[0m:4
|
|||
|
[1m[31m✘ error[0m: “[1mno_regexes_log[0m” is not a valid log format
|
|||
|
[1m[31mreason[0m: log message samples must be included in a format definition
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/no-regexes/format.json[0m:4
|
|||
|
[1m[31m✘ error[0m: “[1mno_sample_log[0m” is not a valid log format
|
|||
|
[1m[31mreason[0m: log message samples must be included in a format definition
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/no-samples/format.json[0m:4
|
|||
|
[1m[31m✘ error[0m: failed to compile SQL statement
|
|||
|
[1m[31mreason[0m: near "TALE": syntax error
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sql/init.sql[0m:4
|
|||
|
[36m | [0m[32m[40m-- comment test [0m
|
|||
|
[36m | [0m[1m[36m[40mCREATE[0m[37m[40m [0m[37m[40mTALE[0m[37m[40m [0m[1m[37m[40minvalid[0m[1m[37m[40m [0m[37m[40m([0m[37m[40mx[0m[37m[40m [0m[37m[40my[0m[37m[40m [0m[37m[40mz[0m[37m[40m); [0m
|
|||
|
[36m | [0m[37m[40m [0m[36m[40m^ [0m[1m[31m[40mnear "TALE": syntax error[0m[37m[40m [0m
|
|||
|
[1m[31m✘ error[0m: failed to execute SQL statement
|
|||
|
[1m[31mreason[0m: [1m[31m✘ error[0m: “abc(” is not a valid regular expression
|
|||
|
[1m[31m | [0m [1m[31mreason[0m: missing closing parenthesis
|
|||
|
[1m[31m | [0m [36m --> [0m[1marg[0m
|
|||
|
[1m[31m | [0m [36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40m [0m
|
|||
|
[1m[31m | [0m [36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m
|
|||
|
[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sql/init2.sql[0m
|
|||
|
[36m | [0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mregexp_match[0m[1m[7m[31m[40m([0m[35m[40m'abc('[0m[37m[40m, [0m[35m[40m'123'[0m[37m[40m) [0m
|
|||
|
[36m | [0m[1m[36m[40mFROM[0m[37m[40m [0m[37m[40msqlite_master[0m[37m[40m; [0m
|