如何获取位置(亲缘区)或名称集群(结构服务)

时间:2016-07-05 17:17:22

标签: c# azure-service-fabric affinity

我目前正在使用网络服务的web api。 需要获取结构服务群集的位置(亲缘区)。 即通过代码确定当前集群在哪个位置(c#) 在Web API中。 否则我需要托管Web API的群集名称。

在webrole或云服务中,可以使用 https://management.core.windows.net/ {0} /服务/ hostedservices

但我无法找到任何集群方式。

2 个答案:

答案 0 :(得分:0)

我不确定这是否有帮助,但请查看为项目创建的ServiceEventSource。 ServiceMessage方法向您显示服务上下文中提供的大量信息。

ServiceMessage(
    service.Context.ServiceName.ToString(),
    service.Context.ServiceTypeName,
    service.Context.ReplicaId,
    service.Context.PartitionId,
    service.Context.CodePackageActivationContext.ApplicationName,
    service.Context.CodePackageActivationContext.ApplicationTypeName,
    service.Context.NodeContext.NodeName,
    finalMessage);

您还可以查看FabricClient

答案 1 :(得分:0)

经过所有研究后我用

做了
<Section Name="Affinity">
    <Parameter Name="Zone" Value="Eusa" />
</Section>

这是在PackageRoot&gt;中添加的。配置&gt;设置