我正在Windows Azure上的Azure Function应用程序上工作。 我创建了一个Blob触发的Azure函数,该函数在temp文件夹中创建一个文件。要获取临时文件夹的路径以创建临时文件,我正在使用以下代码块:
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"));
我通过Path.GetTempPath()获得路径“ D:\ local \ Temp \”。
执行上述代码门时,我没有收到任何错误,但是当我使用azure函数应用程序的KUDU时,在文件夹“ D:\ local \ Temp \”中没有创建文件。
所以我的问题是:
是否在不同地方执行blob触发的天蓝色函数 位置,然后是KUDU?
临时文件夹的执行时间与实际时间不同吗?
我在哪里可以看到这些临时文件?
答案 0 :(得分:0)
azure函数不会与kudu共享临时存储(并且有一个旧标记强制它们共享)。
在此处检查“临时文件”部分: https://github.com/projectkudu/kudu/wiki/Understanding-the-Azure-App-Service-file-system#temporary-files
另一个重要的注意事项是Main网站和scm网站没有 共享临时文件。因此,如果您在网站上写了一些文件, 将不会从Kudu控制台看到它们(反之亦然)。你(们)能做到 如果禁用分隔,则它们使用相同的临时空间(通过 WEBSITE_DISABLE_SCM_SEPARATION)。但是请注意,这是一个旧标志, 并且不建议/不支持使用它。