在 blob 触发的 Azure 函数中创建模板文件的位置



我正在Windows Azure上开发Azure Function应用程序。我创建了一个 Blob 触发的 azure 函数,该函数在临时文件夹中创建一个文件。要获取临时文件夹的路径以创建临时文件,我使用以下代码块:

string TempFolderLocation = Path.GetTempPath();
string TempFileName = DateTime.UtcNow.ToString("yyyyMMddHHmmssfff") + ".txt";
string TempFilePath = Path.Combine(TempFolderLocation, TempFileName);
System.IO.File.WriteAllText(TempFilePath, "This is the time log : " + DateTime.UtcNow.ToString("yyyy.MM.dd HH:mm:ss.fff"));

我得到路径"D:\local\Temp\"作为Path.GetTempPath((的结果。

执行上述代码门时我没有收到任何错误 但是当我使用 Azure 函数应用程序的 KUDU 时,文件夹"D:\local\Temp\"中没有创建任何文件。

所以我的问题是:

  1. Blob 触发的 Azure 函数的执行是否发生在不同的位置位置那么捻角羚?

  2. 执行时间临时文件夹是否与实际文件夹不同?

  3. 在哪里可以看到这些临时文件?

azure 函数不与 kudu 共享临时存储(并且有一个旧标志强制它们共享(。

在此处查看"临时文件"部分:https://github.com/projectkudu/kudu/wiki/Understanding-the-Azure-App-Service-file-system#temporary-files

另一个重要注意事项是主站点和 scm 站点没有 共享临时文件。因此,如果您从您的网站在那里编写一些文件,则 不会从 Kudu 控制台看到它们(反之亦然(。你可以制作 如果您禁用分离(通过 WEBSITE_DISABLE_SCM_SEPARATION(。但请注意,这是一个遗留标志, 并且不建议/支持其使用。

最新更新