检测

本文介绍了一个用于检查Kafka集群中Bootstrap Server配置正确性的Python函数。该函数通过解析Broker列表,验证主机名和端口号的有效性,确保它们符合标准的IPv4或IPv6地址格式,并检查端口是否在有效范围内。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    import socket
    def _check_bootstrap_server(broker_list):
        pattern = re.compile(r'.*?\[?([0-9a-zA-Z\-%._:]*)\]?:([0-9]+)')
        for host_and_port in broker_list:
            match = pattern.match(host_and_port)
            if match:
                try:
                    host = match.group(1)
                    port = int(match.group(2))
                    ok = False
                    for af in (socket.AF_INET, socket.AF_INET6):
                        try:
                            socket.inet_pton(af, host)
                            ok = True
                            break
                        except (ValueError, AttributeError, socket.error):
                            continue
                    assert ok, "Illegal hostname"
                    assert 0 <= port <= 65535, "Port out of range: " + str(port)
                except socket.error:
                    return False
            else:
                return False
        return True

copy from kafka2.audit.py

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值