azure - 如何在 c# 中以编程方式获取 Azure 函数执行的计数?
问题描述
我有计时器触发天蓝色功能,每分钟运行一次。每次执行函数时,是否可以获得在我的 Azure 函数 c# 代码中执行的函数的次数?
PS:我需要这个计数来生成一个顺序计数器。也有HTTP触发功能!是否可以使用 Application Insights -> 带有函数计数过滤器的指标。在某种程度上,我们在代码中得到了这个计数?
解决方案
也许你可以像下图那样实现它,变量将被共享。但是,如果您重新启动函数,它将重新加载变量时间。
在功能重启的情况下,假设你可以设置一个存储队列来实现它,每次将队列号加1并替换队列。
public static async void Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(Environment.GetEnvironmentVariable("AzureWebJobsStorage"));
CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient();
CloudQueue queue = queueClient.GetQueueReference("time");
CloudQueueMessage message = queue.GetMessage();
log.LogInformation(message.AsString);
int num = int.Parse(message.AsString);
num++;
queue.DeleteMessage(message);
queue.AddMessage(new CloudQueueMessage(num.ToString()));
}
希望这可以帮助你,如果你还有其他问题,请随时让我知道。
推荐阅读
- c# - 实体框架 enable-migrations 在程序集中找不到上下文类型
- c++ - 为什么当子类是模板时无法识别此 typedef?
- android - 可空值和不可空值
- flutter - Flutter - Inkwell:为什么 onHover() 需要 onTap()?
- mpi - Tau2Slog2 无法处理 6gb tau.trc 文件
- php - 保存旧的输入值而不在 Laravel 中提交
- python-3.x - 加入具有最大序列号的列
- mysql - 将缩写声明为全名并根据类似进行搜索
- arrays - 如何在 React 中正确使用显示幻灯片项目?
- flutter - 为什么是静态数据库_database;和 DatabaseHelper._privateConstructor(); 给出错误?