Azure 数据工厂存储事件触发器 - 访问完全 URL 的 blob

Azure Data Factory Storage Event Trigger - Access full URL of blob

有什么方法可以从 ADF 存储事件触发器访问完整的 blob url?

文档说只有 folderNamefilePath,但是当我查看事件触发器的实际负载时(在 Monitor -> Trigger Runs 中),我可以看到完整的URL 那里:

 {
  "topic": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/xxx/providers/Microsoft.Storage/storageAccounts/xxx",
  "subject": "/blobServices/default/containers/yyy/blobs/zzz.snappy.parquet",
  "eventType": "Microsoft.Storage.BlobCreated",
  "id": "xxx",
  "data": {
    "api": "PutBlob",
    "contentType": "application/octet-stream",
    "blobType": "BlockBlob",
    "blobUrl": "https://xxx.blob.core.windows.net/yyy/zzz.snappy.parquet",
    "url": "https://xxx.blob.core.windows.net/yyy/zzz.snappy.parquet"
  },
  "dataVersion": "",
  "metadataVersion": "1",
  "eventTime": "2021-06-09T23:00:00.0000000Z"
}

我试着听从这个 post 的建议并查看了 @{trigger()} 的全部内容,但它只包含一个 RunToken:

{
  "headers": {
    "Connection": "Keep-Alive",
    "Host": "xxx.westus2.logic.azure.com",
    "Content-Length": "975",
    "Content-Type": "application/json; charset=utf-8"
  },
  "body": {
    "RunToken": "long-string=="
  }
}

我相信你从这个 link https://docs.microsoft.com/en-us/answers/questions/46331/processing-azure-data-factory-event-trigger-proper.html 得到了 @{trigger()} 表达。现在不行了。正如你所说,你只能在triggerBody中获取RunToken。到目前为止,还没有办法从事件触发器中获取完整的文件 URL。