0
我有几个情况需要将地图字段转换为有时嵌套几层的数组字段。这些是需要在文档中更改的唯一字段,所以其他字段不需要对它们执行任何类型的转换。我目前的做法是在每个级别上不变的领域进行复制,这样的:使用Jolt更改目标字段
[
{
"operation": "shift",
"spec": {
"agentsMetrics": {
"metricsPerAgent": {
"*": {
"$": "agentsMetrics.metricsPerAgent[#2].agentId",
"@": "agentsMetrics.metricsPerAgent[#2].value"
}
},
"*": {
"@": "agentsMetrics.&"
}
},
"skillsMetricsPerAgent": {
"metricsPerSkill": {
"*": {
"$": "skillsMetricsPerAgent.metricsPerSkill[#2].skillId",
"metricsPerAgent": {
"*": {
"$": "skillsMetricsPerAgent.metricsPerSkill[#4].metricsPerAgent[#2].agentId",
"@": "skillsMetricsPerAgent.metricsPerSkill[#4].metricsPerAgent[#2].value"
}
},
"*": {
"@": "skillsMetricsPerAgent.metricsPerSkill[#3].&"
}
}
},
"*": {
"@": "skillsMetricsPerAgent.&"
}
}
}
}
]
当我输入的是这样的:
{
"agentsMetrics": {
"metricsTotals": {
"connectedEngagements": 70,
"nonInteractiveTotalHandlingTime": 309,
"totalHandlingTime": 47696,
"totalNonInteractiveChats": 2,
"totalInteractiveChats": 73
},
"metricsPerAgent": {
"645355412": {
"connectedEngagements": 2,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 1718,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 2
},
"645366912": {
"connectedEngagements": 1,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 488,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 1
}
}
},
"skillsMetricsPerAgent": {
"metricsTotals": {
"connectedEngagements": 70,
"nonInteractiveTotalHandlingTime": 309,
"totalHandlingTime": 47696,
"totalNonInteractiveChats": 2,
"totalInteractiveChats": 73
},
"metricsPerSkill": {
"641431612": {
"metricsTotals": {
"connectedEngagements": 7,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 6377,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 8
},
"metricsPerAgent": {
"645355312": {
"connectedEngagements": 1,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 115,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 1
},
"645365512": {
"connectedEngagements": 0,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 766,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 1
}
}
},
"1218517512": {
"metricsTotals": {
"connectedEngagements": 2,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 1379,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 2
},
"metricsPerAgent": {
"645367512": {
"connectedEngagements": 1,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 571,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 1
},
"645378812": {
"connectedEngagements": 1,
"nonInteractiveTotalHandlingTime": 0,
"totalHandlingTime": 808,
"totalNonInteractiveChats": 0,
"totalInteractiveChats": 1
}
}
}
}
}
}
有什么办法,以针对特定的领域和操纵它们他们自己而离开一切,因为它是?在这种情况下,我想定位metricsPerAgent和metricsPerSkill。