Spaces:
				
			
			
	
			
			
					
		Running
		
	
	
	
			
			
	
	
	
	
		
		
					
		Running
		
	File size: 1,346 Bytes
			
			| 254eff8 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | from azure.cosmos import CosmosClient, exceptions
import os
def diagnose_cosmos_connection():
    endpoint = os.environ.get("COSMOS_ENDPOINT")
    key = os.environ.get("COSMOS_KEY")
    if not all([endpoint, key]):
        raise ValueError("Please ensure COSMOS_ENDPOINT and COSMOS_KEY are set.")
    client = CosmosClient(endpoint, key)
    print("Attempting to connect to Cosmos DB...")
    try:
        # List databases
        print("Listing databases:")
        databases = list(client.list_databases())
        for db in databases:
            print(f"- {db['id']}")
            # Try to list containers for each database
            try:
                containers = list(client.get_database_client(db['id']).list_containers())
                print(f"  Containers in {db['id']}:")
                for container in containers:
                    print(f"  - {container['id']}")
            except exceptions.CosmosResourceNotFoundError:
                print(f"  Unable to list containers in {db['id']}")
            except Exception as e:
                print(f"  Error listing containers in {db['id']}: {str(e)}")
            print()  # Add a blank line for readability
    except Exception as e:
        print(f"Error: {str(e)}")
if __name__ == "__main__":
    diagnose_cosmos_connection() | 
