获取阿里云nacos注册接口状态

news/2025/2/8 7:15:14/

获取阿里云nacos注册接口状态

import json
import time
import nacos
# 注册客户端
def nacos_client():# 配置日志记录# Nacos服务器地址SERVER_ADDRESSES = "http://127.0.0.1:8848"# 命名空间ID(可选)NAMESPACE = "46c54160-9dd9-4f2187-b3a5-20a23cf01111a9e0"# RAM用户的AccessKey ID和AccessKey SecretACCESS_KEY_ID = "LTAI5tRmcgKdACqN222323MDmpHo"ACCESS_KEY_SECRET = "ZPQa6D121Qv3YIiLI8Ma21l13Z111W2uTYZnXC"# 创建Nacos客户端client = nacos.NacosClient(SERVER_ADDRESSES, namespace=NAMESPACE, ak=ACCESS_KEY_ID, sk=ACCESS_KEY_SECRET)return client
# 获取所有项目应该在线的个数,和项目名称
def get_service():with open("service.json","r",encoding="utf-8") as file:json_data = json.load(file)['wrshg']return json_data# 输入服务名称,输出在线个数,ip,端口
def list_naming_instance_def(client,service):services = client.list_naming_instance(service_name=service)data = services['hosts']sum_all = len(data)sum_list = []for i in data:sum_data = []sum_data.append(service)sum_data.append(i['clusterName'])sum_data.append(i['ip'])sum_data.append(i['port'])sum_list.append(sum_data)return sum_all,sum_list
# 根据服务,ip,端口,获取服务详细信息
def get_naming_instance_def(client,data_all):# 服务在线个数Number_of=data_all[0]data_sum = []for data in data_all[1]:services = client.get_naming_instance(service_name=data[0], ip=data[2], port=data[3],cluster_name=data[1])weight=services['weight']data.append(weight)data_sum.append(data)return Number_of,data_sum
# 判断是否正常
def service_check(data_sum,json_sum):# 在线个数online = data_sum[0]# 正常的在线个数normal_online = json_sum['sum']#print(online,normal_online)if online == normal_online:for data1 in data_sum[1]:service_status = data1[4]if service_status == 1.0:continueelif service_status == 0.0:print(data1)print("权重异常")elif online < normal_online:print(json_sum['name'])print("在线个数异常")elif online > normal_online:print(json_sum['name'])print("在线个数大于正常个数,此服务需要更新在线个数")json_data = get_service()
client=nacos_client()
#json_data = [{'name': 'test-api', 'sum': 2}]
for i in json_data:print(i['name'])data_all = list_naming_instance_def(client,i['name'])data_sum = get_naming_instance_def(client,data_all) service_check(data_sum,i)time.sleep(1)vim service.json
{"wrshg": [{"name": "production-test-open-api","sum": 2},{"name": "datacenter-internal-api","sum": 3}
}

http://www.ppmy.cn/news/1570271.html

相关文章

20250207下载VMware17.6.2的步骤

20250207下载VMware17.6.2的步骤 2025/2/7 16:10 缘起&#xff0c;需要在Ubuntu20.04中安装Ubuntu22.04来验证中科创达/高通CM6125的Android11的编译环境。 到处找最新的VMware17.6.2的下载链接。 找来找去&#xff0c;都要进VMware官网&#xff0c;最后导入了博通的官网来下载…

代码随想录算法【Day37】

Day37 完全背包 特点&#xff1a;每个物品可以使用无数次 循环顺序&#xff1a; 将01背包里面讲的倒序遍历&#xff0c;改为正序遍历就是完全背包了 一维dp数组的01背包必须要先遍历物品&#xff0c;再遍历背包&#xff0c;而完全背包可以先遍历背包&#xff0c;再遍历物品…

分布式kettle调度平台- web版转换,作业编排新功能介绍

介绍 Kettle&#xff08;也称为Pentaho Data Integration&#xff09;是一款开源的ETL&#xff08;Extract, Transform, Load&#xff09;工具&#xff0c;由Pentaho&#xff08;现为Hitachi Vantara&#xff09;开发和维护。它提供了一套强大的数据集成和转换功能&#xff0c…

通向AGI之路:人工通用智能的技术演进与人类未来

文章目录 引言:当机器开始思考一、AGI的本质定义与技术演进1.1 从专用到通用:智能形态的范式转移1.2 AGI发展路线图二、突破AGI的五大技术路径2.1 神经符号整合(Neuro-Symbolic AI)2.2 世界模型架构(World Models)2.3 具身认知理论(Embodied Cognition)三、AGI安全:价…

开源安全一站式构建!开启企业开源治理新篇章

在如今信息技术日新月异、飞速发展的数字化时代&#xff0c;开源技术如同一股强劲的东风&#xff0c;为企业创新注入了源源不断的活力&#xff0c;然而&#xff0c;正如一枚硬币有正反两面&#xff0c;开源技术的广泛应用亦伴随着不容忽视的挑战。安全风险如影随形&#xff0c;…

【Elasticsearch】post_filter

post_filter是 Elasticsearch 中的一种后置过滤机制&#xff0c;用于在查询执行完成后对结果进行过滤。以下是关于post_filter的详细介绍&#xff1a; 工作原理 • 查询后过滤&#xff1a;post_filter在查询执行完毕后对返回的文档集进行过滤。这意味着所有与查询匹配的文档都…

Axure原型设计:AI开发平台解决方案及设计案例

一、项目背景 随着人工智能技术的迅速发展&#xff0c;各行各业对AI应用的需求日益增长。为了满足这一需求&#xff0c;我们设计了一款全面的AI开发平台&#xff0c;旨在帮助用户高效地进行图像分类、物体检测、视频分析、语音识别、产品推荐、异常检测等多种AI应用场景的开发…

WebAssembly:前后端开发的未来利器

引言 在互联网的世界里&#xff0c;前端和后端开发一直是两块重要的领域。而 JavaScript 长期以来是前端的霸主&#xff0c;后端则有各种语言诸如 Java、Python、Node.js、Go 等等。然而&#xff0c;近年来一个名为 WebAssembly (Wasm) 的技术正在逐渐改变这一格局。它的高性能…