In order to be able to correctly map access log entries to our backend’s Elasticsearch schema, we need to be able to define nested objects in a LogEntry template, so that the json output looks something like this:
Currently istio.policy.v1beta1.Value doesn’t support a map-like structure to be able to parse extra_data. Are there any workarounds? Or is there a plan to support maps as a type in the future?
We do have plans to adopt Common Expression Language (https://github.com/google/cel-spec) which has a full support for protos, JSONs, lists, and maps. I would imagine we would need a new value type OBJECT that represents a JSON, once we are ready to utilize CEL runtime.
You are welcome to provide more comments in the expression language issue: