如何监视我的 azure 函数的变化?

sds*_*dsd 6 azure node.js azure-functions azure-function-app

我正在使用用 NODE JS 编写的 azure 函数。我正在启动本地服务器

func host start
Run Code Online (Sandbox Code Playgroud)

一切正常。但问题是当我更改我的 azure 函数中的某些内容时 - 例如当我添加一个简单的控制台日志时


module.exports = async function (context, req) {
        console.log('request came');
        context.res = {
            body: { success: true, message: null, response: context.bindings.inputDocument }
        };
};
Run Code Online (Sandbox Code Playgroud)

服务器没有重新启动,我需要停止服务器再次运行 func host start 以查看更改,这不好。在nodejs中,我们有nodemon,在azure函数中是否有一些东西可以让我监视更改而无需停止并在每次更改时启动服务器?

我尝试了什么

我尝试添加我的 host.json 文件

  "watchDirectories": [ "*" ] 
Run Code Online (Sandbox Code Playgroud)

但没有成功。

我也尝试过

scripts编辑package.json 文件中的 start 属性

"scripts": {
    "start": "start npm run watch & npm run start:host",
    "test": "echo \"No tests yet...\""
  },

Run Code Online (Sandbox Code Playgroud)

反而

"scripts": {
    "start": "func start",
    "test": "echo \"No tests yet...\""
  },
Run Code Online (Sandbox Code Playgroud)

但仍然没有成功。

我正在使用 azure 函数 v2。

mme*_*mey 10

您可以启动两个进程(基于@azure/functions 1.2.3):

  • 过程 1:(tsc -wnpm run watch
  • 过程2:(func startnpm start

然后,Typescript 编译器将在监视模式下工作,自动编译更改,并且 azure func 工具还将在更改时重新加载其函数。


1_1*_*1_1 -1

服务器没有重新启动,我需要停止服务器再次运行 func host start 以查看更改,这不好。在nodejs中,我们有nodemon,在azure函数中是否有一些东西可以让我监视更改而无需停止并在每次更改时启动服务器?

对于这个问题,我想答案是否定的。重启功能是必须的,不仅是在azure上,在本地也是如此,每次更新代码时,都会重启运行时(重启时会下载并加载一些依赖包,然后启动整个azure函数运行时)。

在我这边,情况是“watchDirectories下的更改会让函数主机停止而不是重新启动”(无论我更改文件中的内容还是添加文件。)在azure上时,情况类似。内容更改后功能重新启动。