[MERGED] osmo-gsm-tester[master]: resource error logging that is easier to understand

2017-05-28 Thread Neels Hofmeyr
Neels Hofmeyr has submitted this change and it was merged.

Change subject: resource error logging that is easier to understand
..


resource error logging that is easier to understand

Log what a suite requested, what it has reserved and the complete resource
state.

Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
---
M src/osmo_gsm_tester/resource.py
M src/osmo_gsm_tester/suite.py
2 files changed, 20 insertions(+), 2 deletions(-)

Approvals:
  Neels Hofmeyr: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py
index e660066..ebc9457 100644
--- a/src/osmo_gsm_tester/resource.py
+++ b/src/osmo_gsm_tester/resource.py
@@ -463,8 +463,9 @@
 available = available_dict.get(kind)
 self.dbg(available=len(available))
 if not available:
-raise NoResourceExn('No unused resource found: %r%s' %
+raise NoResourceExn('When trying to reserve %r nr %d: No unused 
resource found%s' %
 (kind,
+ self.count(kind) + 1,
  (' matching %r' % specifics) if specifics 
else '')
)
 pick = available[0]
@@ -496,5 +497,13 @@
 self.resources_pool.free(self.origin, self.reserved)
 self.reserved = None
 
+def counts(self):
+counts = {}
+for key in self.reserved.keys():
+counts[key] = self.count(key)
+return counts
+
+def count(self, key):
+return len(self.reserved.get(key) or [])
 
 # vim: expandtab tabstop=4 shiftwidth=4
diff --git a/src/osmo_gsm_tester/suite.py b/src/osmo_gsm_tester/suite.py
index d55ee92..5d03b95 100644
--- a/src/osmo_gsm_tester/suite.py
+++ b/src/osmo_gsm_tester/suite.py
@@ -22,6 +22,7 @@
 import time
 import copy
 import traceback
+import pprint
 from . import config, log, template, util, resource, schema, ofono_client, 
osmo_nitb, event_loop
 from . import test
 
@@ -130,7 +131,8 @@
 ftype = type(e).__name__
 fmsg = repr(e) + '\n' + traceback.format_exc().rstrip()
 if isinstance(e, resource.NoResourceExn):
-fmsg += '\n' + 'Current resource state:\n' + 
repr(suite_run.reserved_resources)
+fmsg += suite_run.resource_status_str()
+
 self.set_fail(ftype, fmsg, False)
 
 finally:
@@ -314,6 +316,13 @@
 self.log('prompt entered:', repr(entered))
 return entered
 
+def resource_status_str(self):
+return '\n'.join(('',
+'SUITE RUN: %s' % self.origin_id(),
+'ASKED FOR:', pprint.pformat(self._resource_requirements),
+'RESERVED COUNT:', 
pprint.pformat(self.reserved_resources.counts()),
+'RESOURCES STATE:', repr(self.reserved_resources)))
+
 loaded_suite_definitions = {}
 
 def load(suite_name):

-- 
To view, visit https://gerrit.osmocom.org/2705
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
Gerrit-PatchSet: 3
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Pau Espin Pedrol 


osmo-gsm-tester[master]: resource error logging that is easier to understand

2017-05-28 Thread Neels Hofmeyr

Patch Set 3: Code-Review+2

pushing this on, if anything is left open I shall follow up with a patch

-- 
To view, visit https://gerrit.osmocom.org/2705
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
Gerrit-PatchSet: 3
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Pau Espin Pedrol 
Gerrit-HasComments: No


[PATCH] osmo-gsm-tester[master]: resource error logging that is easier to understand

2017-05-28 Thread Neels Hofmeyr
Hello Jenkins Builder,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/2705

to look at the new patch set (#3).

resource error logging that is easier to understand

Log what a suite requested, what it has reserved and the complete resource
state.

Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
---
M src/osmo_gsm_tester/resource.py
M src/osmo_gsm_tester/suite.py
2 files changed, 20 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/05/2705/3

diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py
index e660066..ebc9457 100644
--- a/src/osmo_gsm_tester/resource.py
+++ b/src/osmo_gsm_tester/resource.py
@@ -463,8 +463,9 @@
 available = available_dict.get(kind)
 self.dbg(available=len(available))
 if not available:
-raise NoResourceExn('No unused resource found: %r%s' %
+raise NoResourceExn('When trying to reserve %r nr %d: No unused 
resource found%s' %
 (kind,
+ self.count(kind) + 1,
  (' matching %r' % specifics) if specifics 
else '')
)
 pick = available[0]
@@ -496,5 +497,13 @@
 self.resources_pool.free(self.origin, self.reserved)
 self.reserved = None
 
+def counts(self):
+counts = {}
+for key in self.reserved.keys():
+counts[key] = self.count(key)
+return counts
+
+def count(self, key):
+return len(self.reserved.get(key) or [])
 
 # vim: expandtab tabstop=4 shiftwidth=4
diff --git a/src/osmo_gsm_tester/suite.py b/src/osmo_gsm_tester/suite.py
index d55ee92..5d03b95 100644
--- a/src/osmo_gsm_tester/suite.py
+++ b/src/osmo_gsm_tester/suite.py
@@ -22,6 +22,7 @@
 import time
 import copy
 import traceback
+import pprint
 from . import config, log, template, util, resource, schema, ofono_client, 
osmo_nitb, event_loop
 from . import test
 
@@ -130,7 +131,8 @@
 ftype = type(e).__name__
 fmsg = repr(e) + '\n' + traceback.format_exc().rstrip()
 if isinstance(e, resource.NoResourceExn):
-fmsg += '\n' + 'Current resource state:\n' + 
repr(suite_run.reserved_resources)
+fmsg += suite_run.resource_status_str()
+
 self.set_fail(ftype, fmsg, False)
 
 finally:
@@ -314,6 +316,13 @@
 self.log('prompt entered:', repr(entered))
 return entered
 
+def resource_status_str(self):
+return '\n'.join(('',
+'SUITE RUN: %s' % self.origin_id(),
+'ASKED FOR:', pprint.pformat(self._resource_requirements),
+'RESERVED COUNT:', 
pprint.pformat(self.reserved_resources.counts()),
+'RESOURCES STATE:', repr(self.reserved_resources)))
+
 loaded_suite_definitions = {}
 
 def load(suite_name):

-- 
To view, visit https://gerrit.osmocom.org/2705
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
Gerrit-PatchSet: 3
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Pau Espin Pedrol 


osmo-gsm-tester[master]: resource error logging that is easier to understand

2017-05-25 Thread Pau Espin Pedrol

Patch Set 2:

(2 comments)

https://gerrit.osmocom.org/#/c/2705/2/src/osmo_gsm_tester/resource.py
File src/osmo_gsm_tester/resource.py:

Line 468:  self.count(kind) + 1,
You didn't move this to the line above


https://gerrit.osmocom.org/#/c/2705/2/src/osmo_gsm_tester/suite.py
File src/osmo_gsm_tester/suite.py:

Line 346: 'RESERVED COUNT:', 
pprint.pformat(self.reserved_resources.counts()),
> ah yes, using it here.
Perfect I didn't see it, thanks


-- 
To view, visit https://gerrit.osmocom.org/2705
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
Gerrit-PatchSet: 2
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Pau Espin Pedrol 
Gerrit-HasComments: Yes


osmo-gsm-tester[master]: resource error logging that is easier to understand

2017-05-23 Thread Pau Espin Pedrol

Patch Set 1:

(2 comments)

https://gerrit.osmocom.org/#/c/2705/1/src/osmo_gsm_tester/resource.py
File src/osmo_gsm_tester/resource.py:

Line 468:  self.count(kind) + 1,
I'd move this line up together with kind


Line 500: def counts(self):
Do we need this? doesn't seem to be used, but OK with keeping it if it can be 
useful later


-- 
To view, visit https://gerrit.osmocom.org/2705
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
Gerrit-PatchSet: 1
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Pau Espin Pedrol 
Gerrit-HasComments: Yes


[PATCH] osmo-gsm-tester[master]: resource error logging that is easier to understand

2017-05-22 Thread Neels Hofmeyr

Review at  https://gerrit.osmocom.org/2705

resource error logging that is easier to understand

Log what a suite requested, what it has reserved and the complete resource
state.

Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
---
M src/osmo_gsm_tester/resource.py
M src/osmo_gsm_tester/suite.py
2 files changed, 20 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/05/2705/1

diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py
index e660066..ebc9457 100644
--- a/src/osmo_gsm_tester/resource.py
+++ b/src/osmo_gsm_tester/resource.py
@@ -463,8 +463,9 @@
 available = available_dict.get(kind)
 self.dbg(available=len(available))
 if not available:
-raise NoResourceExn('No unused resource found: %r%s' %
+raise NoResourceExn('When trying to reserve %r nr %d: No unused 
resource found%s' %
 (kind,
+ self.count(kind) + 1,
  (' matching %r' % specifics) if specifics 
else '')
)
 pick = available[0]
@@ -496,5 +497,13 @@
 self.resources_pool.free(self.origin, self.reserved)
 self.reserved = None
 
+def counts(self):
+counts = {}
+for key in self.reserved.keys():
+counts[key] = self.count(key)
+return counts
+
+def count(self, key):
+return len(self.reserved.get(key) or [])
 
 # vim: expandtab tabstop=4 shiftwidth=4
diff --git a/src/osmo_gsm_tester/suite.py b/src/osmo_gsm_tester/suite.py
index 0664897..ca73840 100644
--- a/src/osmo_gsm_tester/suite.py
+++ b/src/osmo_gsm_tester/suite.py
@@ -22,6 +22,7 @@
 import time
 import copy
 import traceback
+import pprint
 from . import config, log, template, util, resource, schema, ofono_client, 
osmo_nitb
 from . import test
 
@@ -130,7 +131,8 @@
 ftype = type(e).__name__
 fmsg = repr(e) + '\n' + traceback.format_exc().rstrip()
 if isinstance(e, resource.NoResourceExn):
-fmsg += '\n' + 'Current resource state:\n' + 
repr(suite_run.reserved_resources)
+fmsg += suite_run.resource_status_str()
+
 self.set_fail(ftype, fmsg, False)
 
 finally:
@@ -337,6 +339,13 @@
 self.log('prompt entered:', repr(entered))
 return entered
 
+def resource_status_str(self):
+return '\n'.join(('',
+'SUITE RUN: %s' % self.origin_id(),
+'ASKED FOR:', pprint.pformat(self._resource_requirements),
+'RESERVED COUNT:', 
pprint.pformat(self.reserved_resources.counts()),
+'RESOURCES STATE:', repr(self.reserved_resources)))
+
 loaded_suite_definitions = {}
 
 def load(suite_name):

-- 
To view, visit https://gerrit.osmocom.org/2705
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic6887bbe5fe74a73f0e344cd4078dd7ed989cc15
Gerrit-PatchSet: 1
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr