示例#1
0
 def set(self, value, fields=None):
     if not isinstance(value, (float, int)):
         raise errors.MonitoringInvalidValueTypeError(self._name, value)
     if value < self.get(fields):
         raise errors.MonitoringDecreasingValueError(
             self._name, self.get(fields), value)
     self._set_and_send_value(float(value), fields)
示例#2
0
    def set(self, value, fields=None):
        """Replaces the distribution with the given fields with another one.

    This only makes sense on non-cumulative DistributionMetrics.

    Args:
      value: A infra_libs.ts_mon.Distribution.
    """

        if self.is_cumulative:
            raise TypeError(
                'Cannot set() a cumulative DistributionMetric (use add() instead)'
            )

        if not isinstance(value, distribution.Distribution):
            raise errors.MonitoringInvalidValueTypeError(self._name, value)

        self._set_and_send_value(value, fields)
示例#3
0
 def set(self, value, fields=None):
     if not isinstance(value, (int, long)):
         raise errors.MonitoringInvalidValueTypeError(self._name, value)
     self._set_and_send_value(value, fields)
示例#4
0
 def test_invalid_value_type(self):
     with self.assertRaises(errors.MonitoringInvalidValueTypeError) as e:
         raise errors.MonitoringInvalidValueTypeError('test', 'foo')
     str(e.exception)