Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions kubernetes/base/leaderelection/electionconfig.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@

import sys
import logging
logging.basicConfig(level=logging.INFO)

logger = logging.getLogger("leaderelection")

class Config:
# Validate config, exit if an error is detected
Expand Down Expand Up @@ -56,4 +56,4 @@ def __init__(self, lock, lease_duration, renew_deadline, retry_period, onstarted

# Default callback for when the current candidate if a leader, stops leading
def on_stoppedleading_callback(self):
logging.info("stopped leading".format(self.lock.identity))
logger.info("stopped leading".format(self.lock.identity))
25 changes: 13 additions & 12 deletions kubernetes/base/leaderelection/leaderelection.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@
from http import HTTPStatus
else:
import httplib
logging.basicConfig(level=logging.INFO)

logger = logging.getLogger("leaderelection")

"""
This package implements leader election using an annotation in a Kubernetes object.
Expand Down Expand Up @@ -55,7 +56,7 @@ def __init__(self, election_config):
def run(self):
# Try to create/ acquire a lock
if self.acquire():
logging.info("{} successfully acquired lease".format(self.election_config.lock.identity))
logger.info("{} successfully acquired lease".format(self.election_config.lock.identity))

# Start leading and call OnStartedLeading()
threading.daemon = True
Expand All @@ -68,7 +69,7 @@ def run(self):

def acquire(self):
# Follower
logging.info("{} is a follower".format(self.election_config.lock.identity))
logger.info("{} is a follower".format(self.election_config.lock.identity))
retry_period = self.election_config.retry_period

while True:
Expand All @@ -81,7 +82,7 @@ def acquire(self):

def renew_loop(self):
# Leader
logging.info("Leader has entered renew loop and will try to update lease continuously")
logger.info("Leader has entered renew loop and will try to update lease continuously")

retry_period = self.election_config.retry_period
renew_deadline = self.election_config.renew_deadline * 1000
Expand Down Expand Up @@ -121,22 +122,22 @@ def try_acquire_or_renew(self):
# To be removed when support for python2 will be removed
if sys.version_info > (3, 0):
if json.loads(old_election_record.body)['code'] != HTTPStatus.NOT_FOUND:
logging.info("Error retrieving resource lock {} as {}".format(self.election_config.lock.name,
logger.info("Error retrieving resource lock {} as {}".format(self.election_config.lock.name,
old_election_record.reason))
return False
else:
if json.loads(old_election_record.body)['code'] != httplib.NOT_FOUND:
logging.info("Error retrieving resource lock {} as {}".format(self.election_config.lock.name,
logger.info("Error retrieving resource lock {} as {}".format(self.election_config.lock.name,
old_election_record.reason))
return False

logging.info("{} is trying to create a lock".format(leader_election_record.holder_identity))
logger.info("{} is trying to create a lock".format(leader_election_record.holder_identity))
create_status = self.election_config.lock.create(name=self.election_config.lock.name,
namespace=self.election_config.lock.namespace,
election_record=leader_election_record)

if create_status is False:
logging.info("{} Failed to create lock".format(leader_election_record.holder_identity))
logger.info("{} Failed to create lock".format(leader_election_record.holder_identity))
return False

self.observed_record = leader_election_record
Expand All @@ -156,7 +157,7 @@ def try_acquire_or_renew(self):

# Report transitions
if self.observed_record and self.observed_record.holder_identity != old_election_record.holder_identity:
logging.info("Leader has switched to {}".format(old_election_record.holder_identity))
logger.info("Leader has switched to {}".format(old_election_record.holder_identity))

if self.observed_record is None or old_election_record.__dict__ != self.observed_record.__dict__:
self.observed_record = old_election_record
Expand All @@ -165,7 +166,7 @@ def try_acquire_or_renew(self):
# If This candidate is not the leader and lease duration is yet to finish
if (self.election_config.lock.identity != self.observed_record.holder_identity
and self.observed_time_milliseconds + self.election_config.lease_duration * 1000 > int(now_timestamp * 1000)):
logging.info("yet to finish lease_duration, lease held by {} and has not expired".format(old_election_record.holder_identity))
logger.info("yet to finish lease_duration, lease held by {} and has not expired".format(old_election_record.holder_identity))
return False

# If this candidate is the Leader
Expand All @@ -182,10 +183,10 @@ def update_lock(self, leader_election_record):
leader_election_record)

if update_status is False:
logging.info("{} failed to acquire lease".format(leader_election_record.holder_identity))
logger.info("{} failed to acquire lease".format(leader_election_record.holder_identity))
return False

self.observed_record = leader_election_record
self.observed_time_milliseconds = int(time.time() * 1000)
logging.info("leader {} has successfully acquired lease".format(leader_election_record.holder_identity))
logger.info("leader {} has successfully acquired lease".format(leader_election_record.holder_identity))
return True
4 changes: 2 additions & 2 deletions kubernetes/base/leaderelection/resourcelock/configmaplock.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
from ..leaderelectionrecord import LeaderElectionRecord
import json
import logging
logging.basicConfig(level=logging.INFO)

logger = logging.getLogger("leaderelection")

class ConfigMapLock:
def __init__(self, name, namespace, identity):
Expand Down Expand Up @@ -126,4 +126,4 @@ def get_lock_dict(self, leader_election_record):
self.lock_record['acquireTime'] = leader_election_record.acquire_time
self.lock_record['renewTime'] = leader_election_record.renew_time

return self.lock_record
return self.lock_record