| OLD | NEW |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 """Helper classes that make it easier to instrument code for monitoring.""" | 5 """Helper classes that make it easier to instrument code for monitoring.""" |
| 6 | 6 |
| 7 | 7 |
| 8 class ScopedIncrementCounter(object): | 8 class ScopedIncrementCounter(object): |
| 9 """Increment a counter when the wrapped code exits. | 9 """Increment a counter when the wrapped code exits. |
| 10 | 10 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 44 self.status = None | 44 self.status = None |
| 45 return self | 45 return self |
| 46 | 46 |
| 47 def __exit__(self, exc_type, exc_value, traceback): | 47 def __exit__(self, exc_type, exc_value, traceback): |
| 48 if self.status is None: | 48 if self.status is None: |
| 49 if exc_type is None: | 49 if exc_type is None: |
| 50 self.status = self.success_value | 50 self.status = self.success_value |
| 51 else: | 51 else: |
| 52 self.status = self.failure_value | 52 self.status = self.failure_value |
| 53 self.counter.increment({self.label: self.status}) | 53 self.counter.increment({self.label: self.status}) |
| OLD | NEW |