get_alibaba_instance_monitoring
Retrieve monitoring data for Alibaba Cloud ECS instances to track performance metrics and resource usage through the Cloud Manage MCP Server.
Instructions
获取阿里云ECS实例监控信息
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| instance_id | Yes |
Implementation Reference
- main.py:620-625 (registration)MCP tool registration and handler for get_alibaba_instance_monitoring, which calls the provider's method to retrieve monitoring data.@mcp.tool() def get_alibaba_instance_monitoring(instance_id: str) -> Dict: """ 获取阿里云ECS实例监控信息 """ return alibaba_provider.get_instance_monitoring(instance_id)
- providers/alibaba_provider.py:359-402 (handler)Core handler logic in AlibabaProvider class that fetches instance monitoring information using Alibaba Cloud ECS SDK. Note: Currently simplified, suggests using cloud monitor API for full data.def get_instance_monitoring(self, instance_id: str) -> Dict: """ 获取ECS实例的监控信息 Args: instance_id (str): ECS实例ID Returns: Dict: 监控信息或错误信息 """ if not self.available: return { 'error': f'阿里云服务不可用: {getattr(self, "error", "未知错误")}', 'provider': 'alibaba' } try: # 这里简化实现,实际需要调用云监控API request = ecs_models.DescribeInstancesRequest( region_id=self.region_id, instance_ids=json.dumps([instance_id]) ) response = self.client.describe_instances(request) if not response.body.instances or not response.body.instances.instance: return { 'error': f'未找到ID为 {instance_id} 的ECS实例', 'provider': 'alibaba' } return { 'provider': 'alibaba', 'instance_id': instance_id, 'monitoring_available': True, 'message': '监控功能可用,具体数据需要通过云监控API获取' } except Exception as e: return { 'error': f'获取监控信息时发生错误: {str(e)}', 'provider': 'alibaba' }