Help understanding pack and JSON pipeline results

My app creates a number of different logs, some are already structured (JSON) and some are not. The ones that are not I am parsing the log entries and then packing the results so that I can leverage that data in grafana.

My problem is that then I have a weird mix of some messages that are JSON (and can use the JSON action in grafana to leverage the structured data there) and some are packed (and I use the unpack action to do the same).

Ideally I’d like to end up with something that is consistent across my logs so that I can uniformly process them in the grafana client.

Ideas?