Surely each JSON object is on a line of its own rather than pretty-printed like this? Use the json_lines codec to make sure there's a linebreak between each event.
There are two very good reasons why Logstash works like this:
- Logstash doesn't know when the file is "done", so it doesn't know when to write the final
]. - Reading the kind of logfile you're asking for would be very costly if the file is big.