Issue
I'm using jq to parse some of my logs, but some of the log lines can't be parsed for various reasons. Is there a way to have jq ignore those lines? I can't seem to find a solution. I tried to use the --seq argument that was recommended by some people, but --seq ignores all the lines in my file.
Solution
Assuming that each log entry is exactly one line, you can use the -R
or --raw-input
option to tell jq to leave the lines unparsed, after which you can prepend fromjson? |
to your filter to make jq try to parse each line as JSON and throw away the ones that error.
Answered By - jwodder