The JsonDecoder will only work for a JSON encoded Heka message... i.e. it won't work for arbitrary JSON. I've created #309 to capture that we want a JsonPayloadDecoder that can map arbitrary JSON to a message struct, but it doesn't exist yet. And even when it does, it won't really be useful unless someone has specified the right mapping from JSON values to message fields.

All of this is a long-winded way of saying maybe we shouldn't have a default decoder value.