def METHOD_NAME(self, *args, **options):
    # Exit early if MONITORING_ENABLED=False
    if not settings.MONITORING_ENABLED:
        return
    self.collector = CollectorAPI()
    if options['list_metrics']:
        self.list_metrics()
        return
    interval = timedelta(seconds=options['interval'])
    metric_names = options['metric_name']
    resource = options['resource']
    # service = options['service']
    label = options['label']
    if not metric_names:
        raise CommandError("No metric name")
    if isinstance(metric_names, str):
        metric_names = [metric_names]
    for m in metric_names:
        if options['list_labels']:
            self.list_labels(m)
        elif options['list_resources']:
            self.list_resources(m)
        else:
            self.show_metrics(m, options['since'], options['until'], interval, resource=resource, label=label)