File size: 1,845 Bytes
4aec76b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/env python3
"""Verify LangSmith tracing is enabled and working.

Usage:
  cd /Users/neetikasaxena/Documents/sanchit/sample_code/chat-with-your-data
  PYTHONPATH=server venv/bin/python scripts/verify_langsmith.py
"""
import os
import sys

def main():
    print("=== LangSmith Configuration Check ===\n")
    
    # Load .env from server directory
    from dotenv import load_dotenv
    env_path = os.path.join(os.path.dirname(__file__), "..", "server", ".env")
    load_dotenv(env_path)
    
    # Check environment variables
    required_vars = {
        "LANGCHAIN_TRACING_V2": os.getenv("LANGCHAIN_TRACING_V2"),
        "LANGCHAIN_ENDPOINT": os.getenv("LANGCHAIN_ENDPOINT"),
        "LANGCHAIN_API_KEY": os.getenv("LANGCHAIN_API_KEY"),
        "LANGCHAIN_PROJECT": os.getenv("LANGCHAIN_PROJECT"),
        "LANGSMITH_WORKSPACE_ID": os.getenv("LANGSMITH_WORKSPACE_ID"),
    }
    
    all_set = True
    for var, value in required_vars.items():
        if value:
            masked = value if var != "LANGCHAIN_API_KEY" else f"{value[:20]}..."
            print(f"βœ“ {var:25} = {masked}")
        else:
            print(f"βœ— {var:25} = NOT SET")
            all_set = False
    
    print()
    
    if not all_set:
        print("❌ Some LangSmith environment variables are missing.")
        print("   Make sure server/.env has all required variables.")
        return 1
    
    print("βœ“ All LangSmith environment variables are set!")
    print("\nTo verify tracing is working:")
    print("1. Start your server: cd server && ../venv/bin/uvicorn server:app --reload")
    print("2. Make an API call to /simple or /rag")
    print("3. Check https://smith.langchain.com/ for traced runs")
    print(f"4. Look in project: {required_vars['LANGCHAIN_PROJECT']}")
    
    return 0

if __name__ == "__main__":
    sys.exit(main())