### Apache Airflow version

2.6.2

### What happened

I left this as a TODO and will get t it eventually, but if someone wants to look into it before I get time, this may be an easy one:

We are creating an OTLPMetricExporter endpoint with `http` [here](https://github.com/apache/airflow/blob/main/airflow/metrics/otel_logger.py#L400) and should look into whether we can make this work with `https`.


### Definition of Done:
Either implement HTTPS or replace the TODO with a reference citing why we can not.


I am submitting this as an Issue since I will be a little distracted for the next bit and figured someone may be able to have a look in the meantime. Please do not assign it to me, I'll get it when I can is nobody else does.


### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

stat_name_otel_handler,
)
log = logging.getLogger(__name__)
GaugeValues = Union[int, float]
DEFAULT_GAUGE_VALUE = 0.0
#
UP_DOWN_COUNTERS = {"airflow.dag_processing.processes"}
DEFAULT_METRIC_NAME_PREFIX = "airflow"
DEFAULT_METRIC_NAME_DELIMITER = "."
def full_name(name: str, *, prefix: str = DEFAULT_METRIC_NAME_PREFIX) -> str:
    """Assembles the prefix, delimiter, and name and returns it as a string."""
    return f"{prefix}{DEFAULT_METRIC_NAME_DELIMITER}{name}"
def _is_up_down_counter(name):
    return name in UP_DOWN_COUNTERS
def _generate_key_name(name: str, attributes: Attributes = None):
    if attributes:
        key = name
        for item in attributes.items():
            key += f"_{item[0]}_{item[1]}"
    else:
        key = name
    return key
def name_is_otel_safe(prefix: str, name: str) -> bool:
    """
    Returns True if the provided name and prefix would result in a name that meets the OpenTelemetry standard.
    Legal names are defined here:
    https://opentelemetry.io/docs/reference/specification/metrics/api/#instrument-name-syntax
    """
    return bool(stat_name_otel_handler(prefix, name, max_length=OTEL_NAME_MAX_LENGTH))
def _type_as_str(obj: Instrument) -> str: