【问题标题】:perform a action on new files in azure file service from a logic app从逻辑应用对 Azure 文件服务中的新文件执行操作
【发布时间】:2018-02-13 23:32:22
【问题描述】:

我有一个名为 container-ftp 的文件服务的 Azure 存储帐户。

我需要一个进程,将登陆这里的文件移动到 FTP 服务器。 Azure 文件存储连接器当前没有触发器。

我已经设置了一个预定的触发器,每 :30 运行一次

但是我怎样才能找出哪些文件是新的或在其中? 我可以在文件运行后删除它,这有帮助吗?

使用 blob 存储,我通过在 blob 存储中创建文件时使用触发器使其工作,但他们想要使用文件与 Blob 存储。

我该怎么做呢?

【问题讨论】:

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


    【解决方案1】:

    目前 Azure Logic 应用中没有 Azure 文件存储的触发器,a feedback: Add trigger for Azure File Storage 已提交,您可以投票。

    我怎样才能知道哪些文件是新的或在其中?我可以在文件运行后删除它,这有帮助吗?

    如您所说,您可以在执行操作(读取文件并上传到 ftp)后尝试删除文件,这可以防止您的逻辑应用上传“旧”文件。

    此外,如果可能,您可以尝试其他方法将文件从 Azure 文件存储移动到 FTP 服务器。例如,您可以mount the Azure File share 并运行FileTrigger WebJob 来检测是否有新文件到达并将文件上传到FTP 服务器。

    【讨论】:

    • 感谢您的建议,但是我需要避免在服务器或其他专用计算机上运行进程。仍然无法弄清楚如何“轮询”以找出要复制然后删除的文件名!我的过程完全使用 blob 存储,所以解决方案已经完成,但为了学习,我仍然想了解如何做到这一点......
    【解决方案2】:

    因为还没有触发器,所以最简单的方法是在处理完文件后将其删除。否则,您需要保持触发状态或轮询水印(存储在其他地方,如 Azure 存储表)以了解您上次检查的时间,然后仅获取在该轮询水印之后修改的文件。

    【讨论】:

    • 使用存储的上次检查日期/时间是我计划做的,但我无法弄清楚如何根据时间戳请求文件。复制文件只需要一个 Source url,似乎没有一个动作能够做到这一点。我已经尝试了多种谷歌搜索方式,但到目前为止都空手而归。
    猜你喜欢
    • 2019-08-09
    • 1970-01-01
    • 2018-04-06
    • 2021-11-30
    • 2019-03-11
    • 2019-11-06
    • 2022-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多