我有一组 Azure功能,它们是在 Visual Studio中开发的。
有一个 TimerTrigger 功能,默认情况下使用 DisableAttribute 禁用。这会导致在Azure门户上将"disabled"
属性设置为true
。
一旦满足特殊条件,将触发另一个函数,该函数使用function.json
更新 TimerTrigger "disabled": false
文件。这将启动 TimerTrigger 。
但是当满足另一个条件时,TimerTrigger的function.json用"disabled": true
更新,不起作用,TimerTrigger仍然会触发。
执行function.json的更新,如此处所述 How to Enable/Disable Azure Function programmatically
我已经阅读了GitHub上的多个问题,仍然没有答案。 我看到以下解决方法:
app.settings
更新为复杂的过程。 Change Azure website app settings from code。TimerTrigger 的主要目的是启用并在服务器关闭时开始调用它(ConnectionValidator)。一旦服务器正常 - 禁用TimerTrigger,并继续通常的工作流程。
有关于此的任何想法?也许还有其他方法可以解决这个问题吗?
答案 0 :(得分:2)
对于这种情况,我不会改变function.json
。感觉很讨厌。
更改应用程序设置,或改为使用相同名称更改环境变量,这应具有相同的效果。
或者甚至可能一直保持触发定时器触发,并检查前提条件作为定时器功能的第一个动作。如果不需要采取任何措施,请立即退出。