问题描述
我正在使用带有计时器的 Azure 函数来替换本地任务计划作业,我正在寻找我部署到 azure 平台上的每个 Azure 函数的以下信息。
- 当前正在执行哪些函数或任何给定函数的当前状态
- 每个函数的上次运行时间
- 每个函数的下一次运行时间
- 函数完成执行作业的持续时间
- 上次运行结果(成功/失败)
我看到 Azure KUDU API 提供的一些功能,如进程信息、小型转储等,分析是否提供上述所有信息?我计划构建一个脚本或工具来获取上述信息(如果可以通过 apis 获得)..
解决方法
Azure 持久化函数内置支持,使用 timetrigger 作为启动触发器,使用 this 获取信息。
或链接到应用洞察以获取数据:
https://dev.applicationinsights.io/quickstart
获取 API 密钥:
https://dev.applicationinsights.io/documentation/Authorization/API-key-and-App-ID
这个页面可以测试查询,如果查询是requests
,那么它会以表格的形式返回你的函数的消息。需要根据自己的需要解析结果。
格式如下(持续时间、开始时间、上次运行结果):
这个API可以获取其他信息(调度计算下一次运行时间,函数是否还在运行。):
https://docs.microsoft.com/en-us/rest/api/appservice/webapps/getfunction
并使用它来获取函数的每个实例状态(您需要做一些事情来获取实例ID。):
https://docs.microsoft.com/en-us/rest/api/appservice/webapps/getinstanceinfo#code-try-0