ElasticSearch 摄取管道空值问题
ElasticSearch Ingest Pipeline Null Value Question
如果我在 Filebeat 模块中使用 elasticsearch 摄取管道,我会看到以下语句:
如果:'ctx.json?.userIdentity?.userName == null'
当 json.userIdentity.userName 等于 null 时,如果上面的 if 语句为真,key/value 对会是什么样子?
{"json.userIdentity.userName":"null"}、{"json.userIdentity.userName":null} 或其他
另外,如果字段不存在,那么key也等于null,这公平吗?
表示流水线处理器会在以下任一情况下执行:
// no json key
{}
// null json key
{
"json": null
}
// empty json key
{
"json": {}
}
// null json.userIdentity key
{
"json": {
"userIdentity": null
}
}
// empty json.userIdentity key
{
"json": {
"userIdentity": {}
}
}
// null json.userIdentity.userName key
{
"json": {
"userIdentity": {
"userName": null
}
}
}
如果我在 Filebeat 模块中使用 elasticsearch 摄取管道,我会看到以下语句: 如果:'ctx.json?.userIdentity?.userName == null'
当 json.userIdentity.userName 等于 null 时,如果上面的 if 语句为真,key/value 对会是什么样子? {"json.userIdentity.userName":"null"}、{"json.userIdentity.userName":null} 或其他
另外,如果字段不存在,那么key也等于null,这公平吗?
表示流水线处理器会在以下任一情况下执行:
// no json key
{}
// null json key
{
"json": null
}
// empty json key
{
"json": {}
}
// null json.userIdentity key
{
"json": {
"userIdentity": null
}
}
// empty json.userIdentity key
{
"json": {
"userIdentity": {}
}
}
// null json.userIdentity.userName key
{
"json": {
"userIdentity": {
"userName": null
}
}
}