【问题标题】:Get blob contents from multiple folders using Azure Logic App使用 Azure 逻辑应用从多个文件夹中获取 blob 内容
【发布时间】:2021-02-18 01:43:20
【问题描述】:

我有一个 Azure 逻辑应用程序,它每月获取存储在 Azure 容器中的 blob 内容。 Blob 存储在一个文件夹中 -> 例如。 mycontainer/RG1/MonthlyInvoice/20200101-20200131/invoice1.csv.
我可以通过在“List Blobs”触发器中设置路径来从 RG1 获取内容 --> mycontainer/RG1/MonthlyInvoice/

现在,我需要以相同的方式获取不同文件夹的内容。喜欢 --> 例如。 mycontainer/RG2/MonthlyInvoice/20200101-20200131/invoice1.csv, mycontainer/RG3/MonthlyInvoice/20200101-20200131/invoice1.csv, mycontainer/RG4/MonthlyInvoice/20200101-20200131/invoice1.csv

(注意:使用相同的容器)

对此有什么建议吗?谢谢!

【问题讨论】:

    标签: azure azure-blob-storage azure-logic-apps


    【解决方案1】:

    如果您使用“List Blob”操作,您应该已经拥有所需的所有信息。

    我假设每月变化的已知值是“20200101-20200131”。我刚刚创建了一个用于测试的参数,但是您可以通过使用带有utcNow! 的表达式来使其动态化。

    创建了一个与上面相同的文件夹结构的存储帐户和容器。

    逻辑应用的第一部分(重复设置为每月一次):

    逻辑应用的后半段:

    list blob 操作似乎列出了容器内的所有文件。我正在使用路径和条件检查来查看路径是否包含参数中的日期值。

    {
                "Id": "JTJmYWNpaW52b2ljZXMlMmZyZzIlMmZNb250aGx5SW52b2ljZSUyZjIwMjAwMTAxLTIwMjAwMTMxJTJmaW52b2ljZTEuY3N2",
                "Name": "invoice1.csv",
                "DisplayName": "invoice1.csv",
                "Path": "/aciinvoices/rg2/MonthlyInvoice/20200101-20200131/invoice1.csv",
                "LastModified": "2020-11-05T19:03:07Z",
                "Size": 12,
                "MediaType": "text/csv",
                "IsFolder": false,
                "ETag": "\"0x8D881BD6E90C327\"",
                "FileLocator": "JTJmYWNpaW52b2ljZXMlMmZyZzIlMmZNb250aGx5SW52b2ljZSUyZjIwMjAwMTAxLTIwMjAwMTMxJTJmaW52b2ljZTEuY3N2",
                "LastModifiedBy": null
            }
    

    这是我在测试中使用的参数。

    我在这里做了一些假设,如果您能提供更多详细信息,请提供帮助。这至少应该可以帮助您入门。

    【讨论】:

    • 谢谢约翰!我会试试这个并测试它。非常感谢您的回复!
    猜你喜欢
    • 2019-05-09
    • 2021-02-06
    • 2017-09-21
    • 2019-01-28
    • 2018-11-08
    • 2021-02-03
    • 2017-10-17
    • 2019-07-01
    • 2021-11-09
    相关资源
    最近更新 更多