Make the log message more clear.
Also add a verbose logging option.
diff --git a/mysos/scheduler/mysos_scheduler.py b/mysos/scheduler/mysos_scheduler.py
index df86660..7adbb34 100644
--- a/mysos/scheduler/mysos_scheduler.py
+++ b/mysos/scheduler/mysos_scheduler.py
@@ -168,7 +168,13 @@
"to support metrics tracking by external utilities. The format of ExecutorInfo.source "
"is '<prefix>.<cluster_name>.<server_id>'. This flag specifies the prefix to use in the "
"'source' field. e.g., it can be '<availability_zone>.<mesos_cluster>'. There is no "
- "preceding period if <prefix> is empty"
+ "preceding period if <prefix> is empty")
+
+ app.add_option(
+ '--verbose',
+ dest='verbose',
+ default=None,
+ help="Turn on verbose logging"
)
def main(args, options):
@@ -198,6 +204,9 @@
if not options.scheduler_keypath:
app.error('Must specify --scheduler_keypath')
+ if options.verbose:
+ LogOptions.set_stderr_log_level('google:DEBUG')
+
try:
election_timeout = parse_time(options.election_timeout)
framework_failover_timeout = parse_time(options.framework_failover_timeout)
diff --git a/mysos/scheduler/scheduler.py b/mysos/scheduler/scheduler.py
index 0c060df..7530e2c 100644
--- a/mysos/scheduler/scheduler.py
+++ b/mysos/scheduler/scheduler.py
@@ -382,10 +382,12 @@
log.info("Declining offer %s for %s because '%s'" % (
offer.id.value, INCOMPATIBLE_ROLE_OFFER_REFUSE_DURATION, e))
else:
- log.info("Declining offer %s because no launcher can use this offer" % offer.id.value)
+ log.info("Declining offer %s because no launcher accepted this offer" % offer.id.value)
# Mesos scheduler Python binding doesn't deal with filters='None' properly.
# See https://issues.apache.org/jira/browse/MESOS-2567.
filters = mesos_pb2.Filters()
+
+ log.debug(offer)
self._driver.declineOffer(offer.id, filters)
@logged