add onerr callback for leader elector (#1399)
This commit is contained in:
@@ -28,6 +28,11 @@ namespace k8s.LeaderElection
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public event Action<string> OnNewLeader;
|
public event Action<string> OnNewLeader;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// OnError is called when there is an error trying to determine leadership.
|
||||||
|
/// </summary>
|
||||||
|
public event Action<Exception> OnError;
|
||||||
|
|
||||||
private volatile LeaderElectionRecord observedRecord;
|
private volatile LeaderElectionRecord observedRecord;
|
||||||
private DateTimeOffset observedTime = DateTimeOffset.MinValue;
|
private DateTimeOffset observedTime = DateTimeOffset.MinValue;
|
||||||
private string reportedLeader;
|
private string reportedLeader;
|
||||||
@@ -69,8 +74,9 @@ namespace k8s.LeaderElection
|
|||||||
MaybeReportTransition();
|
MaybeReportTransition();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
OnError?.Invoke(e);
|
||||||
// ignore
|
// ignore
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -129,6 +135,8 @@ namespace k8s.LeaderElection
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
OnError?.Invoke(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (oldLeaderElectionRecord?.AcquireTime == null ||
|
if (oldLeaderElectionRecord?.AcquireTime == null ||
|
||||||
|
|||||||
Reference in New Issue
Block a user