code: def add_metric(*args, **kwargs):
      
      _args = ['add-metric']
      _kvpairs = []
      _kvpairs.extend(args)
      _kvpairs.extend(['{}={}'.format(k, v) for k, v in kwargs.items()])
      _args.extend(sorted(_kvpairs))
      try:
          subprocess.check_call(_args)
          return
      except EnvironmentError as e:
          if e.errno != errno.ENOENT:
              raise
      log_message = 'add-metric failed: {}'.format(' '.join(_kvpairs))
      log(log_message, level='INFO')
docs: Add metric values. Values may be expressed with keyword arguments. For
      metric names containing dashes, these may be expressed as one or more
      'key=value' positional arguments. May only be called from the collect-metrics
      hook.