MCP Health Check: ਆਪਣੇ MCP Server ਦੀ ਨਿਗਰਾਨੀ ਕਰਨਾ
ਮੈਂ 10 MCP servers ਬਣਾਏ ਹਨ। ਮੈਂ ਕਈ ਵਾਰ production outages ਦਾ ਸਾਹਮਣਾ ਕੀਤਾ ਹੈ।
ਸਭ ਤੋਂ ਔਖਾ ਕੰਮ server ਬਣਾਉਣਾ ਨਹੀਂ ਹੈ। ਸਭ ਤੋਂ ਔਖਾ ਕੰਮ server ਨੂੰ ਉਦੋਂ ਵੀ ਚਲਾਉਂਦੇ ਰੱਖਣਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਉਸ 'ਤੇ ਨਜ਼ਰ ਨਹੀਂ ਰੱਖ ਰਹੇ ਹੁੰਦੇ।
ਮੈਂ ਸੋਚਦਾ ਸੀ ਕਿ monitoring ਸਿਰਫ਼ ਵੱਡੀਆਂ ਕੰਪਨੀਆਂ ਲਈ ਹੁੰਦੀ ਹੈ। ਮੈਂ ਗਲਤ ਸੀ। ਇੱਥੋਂ ਤੱਕ ਕਿ side projects ਲਈ ਵੀ ਤੁਹਾਨੂੰ ਇਸਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
MCP ਇੱਕ proxy protocol ਹੈ। ਇਹ ਤਿੰਨ ਪ੍ਰਣਾਲੀਆਂ ਦੇ ਵਿਚਕਾਰ ਹੁੰਦਾ ਹੈ:
- AI Client
- LLM Proxy
- ਤੁਹਾਡਾ MCP Server
- ਤੁਹਾਡਾ Database
ਹਰ ਪੜਾਅ ਫੇਲ ਹੋ ਸਕਦਾ ਹੈ। ਤੁਹਾਡਾ server ਚੱਲ ਰਿਹਾ ਹੋ ਸਕਦਾ ਹੈ, ਪਰ ਤੁਹਾਡਾ database ਡਾਊਨ ਹੋ ਸਕਦਾ ਹੈ। ਜਾਂ ਤੁਹਾਡਾ server ਠੀਕ ਹੋ ਸਕਦਾ ਹੈ, ਪਰ LLM ਅਜਿਹੇ tool ਦੇ ਨਾਮ ਦੀ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹੋ ਸਕਦਾ ਹੈ ਜੋ ਮੌਜੂਦ ਨਹੀਂ ਹੈ।
ਮੈਂ ਇਹ ਬਹੁਤ ਮੁਸ਼ਕਲ ਤਰੀਕੇ ਨਾਲ ਸਿੱਖਿਆ। ਮੇਰਾ server process ਚੱਲ ਰਿਹਾ ਸੀ, ਪਰ ਮੇਰਾ database connection pool ਖਾਲੀ ਸੀ। ਮੇਰੇ generic health check ਨੇ ਕਿਹਾ ਕਿ ਸਭ ਕੁਝ ਠੀਕ ਹੈ। ਪਰ ਸਭ ਕੁਝ ਠੀਕ ਨਹੀਂ ਸੀ।
ਤੁਹਾਨੂੰ ਅਜਿਹੇ health checks ਦੀ ਲੋੜ ਹੈ ਜੋ ਉਹ ਸਭ ਕੁਝ ਟੈਸਟ ਕਰਨ ਜੋ ਇੱਕ MCP server ਵਰਤਦਾ ਹੈ:
- Application level: ਕੀ app requests ਨੂੰ ਸੰਭਾਲ ਰਹੀ ਹੈ?
- Database: ਕੀ ਤੁਸੀਂ ਇੱਕ ਸਧਾਰਨ query ਚਲਾ ਸਕਦੇ ਹੋ?
- Dependencies: ਕੀ Redis ਜਾਂ cloud storage ਕੰਮ ਕਰ ਰਹੇ ਹਨ?
- MCP specific: ਕੀ ਤੁਸੀਂ tools ਦੀ ਸੂਚੀ ਬਣਾ ਸਕਦੇ ਹੋ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ?
- Logging: ਕੀ disk ਭਰ ਗਈ ਹੈ?
ਮੈਂ Spring Boot ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹਾਂ। ਮੈਂ ਗੁੰਝਲਦਾਰ tools ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਦਾ। ਮੈਂ ਤਿੰਨ ਸਧਾਰਨ endpoints ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹਾਂ:
- /health/liveness: ਸਿਸਟਮ ਨੂੰ ਦੱਸਦਾ ਹੈ ਕਿ ਕੀ app ਚੱਲ ਰਹੀ ਹੈ।
- /health/readiness: ਸਿਸਟਮ ਨੂੰ ਦੱਸਦਾ ਹੈ ਕਿ ਕੀ ਸਾਰੀਆਂ dependencies ਤਿਆਰ ਹਨ।
- /health/mcp: MCP functions ਦਾ ਪੂਰਾ ਟੈਸਟ।
ਇੱਥੇ ਉਹ ਗਲਤੀਆਂ ਹਨ ਜਿਨ੍ਹਾਂ ਤੋਂ ਤੁਹਾਨੂੰ ਬਚਣਾ ਚਾਹੀਦਾ ਹੈ:
- Security errors: ਆਪਣੇ health endpoints ਨੂੰ authentication ਦੇ ਪਿੱਛੇ ਲਾਕ ਨਾ ਕਰੋ। ਤੁਹਾਡਾ monitoring system ਉਹਨਾਂ ਨੂੰ ਚੈੱਕ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਹੇਗਾ।
- Heavy checks: Health check ਵਿੱਚ ਵੱਡੀਆਂ database searches ਨਾ ਚਲਾਓ। ਇਹ resources ਬਰਬਾਦ ਕਰਦਾ ਹੈ। ਇਸਦੀ ਬਜਾਏ ਇੱਕ ਸਧਾਰਨ query ਚਲਾਓ।
- Data leaks: ਆਪਣੇ health check ਦੇ ਵੇਰਵਿਆਂ ਵਿੱਚ API keys ਜਾਂ passwords ਨਾ ਪਾਓ।
- Disk space: ਇੱਕ ਭਰੀ ਹੋਈ disk ਅਜੀਬ ਤਰ੍ਹਾਂ ਦੀਆਂ ਅਸਫਲਤਾਵਾਂ ਦਾ ਕਾਰਨ ਬਣਦੀ ਹੈ। ਅਜਿਹੇ tools ਦੀ ਵਰਤੋਂ ਕਰੋ ਜੋ disk space ਨੂੰ ਆਪਣੇ ਆਪ ਚੈੱਕ ਕਰਦੇ ਹਨ।
ਇਸਨੂੰ ਜੋੜਨ ਵਿੱਚ ਕੁਝ ਘੰਟੇ ਲੱਗਦੇ ਹਨ। ਇਹ ਬਹੁਤ ਫਾਇਦੇਮੰਦ ਹੈ। ਇਹ ਤੁਹਾਡੇ users ਦੇ ਪਤਾ ਲਗਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਹੀ ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਫੜ ਲੈਂਦਾ ਹੈ।
ਤੁਹਾਨੂੰ ਇੱਕ ਵੱਡੀ monitoring team ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। ਤੁਸੀਂ ਸਧਾਰਨ tools ਅਤੇ custom indicators ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਜ਼ਿਆਦਾਤਰ ਲਾਭ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹੋ।
ਕੀ ਤੁਸੀਂ ਕੋਈ MCP server ਬਣਾਇਆ ਹੈ? ਤੁਸੀਂ ਆਪਣੇ projects ਦੀ ਨਿਗਰਾਨੀ ਕਿਵੇਂ ਕਰਦੇ ਹੋ?
ਵਿਕਲਪਿਕ ਲਰਨਿੰਗ ਕਮਿਊਨਿਟੀ: https://t.me/GyaanSetuAi
