In Azure Devops, the option crate work item on failure indeed exists, but it only exists in build pipeline for the time being.

From your screenshot, you are using the Releases Pipeline. So you couldn't find it.
In Release Pipeline, you need to use API to create a work item.
Here is an example:
You could Use Powershell Task to run Rest API to create a work.
Set the condition

Or you could directly use this Extension- Create Bug on Release failure.
Powershell script update:
$witType="task"
$token = "PAT Token"
$url="$(SYSTEM.TEAMFOUNDATIONCOLLECTIONURI)/$(SYSTEM.TEAMPROJECT)/_apis/wit/workitems/`$$($witType)?api-version=6.0"
$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($token)"))
$body="[
{
`"op`": `"add`",
`"path`": `"/fields/System.Title`",
`"value`": `"titlename`"
},
{
`"op`": `"add`",
`"path`": `"/fields/System.AssignedTo`",
`"value`": `"e-mail address`"
},
{
`"op`": `"add`",
`"path`": `"/fields/Microsoft.VSTS.Common.Priority`",
`"value`": `"4`"
},
{
`"op`": `"add`",
`"path`": `"/fields/System.Tags`",
`"value`": `"Tag1; Tag2`"
},
{
`"op`": `"add`",
`"path`": `"/fields/System.History`",
`"value`": `"<div>$(SYSTEM.STAGEDISPLAYNAME)</div>`"
}
]"
$response = Invoke-RestMethod -Uri $url -Headers @{Authorization = "Basic $token"} -Method Post -Body $body -ContentType application/json-patch+json
Explanation:
This API could add Priority, tag, assign to and set the stage name as the discussion.
Since this task is created when it fails, it can directly output the stage name variable to the discussion.
Result:

Note: You could refer to this doc to create a PAT (personal access tokens).