当前位置: 首页 > 知识库问答 >
问题:

Azure Blob存储-当新文件上传到Blob容器中的特定文件夹时设置警报

吴俊风
2023-03-14

在Azure中,我有一个存储帐户,用于从物联网设备上载文件。当物联网设备检测到某些情况时,会发送文件。所有文件都上载到同一Blob容器中,并位于同一文件夹(Blob容器内)。

我想做的是在新文件上传到Blob容器时自动发送一封电子邮件(作为警报)。我已经检查了Azure提供的用于在存储帐户(在Azure门户中)中设置警报的不同选项,但没有发现任何有用的内容。

我怎么能创建这种警报?

共有1个答案

单于善
2023-03-14

据我所知,azure提供了azure函数或网络作业,当新文件上传到特殊容器时可以触发这些函数或网络作业。

我建议您可以使用azure function blob触发器来实现您的需求。更多详细信息,请参阅本文。

在azure函数blob触发器触发方法中,您还可以绑定sendgrid来发送电子邮件。

更多详细信息,请参阅以下步骤:

注意:我使用C#azure函数作为示例,您也可以使用其他语言。

1.创建blob触发器azure函数。

2.创建sendgrid(Link)帐户并创建API密钥。

3.创建并设置创建的azure函数sendgrid outbind。

4.将以下代码添加到azure函数运行。csx。

#r "SendGrid"
using System;
using SendGrid;
using SendGrid.Helpers.Mail;



public static Mail Run(Stream myBlob, string name, TraceWriter log)
{
    var  message = new Mail
    {        
        Subject = "Azure news"          
    };

    var personalization = new Personalization();
    personalization.AddTo(new Email("sendto email address"));   

    Content content = new Content
    {
        Type = "text/plain",
        Value = name
    };
    message.AddContent(content);
    message.AddPersonalization(personalization);

    return message;
}
 类似资料:
  • 在我们的应用程序中,我们让用户选择一个文件夹,然后将该文件夹中的所有文件作为多部分格式数据上传到我们的服务器(Azure App Service)。 在Azure blob storage SDK for JS中,我们可以找到上传单个文件的方法。是否有一种方法可以在一个请求中将多个文件上传到Azure Blob容器中的特定文件夹?

  • 我可以使用以下C代码将文件上载到azure blob存储, 这里我提供blob存储连接字符串和容器名称。 现在,我可以看到我在下有URL, 问题,我可以编写C代码,使用上面的URL上传文件,而不是使用连接字符串/容器名称吗?

  • 是否可以创建一个html表单,允许Web用户直接将文件上传到azure blob store,而不使用其他服务器作为中介?S3和GAW blob store都允许这样做,但我找不到对azure blob存储的任何支持。

  • 问题内容: 我需要列出S3存储桶中某个文件夹中包含的所有文件。 文件夹结构如下 我有与用户有关的文件和与某个用户的联系人有关的文件。我需要同时列出两者。 要列出文件,我使用以下代码: 要列出某个用户的文件,我使用以下前缀: 并且我正确地获得了除子目录之外的目录中的所有文件,例如: 要列出某个用户联系人的文件,我使用以下前缀: 但是在这种情况下,我还将目录本身作为返回的对象: 为什么我会得到这种行为

  • 我试图将大文件(4Gb)上传到Azure Blob存储,但失败了。根据本文(https://docs.microsoft.com/en-us/azure/storage/storage-dotnet-how-to-use-blobs),这是我的代码: 但我犯了这个错误 信息:流太长了<来源:系统。私有的CoreLib StackTrace:at系统。伊奥。记忆之流。在Microsoft上写入(字节

  • 我正试图上传一个文件到我的谷歌硬盘,下面的代码工作。如何指定要上载到哪个文件夹,即驱动器--shared with me--csvFolder