Kibana 9.1.2 doesn't like false as a value in pipelines, but true is ok

Toss this into the developer console and run it to create a pipeline:

PUT _ingest/pipeline/my-test-pipeline
{
"description": "Just testing...",
"processors": [
{
"set": {
"field": "my_custom_field",
"value": true,
"ignore_failure": true
}
},
{
"set": {
"field": "my_custom_field",
"value": false,
"if": "ctx?.user?.name == 'whocares'",
"ignore_failure": true
}
}
]
}

Retrieve the newly-created pipeline and notice that the values are correct:

GET _ingest/pipeline/my-test-pipeline

Now head over to the “Ingest Pipelines” editor and edit that pipeline.

Notice how the “false” value is ripped out, breaking your ability to edit the pipeline or test it against documents:

Hello @Aaron_C_de_Bruyn

We see false value can be used as a string :

PUT _ingest/pipeline/my-test-pipeline
{
  "description": "Just testing...",
  "processors": [
    {
      "set": {
        "field": "my_custom_field",
        "value": "true",
        "ignore_failure": true
      }
    },
    {
      "set": {
        "field": "my_custom_field",
        "value": "false",
        "if": "ctx?.user?.name == 'whocares'",
        "ignore_failure": true
      }
    }
  ]
}

In your case the true/false value is evaluated as a boolean value as it is not used with “ “.

As we see per documentation false value can be empty string as well & that may be the reason we see ““ in the pipeline.

Thanks!!

1 Like