2017-01-20 5 views
2

他のノードに到達できない場合、クラスタノードの動作を変更したいと考えています。そういうわけで、他のメンバーに到達できないときに私は情報を賭けたいと思っています。Akkaクラスター:メンバーが到達不能とマークされているときにUnreachableMemberイベントを受け取らないのはなぜですか?

メンバーが到達不能である場合は、私がログにそれを見ることができます。

[warn] a.c.ClusterCoreDaemon - Cluster Node [akka.tcp://[email protected]:2554] - Marking node(s) as UNREACHABLE [Member(address = akka.tcp://[email protected]:40550, status = Up)]. 

しかし、クラスタイベントを監視俳優で(メンバーが参加するかアップしているときに私が見ることができるので作業)、Iドン

case UnreachableMember(member) => 
    log.info("Member unreachable: {}", member.address) 

私は何か間違っているのですか、設定に何か追加する必要がありますか?

答えて

1

クラスタイベントに登録していないため、このイベントは受信されませんでした。

私はこれでした:これに代えて

cluster.subscribe(
    self, 
    InitialStateAsEvents, 
    classOf[MemberEvent]) 

cluster.subscribe(
    self, 
    InitialStateAsEvents, 
    classOf[MemberEvent], 
    classOf[UnreachableMember]) 

をだから私は[UnreachableMember] classOfを追加する必要がありましたし、今私が到達不能クラスタイベントを受け取ります。

関連する問題