我想要检索实例Id & Azure WebJob的进程ID。如下面快照中突出显示的,我想检索正在运行的InstanceId。如何使用C#代码检索正在运行的Azure WebJob的InstanceId和进程ID
而且我想找回WebJob的的ProcessID。 使用C#代码可以检索两个值吗?
非常感谢您的帮助。
我想要检索实例Id & Azure WebJob的进程ID。如下面快照中突出显示的,我想检索正在运行的InstanceId。如何使用C#代码检索正在运行的Azure WebJob的InstanceId和进程ID
而且我想找回WebJob的的ProcessID。 使用C#代码可以检索两个值吗?
非常感谢您的帮助。
环境变量“WEBSITE_INSTANCE_ID”包含实例ID。在您的屏幕截图中,字符串“e582f3”是完整ID的缩写。
[09/08/2017 21:00:53 > be313b: INFO] [21:00:45 INF] Instance: RD00155DF9356E (be313b15729ccddadf6ea48a522d9456e23cc0abf82e5180e3997118fae84fe3)
这是我写的打印出环境变量“COMPUTERNAME”和“WEBSITE_INSTANCE_ID”的日志条目。您可以看到be313b确实是完整ID的前六位数字be313b15729ccddadf6ea48a522d9456e23cc0abf82e5180e3997118fae84fe3。
如果你想看到所有可用的变量,你,去你捻控制台,然后单击“环境”:https://your-appservice.scm.azurewebsites.net/Env.cshtml
对于进程ID,我想你可以叫Process.GetCurrentProcess().Id
就像使用其他任何地方。
我希望这很有帮助!
每个Web应用程序的实例都有自己的实例ID。它将作为环境变量保存在其Web应用程序服务器中。
要获取当前WebJobs实例ID,请使用环境变量(WEBSITE_INSTANCE_ID)。
实例ID表示,该网站上运行(如果网站上有多个实例运行时,每个实例都将有不同的ID)的VM
你可以参考下面的代码了解更多详情:
public static void ProcessQueueMessage([QueueTrigger("queue3")] string thumbnail, TextWriter log)
{
string instanceid = Environment.GetEnvironmentVariable("WEBSITE_INSTANCE_ID");
log.Write("Current instance ID : " + instanceid);
}
欲了解更多细节和例子来获得进程ID和实例ID,请参阅本blogpost。
正如Kenneth LeFebvre所提到的,您也可以使用Kudu控制台“环境”选项卡来检查实例和进程ID。
谢谢Ashok的回复。 – Amruta
谢谢Kenneth ..答案是正确的。 – Amruta