我试图触发一个webjob时,一个新的文件被放置在java中的blob,我已经开始使用blob触发azure函数,但不是处理新添加或更新的文件,而是处理blob中的所有文件。下面是代码片段
public class BlobTriggerFunction {
/**
* This function will be invoked when a new or updated blob is detected at the specified path. The blob contents are provided as input to this function.
*/
@FunctionName("BlobTrigger-Java")
@StorageAccount("AzureWebJobsStorage")
public void run(
@BlobTrigger(name = "content", path = "snowflake/assets_group/{name}", dataType = "binary") byte[] content,
@BindingName("name") String name,
final ExecutionContext context
) {
context.getLogger().info("Java Blob trigger function processed a blob. Name: " + name + "\n Size: " + content.length + " Bytes");
}
下面是正在处理所有文件
的控制台
1条答案
按热度按时间y3bcpkx11#
我已经开始使用blob触发器azure函数,但它不是处理新添加或更新的文件,而是处理blob中的所有文件。
Azure Functions运行时或Blob Storage SDK中可能存在导致函数处理容器中所有文件的错误。
尝试更新到最新版本的Azure Functions运行时或Blob Storage SDK,以查看是否解决了问题。
另外,创建一个新的blob触发器azure函数,并再次检查它是否仍在发生。因为,根据我的观察,它只会处理blob中新添加的文件。
代码段:
Blob中上传的文件 *:
添加文件后控制台输出:*
向现有容器(其中有文件)添加新文件后的输出:*