我的程序目前正在从服务总线队列中读取数据,我正计划扩展实例。 但在这样做之前,我想确认缩放是否真的有效尝试获取线程详细信息,但它没有提供任何具体证据
最佳答案
How to log the instance ids for webjob scaled out to multiple instances
据我所知,每个网络应用程序的实例都有自己的实例 ID。
它将保存为 environment variable在其网络应用服务器中。
如果你想获取当前的 webjobs 实例 ID,我建议你可以获取它的环境变量(WEBSITE_INSTANCE_ID)。
代表站点运行的 VM 的 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);
}
结果:
关于c# - 如何记录扩展到多个实例的 webjob 的实例 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44480658/