| 123456789101112131415161718192021 |
- import functools
- from compose.metrics.client import MetricsCommand
- from compose.metrics.client import Status
- class metrics:
- def __init__(self, command_name=None):
- self.command_name = command_name
- def __call__(self, fn):
- @functools.wraps(fn,
- assigned=functools.WRAPPER_ASSIGNMENTS,
- updated=functools.WRAPPER_UPDATES)
- def wrapper(*args, **kwargs):
- if not self.command_name:
- self.command_name = fn.__name__
- result = fn(*args, **kwargs)
- MetricsCommand(self.command_name, status=Status.SUCCESS).send_metrics()
- return result
- return wrapper
|