如何使用 C# 代码检索 运行 Azure WebJob 的 InstanceId 和进程 Id
How to retrieve InstanceId & Process Id of a running Azure WebJob using C# code
我正在尝试检索下面快照中突出显示的 Azure WebJob.As 的实例 ID 和进程 ID,我想检索 运行 InstanceId。
我还想检索 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.
如果您想查看所有可用的变量,请转到您的 Kudu 控制台并单击 "Environment":https://your-appservice.scm.azurewebsites.net/Env.cshtml
对于进程 ID,我想您可以像在其他任何地方一样调用 Process.GetCurrentProcess().Id
。
希望对您有所帮助!
每个网络应用的实例都有自己的实例 ID。它将在其 Web 应用程序服务器中保存为环境变量。
要获取当前的 WebJobs 实例 ID,请使用环境变量(WEBSITE_INSTANCE_ID)。
实例 ID 表示站点 运行 所在的虚拟机(如果站点在多个实例上运行,每个实例将有不同的 ID)
您可以参考以下代码了解更多详情:
public static void ProcessQueueMessage([QueueTrigger("queue3")] string thumbnail, TextWriter log)
{
string instanceid = Environment.GetEnvironmentVariable("WEBSITE_INSTANCE_ID");
log.Write( "Current instance ID : " + instanceid);
}
有关获取 ProcessId 和 InstanceId 的更多详细信息和示例,请参阅此 blogpost。
正如 Kenneth LeFebvre 提到的,您还可以使用 Kudu 控制台的“环境”选项卡来检查实例和进程 ID。
我正在尝试检索下面快照中突出显示的 Azure WebJob.As 的实例 ID 和进程 ID,我想检索 运行 InstanceId。
我还想检索 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.
如果您想查看所有可用的变量,请转到您的 Kudu 控制台并单击 "Environment":https://your-appservice.scm.azurewebsites.net/Env.cshtml
对于进程 ID,我想您可以像在其他任何地方一样调用 Process.GetCurrentProcess().Id
。
希望对您有所帮助!
每个网络应用的实例都有自己的实例 ID。它将在其 Web 应用程序服务器中保存为环境变量。
要获取当前的 WebJobs 实例 ID,请使用环境变量(WEBSITE_INSTANCE_ID)。
实例 ID 表示站点 运行 所在的虚拟机(如果站点在多个实例上运行,每个实例将有不同的 ID)
您可以参考以下代码了解更多详情:
public static void ProcessQueueMessage([QueueTrigger("queue3")] string thumbnail, TextWriter log)
{
string instanceid = Environment.GetEnvironmentVariable("WEBSITE_INSTANCE_ID");
log.Write( "Current instance ID : " + instanceid);
}
有关获取 ProcessId 和 InstanceId 的更多详细信息和示例,请参阅此 blogpost。
正如 Kenneth LeFebvre 提到的,您还可以使用 Kudu 控制台的“环境”选项卡来检查实例和进程 ID。